summaryrefslogtreecommitdiff
path: root/base/src/main/java/bjc/utils/patterns/Pattern.java
diff options
context:
space:
mode:
authorBen Culkin <scorpress@gmail.com>2020-11-21 16:51:04 -0500
committerBen Culkin <scorpress@gmail.com>2020-11-21 16:51:04 -0500
commit4c0f972c4616eb549a098c3ef40d527eb542d7a6 (patch)
treef791838e7477bb15fe2181bf673231e2e4ccda0a /base/src/main/java/bjc/utils/patterns/Pattern.java
parentaaf35ffcea677d315aa24180f2742a45e2146ece (diff)
Add basic pattern matching
Adds a basic pattern matching implementation. Not perfect, but pretty good, considering what we have to work with
Diffstat (limited to 'base/src/main/java/bjc/utils/patterns/Pattern.java')
-rw-r--r--base/src/main/java/bjc/utils/patterns/Pattern.java20
1 files changed, 20 insertions, 0 deletions
diff --git a/base/src/main/java/bjc/utils/patterns/Pattern.java b/base/src/main/java/bjc/utils/patterns/Pattern.java
new file mode 100644
index 0000000..e03623e
--- /dev/null
+++ b/base/src/main/java/bjc/utils/patterns/Pattern.java
@@ -0,0 +1,20 @@
+package bjc.utils.patterns;
+
+import java.util.*;
+import java.util.function.*;
+import java.util.regex.*;
+
+import bjc.data.*;
+
+/**
+ * A simpler version of ComplexPattern, which always applies against Object
+ *
+ * @author Ben Culkin
+ *
+ * @param <ReturnType> The type returned by the pattern.
+ * @param <PredType> The state type returned by the predicate.
+ */
+public interface Pattern<ReturnType, PredType>
+ extends ComplexPattern<ReturnType, PredType, Object> {
+ /* Pattern factory methods */
+} \ No newline at end of file