summaryrefslogtreecommitdiff
path: root/src/main/java/bjc/rgens/parser/GenerationState.java
diff options
context:
space:
mode:
authorBenjamin J. Culkin <bjculkin@mix.wvu.edu>2018-06-04 21:13:50 -0300
committerBenjamin J. Culkin <bjculkin@mix.wvu.edu>2018-06-04 21:13:50 -0300
commit9b9ce0c3123d70b9e839084aade4f37eb08e328d (patch)
tree613702e05990ca2344b230490acbea6606041c37 /src/main/java/bjc/rgens/parser/GenerationState.java
parent4809072030d5ce659f38d9756213fca1db1e7f6c (diff)
Rule variables pt. 1
Add the capability to store regular/exhaustible rule variables
Diffstat (limited to 'src/main/java/bjc/rgens/parser/GenerationState.java')
-rw-r--r--src/main/java/bjc/rgens/parser/GenerationState.java10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/main/java/bjc/rgens/parser/GenerationState.java b/src/main/java/bjc/rgens/parser/GenerationState.java
index 7ab55bf..78fce96 100644
--- a/src/main/java/bjc/rgens/parser/GenerationState.java
+++ b/src/main/java/bjc/rgens/parser/GenerationState.java
@@ -33,6 +33,7 @@ public class GenerationState {
*/
/** The current set of variables. */
public Map<String, String> vars;
+ public Map<String, Rule> rlVars;
/**
* Create a new generation state.
@@ -46,10 +47,11 @@ public class GenerationState {
* @param vs
* The variables to use.
*/
- public GenerationState(StringBuilder cont, Random rand, Map<String, String> vs, RGrammar gram) {
+ public GenerationState(StringBuilder cont, Random rand, Map<String, String> vs, Map<String, Rule> rvs, RGrammar gram) {
contents = cont;
- rnd = rand;
- vars = vs;
+ rnd = rand;
+ vars = vs;
+ rlVars = rvs;
this.gram = gram;
@@ -66,6 +68,6 @@ public class GenerationState {
}
public GenerationState newBuf() {
- return new GenerationState(new StringBuilder(), rnd, vars, gram);
+ return new GenerationState(new StringBuilder(), rnd, vars, rlVars, gram);
}
}