summaryrefslogtreecommitdiff
path: root/RGens/src/main/java/bjc/rgens/newparser
diff options
context:
space:
mode:
authorBenjamin J. Culkin <bjculkin@mix.wvu.edu>2017-11-01 15:08:17 -0300
committerBenjamin J. Culkin <bjculkin@mix.wvu.edu>2017-11-01 15:08:17 -0300
commit8d7b542ba7182b701a75a0fd5550e68f421ea696 (patch)
tree5d409de7f3f9fd11143454cc2814ce7d6e73c054 /RGens/src/main/java/bjc/rgens/newparser
parentc5cda1252f8b3636a5813f3c20a306438d81e112 (diff)
Work on adding regex rules
Diffstat (limited to 'RGens/src/main/java/bjc/rgens/newparser')
-rw-r--r--RGens/src/main/java/bjc/rgens/newparser/RegexRuleCase.java4
-rw-r--r--RGens/src/main/java/bjc/rgens/newparser/RuleCase.java8
2 files changed, 10 insertions, 2 deletions
diff --git a/RGens/src/main/java/bjc/rgens/newparser/RegexRuleCase.java b/RGens/src/main/java/bjc/rgens/newparser/RegexRuleCase.java
index 978f4f3..91e364a 100644
--- a/RGens/src/main/java/bjc/rgens/newparser/RegexRuleCase.java
+++ b/RGens/src/main/java/bjc/rgens/newparser/RegexRuleCase.java
@@ -1,5 +1,7 @@
package bjc.rgens.newparser;
public class RegexRuleCase extends RuleCase {
-
+ public RegexRuleCase(IList<CaseElement> elements, String pattern) {
+ super(REGEX);
+ }
}
diff --git a/RGens/src/main/java/bjc/rgens/newparser/RuleCase.java b/RGens/src/main/java/bjc/rgens/newparser/RuleCase.java
index 04e2cc2..9b2cfc5 100644
--- a/RGens/src/main/java/bjc/rgens/newparser/RuleCase.java
+++ b/RGens/src/main/java/bjc/rgens/newparser/RuleCase.java
@@ -22,7 +22,9 @@ public class RuleCase {
/** A normal case, composed from a list of elements. */
NORMAL,
/** A case that doesn't insert spaces. */
- SPACEFLATTEN
+ SPACEFLATTEN,
+ /** A case that applies a regex after generation. */
+ REGEX
}
/** The type of this case. */
@@ -53,6 +55,8 @@ public class RuleCase {
case NORMAL:
case SPACEFLATTEN:
throw new IllegalArgumentException("This type requires an element list parameter");
+ case REGEX:
+ throw new IllegalArgumentException("This type requires an element list and a pattern");
default:
break;
}
@@ -78,6 +82,8 @@ public class RuleCase {
case NORMAL:
case SPACEFLATTEN:
break;
+ case REGEX:
+ throw new IllegalArgumentException("This type requires an element list and a pattern");
default:
throw new IllegalArgumentException("This type doesn't have a element list parameter");
}