summaryrefslogtreecommitdiff
path: root/RGens/src/main/java/bjc/rgens/newparser/RuleCase.java
diff options
context:
space:
mode:
Diffstat (limited to 'RGens/src/main/java/bjc/rgens/newparser/RuleCase.java')
-rw-r--r--RGens/src/main/java/bjc/rgens/newparser/RuleCase.java27
1 files changed, 4 insertions, 23 deletions
diff --git a/RGens/src/main/java/bjc/rgens/newparser/RuleCase.java b/RGens/src/main/java/bjc/rgens/newparser/RuleCase.java
index 9b2cfc5..217d668 100644
--- a/RGens/src/main/java/bjc/rgens/newparser/RuleCase.java
+++ b/RGens/src/main/java/bjc/rgens/newparser/RuleCase.java
@@ -39,28 +39,9 @@ public class RuleCase {
* <dd>Used as the list of elementList the rule is composed of.</dd>
* </dl>
*/
- private IList<CaseElement> elementList;
-
- /**
- * Create a new case of the specified type.
- *
- * @param typ
- * The type of case to create.
- *
- * @throws IllegalArgumentException
- * If the type requires parameters.
- */
- public RuleCase(CaseType typ) {
- switch (typ) {
- 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;
- }
+ protected IList<CaseElement> elementList;
+ protected RuleCase(CaseType typ) {
type = typ;
}
@@ -78,6 +59,8 @@ public class RuleCase {
* If this type doesn't take a element list parameter.
*/
public RuleCase(CaseType typ, IList<CaseElement> elements) {
+ this(typ);
+
switch (typ) {
case NORMAL:
case SPACEFLATTEN:
@@ -88,8 +71,6 @@ public class RuleCase {
throw new IllegalArgumentException("This type doesn't have a element list parameter");
}
- type = typ;
-
elementList = elements;
}