summaryrefslogtreecommitdiff
path: root/src/main/java/bjc/rgens/parser/elements/RuleVariableCaseElement.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/bjc/rgens/parser/elements/RuleVariableCaseElement.java')
-rw-r--r--src/main/java/bjc/rgens/parser/elements/RuleVariableCaseElement.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/main/java/bjc/rgens/parser/elements/RuleVariableCaseElement.java b/src/main/java/bjc/rgens/parser/elements/RuleVariableCaseElement.java
index 923b56c..5806e39 100644
--- a/src/main/java/bjc/rgens/parser/elements/RuleVariableCaseElement.java
+++ b/src/main/java/bjc/rgens/parser/elements/RuleVariableCaseElement.java
@@ -6,15 +6,32 @@ import bjc.rgens.parser.GenerationState;
import bjc.rgens.parser.GrammarException;
import bjc.rgens.parser.Rule;
+/**
+ * Case element which creates a rule variable.
+ *
+ * @author Ben Culkin
+ *
+ */
public class RuleVariableCaseElement extends VariableDefCaseElement {
+ /**
+ * Whether or not this is an exhaustive variable.
+ */
public final boolean exhaust;
+ /**
+ * Create a case element which creates a rule variable.
+ *
+ * @param varName The name of the variable.
+ * @param varDef The definition of the variable.
+ * @param exhaust Whether or not this is an exhaustive variable.
+ */
public RuleVariableCaseElement(String varName, String varDef, boolean exhaust) {
super(varName, varDef);
this.exhaust = exhaust;
}
+ @Override
public void generate(GenerationState state) {
Rule rl = state.findRule(varDef, true);