summaryrefslogtreecommitdiff
path: root/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2
diff options
context:
space:
mode:
authorbculkin2442 <bjculkin@mix.wvu.edu>2017-04-10 16:40:33 -0400
committerbculkin2442 <bjculkin@mix.wvu.edu>2017-04-10 16:40:33 -0400
commit889fac2bdf993dc86f64a8893c0260fdcf848acb (patch)
tree99ed08552efa86fdc5fdf4ddb8720d10e599fafe /BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2
parent1656b02144446aeedebb3d1179e07ed99c01861c (diff)
Cleanup
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2')
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ChainTokenSplitter.java16
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ConfigurableTokenSplitter.java56
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ExcludingTokenSplitter.java40
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/SimpleTokenSplitter.java22
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/TokenSplitter.java6
5 files changed, 67 insertions, 73 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ChainTokenSplitter.java b/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ChainTokenSplitter.java
index 2ecadaf..75afd34 100644
--- a/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ChainTokenSplitter.java
+++ b/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ChainTokenSplitter.java
@@ -6,12 +6,12 @@ import bjc.utils.functypes.ID;
/**
* A token splitter that chains several other splitters together.
- *
+ *
* @author EVE
*
*/
public class ChainTokenSplitter implements TokenSplitter {
- private IList<TokenSplitter> spliters;
+ private final IList<TokenSplitter> spliters;
/**
* Create a new chain token splitter.
@@ -22,27 +22,27 @@ public class ChainTokenSplitter implements TokenSplitter {
/**
* Append a series of splitters to the chain.
- *
+ *
* @param splitters
* The splitters to append to the chain.
*/
- public void appendSplitters(TokenSplitter... splitters) {
+ public void appendSplitters(final TokenSplitter... splitters) {
spliters.addAll(splitters);
}
/**
* Prepend a series of splitters to the chain.
- *
+ *
* @param splitters
* The splitters to append to the chain.
*/
- public void prependSplitters(TokenSplitter... splitters) {
+ public void prependSplitters(final TokenSplitter... splitters) {
spliters.prependAll(splitters);
}
@Override
- public IList<String> split(String input) {
- IList<String> initList = new FunctionalList<>(input);
+ public IList<String> split(final String input) {
+ final IList<String> initList = new FunctionalList<>(input);
return spliters.reduceAux(initList, (splitter, strangs) -> {
return strangs.flatMap(splitter::split);
diff --git a/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ConfigurableTokenSplitter.java b/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ConfigurableTokenSplitter.java
index 021821a..b9503bc 100644
--- a/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ConfigurableTokenSplitter.java
+++ b/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ConfigurableTokenSplitter.java
@@ -1,32 +1,32 @@
package bjc.utils.parserutils.splitterv2;
-import bjc.utils.funcdata.IList;
+import static bjc.utils.PropertyDB.applyFormat;
import java.util.LinkedHashSet;
import java.util.Set;
import java.util.regex.Pattern;
-import static bjc.utils.PropertyDB.applyFormat;
+import bjc.utils.funcdata.IList;
/**
* Split a string into pieces around a regular expression, and offer an easy way
* to configure the regular expression.
- *
+ *
* @author EVE
*
*/
public class ConfigurableTokenSplitter extends SimpleTokenSplitter {
- private Set<String> simpleDelimiters;
- private Set<String> multipleDelimiters;
- private Set<String> rRawDelimiters;
+ private final Set<String> simpleDelimiters;
+ private final Set<String> multipleDelimiters;
+ private final Set<String> rRawDelimiters;
/**
* Create a new token splitter with blank configuration.
- *
+ *
* @param keepDelims
* Whether or not to keep delimiters.
*/
- public ConfigurableTokenSplitter(boolean keepDelims) {
+ public ConfigurableTokenSplitter(final boolean keepDelims) {
super(null, keepDelims);
/*
@@ -39,44 +39,44 @@ public class ConfigurableTokenSplitter extends SimpleTokenSplitter {
/**
* Add a set of simple delimiters to this splitter.
- *
+ *
* Simple delimiters match one occurrence of themselves as literals.
- *
+ *
* @param simpleDelims
* The simple delimiters to add.
*/
- public void addSimpleDelimiters(String... simpleDelims) {
- for(String simpleDelim : simpleDelims) {
+ public void addSimpleDelimiters(final String... simpleDelims) {
+ for (final String simpleDelim : simpleDelims) {
simpleDelimiters.add(simpleDelim);
}
}
/**
* Add a set of multiple delimiters to this splitter.
- *
+ *
* Multiple delimiters match one or more occurrences of themselves as
* literals.
- *
+ *
* @param multiDelims
* The multiple delimiters to add.
*/
- public void addMultiDelimiters(String... multiDelims) {
- for(String multiDelim : multiDelims) {
+ public void addMultiDelimiters(final String... multiDelims) {
+ for (final String multiDelim : multiDelims) {
multipleDelimiters.add(multiDelim);
}
}
/**
* Add a set of raw delimiters to this splitter.
- *
+ *
* Raw delimiters match one occurrence of themselves as regular
* expressions.
- *
+ *
* @param rRawDelims
* The raw delimiters to add.
*/
- public void addRawDelimiters(String... rRawDelims) {
- for(String rRawDelim : rRawDelims) {
+ public void addRawDelimiters(final String... rRawDelims) {
+ for (final String rRawDelim : rRawDelims) {
rRawDelimiters.add(rRawDelim);
}
}
@@ -86,17 +86,17 @@ public class ConfigurableTokenSplitter extends SimpleTokenSplitter {
* use when splitting.
*/
public void compile() {
- StringBuilder rPattern = new StringBuilder();
+ final StringBuilder rPattern = new StringBuilder();
- for(String rRawDelimiter : rRawDelimiters) {
+ for (final String rRawDelimiter : rRawDelimiters) {
rPattern.append(applyFormat("rawDelim", rRawDelimiter));
}
- for(String multipleDelimiter : multipleDelimiters) {
+ for (final String multipleDelimiter : multipleDelimiters) {
rPattern.append(applyFormat("multipleDelim", multipleDelimiter));
}
- for(String simpleDelimiter : simpleDelimiters) {
+ for (final String simpleDelimiter : simpleDelimiters) {
rPattern.append(applyFormat("simpleDelim", simpleDelimiter));
}
@@ -106,17 +106,15 @@ public class ConfigurableTokenSplitter extends SimpleTokenSplitter {
}
@Override
- public IList<String> split(String input) {
- if(spliter == null) {
- throw new IllegalStateException("Must compile splitter before use");
- }
+ public IList<String> split(final String input) {
+ if (spliter == null) throw new IllegalStateException("Must compile splitter before use");
return super.split(input);
}
@Override
public String toString() {
- String fmt = "ConfigurableTokenSplitter [simpleDelimiters=%s, multipleDelimiters=%s,"
+ final String fmt = "ConfigurableTokenSplitter [simpleDelimiters=%s, multipleDelimiters=%s,"
+ " rRawDelimiters=%s, spliter=%s]";
return String.format(fmt, simpleDelimiters, multipleDelimiters, rRawDelimiters, spliter);
diff --git a/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ExcludingTokenSplitter.java b/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ExcludingTokenSplitter.java
index 25bddf5..c5f6f03 100644
--- a/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ExcludingTokenSplitter.java
+++ b/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ExcludingTokenSplitter.java
@@ -1,32 +1,32 @@
package bjc.utils.parserutils.splitterv2;
-import bjc.utils.funcdata.FunctionalList;
-import bjc.utils.funcdata.IList;
-
import java.util.HashSet;
import java.util.Set;
import java.util.function.Predicate;
+import bjc.utils.funcdata.FunctionalList;
+import bjc.utils.funcdata.IList;
+
/**
* A token splitter that will not split certain tokens.
- *
+ *
* @author EVE
*
*/
public class ExcludingTokenSplitter implements TokenSplitter {
- private Set<String> literalExclusions;
+ private final Set<String> literalExclusions;
- private IList<Predicate<String>> predExclusions;
+ private final IList<Predicate<String>> predExclusions;
- private TokenSplitter spliter;
+ private final TokenSplitter spliter;
/**
* Create a new excluding token splitter.
- *
+ *
* @param splitter
* The splitter to apply to non-excluded strings.
*/
- public ExcludingTokenSplitter(TokenSplitter splitter) {
+ public ExcludingTokenSplitter(final TokenSplitter splitter) {
spliter = splitter;
literalExclusions = new HashSet<>();
@@ -36,12 +36,12 @@ public class ExcludingTokenSplitter implements TokenSplitter {
/**
* Exclude literal strings from splitting.
- *
+ *
* @param exclusions
* The strings to exclude from splitting.
*/
- public final void addLiteralExclusions(String... exclusions) {
- for (String exclusion : exclusions) {
+ public final void addLiteralExclusions(final String... exclusions) {
+ for (final String exclusion : exclusions) {
literalExclusions.add(exclusion);
}
}
@@ -49,25 +49,23 @@ public class ExcludingTokenSplitter implements TokenSplitter {
/**
* Exclude all of the strings matching any of the predicates from
* splitting.
- *
+ *
* @param exclusions
* The predicates to use for exclusions.
*/
@SafeVarargs
- public final void addPredicateExclusion(Predicate<String>... exclusions) {
- for (Predicate<String> exclusion : exclusions) {
+ public final void addPredicateExclusion(final Predicate<String>... exclusions) {
+ for (final Predicate<String> exclusion : exclusions) {
predExclusions.add(exclusion);
}
}
@Override
- public IList<String> split(String input) {
- if (literalExclusions.contains(input)) {
+ public IList<String> split(final String input) {
+ if (literalExclusions.contains(input))
return new FunctionalList<>(input);
- } else if (predExclusions.anyMatch(pred -> pred.test(input))) {
+ else if (predExclusions.anyMatch(pred -> pred.test(input)))
return new FunctionalList<>(input);
- } else {
- return spliter.split(input);
- }
+ else return spliter.split(input);
}
}
diff --git a/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/SimpleTokenSplitter.java b/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/SimpleTokenSplitter.java
index b111ca3..ce1c336 100644
--- a/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/SimpleTokenSplitter.java
+++ b/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/SimpleTokenSplitter.java
@@ -1,44 +1,42 @@
package bjc.utils.parserutils.splitterv2;
+import java.util.regex.Pattern;
+
import bjc.utils.funcdata.IList;
import bjc.utils.functypes.ID;
import bjc.utils.ioutils.RegexStringEditor;
-import java.util.regex.Pattern;
-
/**
* Splits a string into pieces around a regular expression.
- *
+ *
* @author EVE
*
*/
public class SimpleTokenSplitter implements TokenSplitter {
protected Pattern spliter;
- private boolean keepDelim;
+ private final boolean keepDelim;
/**
* Create a new simple token splitter.
- *
+ *
* @param splitter
* The pattern to split around.
- *
+ *
* @param keepDelims
* Whether or not delimiters should be kept.
*/
- public SimpleTokenSplitter(Pattern splitter, boolean keepDelims) {
+ public SimpleTokenSplitter(final Pattern splitter, final boolean keepDelims) {
spliter = splitter;
keepDelim = keepDelims;
}
@Override
- public IList<String> split(String input) {
- if(keepDelim) {
+ public IList<String> split(final String input) {
+ if (keepDelim)
return RegexStringEditor.mapOccurances(input, spliter, ID.id(), ID.id());
- } else {
- return RegexStringEditor.mapOccurances(input, spliter, ID.id(), strang -> "");
- }
+ else return RegexStringEditor.mapOccurances(input, spliter, ID.id(), strang -> "");
}
@Override
diff --git a/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/TokenSplitter.java b/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/TokenSplitter.java
index 5d510c1..ad6865d 100644
--- a/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/TokenSplitter.java
+++ b/BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/TokenSplitter.java
@@ -4,17 +4,17 @@ import bjc.utils.funcdata.IList;
/**
* Split a string into a list of pieces.
- *
+ *
* @author EVE
*
*/
public interface TokenSplitter {
/**
* Split a string into a list of pieces.
- *
+ *
* @param input
* The string to split.
- *
+ *
* @return The pieces of the string.
*/
public IList<String> split(String input);