From ad5c2517d24c46be67a681aca741e150cd41ad53 Mon Sep 17 00:00:00 2001 From: Ben Culkin Date: Sun, 8 Nov 2020 19:11:01 -0500 Subject: Do some token splitter cleanup Cleanup somethings related to token splitters --- .../parserutils/splitter/IdentityTokenSplitter.java | 16 ++++++++++++++++ .../bjc/utils/parserutils/splitter/TokenSplitters.java | 9 +++++++++ 2 files changed, 25 insertions(+) create mode 100644 base/src/main/java/bjc/utils/parserutils/splitter/IdentityTokenSplitter.java (limited to 'base/src/main/java/bjc/utils/parserutils') diff --git a/base/src/main/java/bjc/utils/parserutils/splitter/IdentityTokenSplitter.java b/base/src/main/java/bjc/utils/parserutils/splitter/IdentityTokenSplitter.java new file mode 100644 index 0000000..6be0e7f --- /dev/null +++ b/base/src/main/java/bjc/utils/parserutils/splitter/IdentityTokenSplitter.java @@ -0,0 +1,16 @@ +package bjc.utils.parserutils.splitter; + +import bjc.funcdata.*; + +/** + * The token splitter that doesn't actually perform any splitting. + * + * @author Ben Culkin + * + */ +public class IdentityTokenSplitter implements TokenSplitter { + @Override + public IList split(String input) { + return new FunctionalList<>(input); + } +} diff --git a/base/src/main/java/bjc/utils/parserutils/splitter/TokenSplitters.java b/base/src/main/java/bjc/utils/parserutils/splitter/TokenSplitters.java index 15d6b8b..4aed8f6 100644 --- a/base/src/main/java/bjc/utils/parserutils/splitter/TokenSplitters.java +++ b/base/src/main/java/bjc/utils/parserutils/splitter/TokenSplitters.java @@ -24,6 +24,15 @@ public class TokenSplitters { return cts; } + /** + * Create a new identity token splitter, which doesn't actually do any splitting. + * + * @return A new identity splitter. + */ + public static TokenSplitter identitySplitter() { + return new IdentityTokenSplitter(); + } + /** * Create a new transforming token splitter. * -- cgit v1.2.3