summaryrefslogtreecommitdiff
path: root/RGens/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'RGens/src/main/java')
-rw-r--r--RGens/src/main/java/bjc/rgens/newparser/RGrammar.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java b/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java
index 0ac0a16..d3c3747 100644
--- a/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java
+++ b/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java
@@ -342,7 +342,13 @@ public class RGrammar {
}
}
- if (rules.containsKey(refersTo)) {
+ if(refersTo.startsWith("[^")) {
+ refersTo = "[" + refersTo.substring(2);
+
+ RGrammar dst = importRules.get(refersTo);
+
+ newState.contents.append(dst.generate(refersTo, state.rnd, state.vars));
+ } else if (rules.containsKey(refersTo)) {
RuleCase cse = rules.get(refersTo).getCase(state.rnd);
generateCase(cse, newState);