diff options
Diffstat (limited to 'base/src/main/java/bjc/utils/parserutils')
3 files changed, 46 insertions, 3 deletions
diff --git a/base/src/main/java/bjc/utils/parserutils/StringDescaper.java b/base/src/main/java/bjc/utils/parserutils/StringDescaper.java index 59f4760..0beb7c8 100644 --- a/base/src/main/java/bjc/utils/parserutils/StringDescaper.java +++ b/base/src/main/java/bjc/utils/parserutils/StringDescaper.java @@ -12,6 +12,12 @@ import static java.util.Map.Entry; import static bjc.utils.PropertyDB.getRegex; +/** + * Customizable string descaping. + * + * @author EVE + * + */ public class StringDescaper { private Logger LOGGER = Logger.getLogger(StringDescaper.class.getName()); @@ -37,6 +43,9 @@ public class StringDescaper { private Map<String, String> literalEscapes; private Map<Pattern, UnaryOperator<String>> specialEscapes; + /** + * Create a new string descaper. + */ public StringDescaper() { literalEscapes = new HashMap<>(); specialEscapes = new HashMap<>(); @@ -45,6 +54,14 @@ public class StringDescaper { escapePatt = Pattern.compile(rEscapeString); } + /** + * Add a new literal string escape. + * + * @param escape + * The escape to add. + * @param val + * The value for the escape. + */ public void addLiteralEscape(String escape, String val) { if(literalEscapes.containsKey(escape)) { LOGGER.warning(String.format("Shadowing literal escape '%s'\n", escape)); @@ -53,6 +70,14 @@ public class StringDescaper { literalEscapes.put(escape, val); } + /** + * Create a new custom escape. + * + * @param escape + * The escape to add. + * @param val + * The implementation of the escape. + */ public void addSpecialEscape(String escape, UnaryOperator<String> val) { /* * Make sure this special escape is a valid regex. @@ -77,6 +102,9 @@ public class StringDescaper { specialEscapes.put(patt, val); } + /** + * Compile the escapes. + */ public void compileEscapes() { StringBuilder work = new StringBuilder(); diff --git a/base/src/main/java/bjc/utils/parserutils/defines/SimpleDefine.java b/base/src/main/java/bjc/utils/parserutils/defines/SimpleDefine.java index 5d206bd..d42f7d8 100644 --- a/base/src/main/java/bjc/utils/parserutils/defines/SimpleDefine.java +++ b/base/src/main/java/bjc/utils/parserutils/defines/SimpleDefine.java @@ -4,10 +4,24 @@ import java.util.function.UnaryOperator; import java.util.regex.Matcher; import java.util.regex.Pattern; +/** + * A simple match-and-replace operation on strings. + * + * @author EVE + * + */ public class SimpleDefine implements UnaryOperator<String> { private Pattern patt; private String repl; + /** + * Create a new simple define. + * + * @param pattern + * The pattern to look for. + * @param replace + * The thing to replace it with. + */ public SimpleDefine(Pattern pattern, String replace) { patt = pattern; diff --git a/base/src/main/java/bjc/utils/parserutils/splitter/SimpleTokenSplitter.java b/base/src/main/java/bjc/utils/parserutils/splitter/SimpleTokenSplitter.java index c96f72a..4e97008 100644 --- a/base/src/main/java/bjc/utils/parserutils/splitter/SimpleTokenSplitter.java +++ b/base/src/main/java/bjc/utils/parserutils/splitter/SimpleTokenSplitter.java @@ -34,10 +34,11 @@ public class SimpleTokenSplitter implements TokenSplitter { @Override public IList<String> split(final String input) { - if(keepDelim) + if(keepDelim) { return RegexStringEditor.mapOccurances(input, spliter, ID.id(), ID.id()); - else - return RegexStringEditor.mapOccurances(input, spliter, ID.id(), strang -> ""); + } + + return RegexStringEditor.mapOccurances(input, spliter, ID.id(), strang -> ""); } @Override |
