summaryrefslogtreecommitdiff
path: root/base/src/main/java/bjc/utils/parserutils/StringDescaper.java
diff options
context:
space:
mode:
authorbjculkin <bjculkin@mix.wvu.edu>2018-02-12 22:57:29 -0500
committerbjculkin <bjculkin@mix.wvu.edu>2018-02-12 22:57:29 -0500
commit040870eced4dc3e273313b9ec2ce7bb88d9cc6a0 (patch)
tree4712f4fc1dd1c6bccac7a1de98921f78ec6d326a /base/src/main/java/bjc/utils/parserutils/StringDescaper.java
parentdf94066e3af02ff02d5ab4d033a3d603f743234c (diff)
Commenting
Diffstat (limited to 'base/src/main/java/bjc/utils/parserutils/StringDescaper.java')
-rw-r--r--base/src/main/java/bjc/utils/parserutils/StringDescaper.java28
1 files changed, 28 insertions, 0 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();