From 9a5a155fbd2c9d87e698f9e25cd504bb2fcacffc Mon Sep 17 00:00:00 2001 From: bjculkin Date: Tue, 21 Mar 2017 19:43:11 -0400 Subject: Add flat rules. Flat rules, which are any rules that have the symbol '+' in their name, have all of their spaces replaced with "" to have the effect of directly conjoining a bunch of rules together. --- RGens/src/main/java/bjc/rgens/newparser/RGrammar.java | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'RGens/src/main/java') diff --git a/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java b/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java index aa5307d..ed02e87 100644 --- a/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java +++ b/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java @@ -174,7 +174,14 @@ public class RGrammar { throw new GrammarException(String.format("No rule by name '%s' found", refersTo)); } + if(refersTo.contains("+")) { + /* + * Rule names with pluses in them get space-flattened + */ + state.contents.append(newState.contents.toString().replaceAll("\\s+", "")); + } else { state.contents.append(newState.contents.toString()); + } } /** -- cgit v1.2.3