diff options
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ExcludingTokenSplitter.java')
| -rw-r--r-- | BJC-Utils2/src/main/java/bjc/utils/parserutils/splitterv2/ExcludingTokenSplitter.java | 40 |
1 files changed, 19 insertions, 21 deletions
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); } } |
