summaryrefslogtreecommitdiff
path: root/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java
diff options
context:
space:
mode:
authorBenjamin J. Culkin <bjculkin@mix.wvu.edu>2017-10-24 19:29:04 -0300
committerBenjamin J. Culkin <bjculkin@mix.wvu.edu>2017-10-24 19:29:04 -0300
commitd6a2f1faa5d2f2009afe37a17b3c18faa2d79a0e (patch)
tree13efb0414aeb9bb9b4d90f6f62878a9cfcf69a5d /RGens/src/main/java/bjc/rgens/newparser/RGrammar.java
parente1f4d1f3fc86b67e82684d196d3948a13794d35f (diff)
Add a possible solution to :Spacing?
Diffstat (limited to 'RGens/src/main/java/bjc/rgens/newparser/RGrammar.java')
-rw-r--r--RGens/src/main/java/bjc/rgens/newparser/RGrammar.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java b/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java
index 2dfec39..6539d60 100644
--- a/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java
+++ b/RGens/src/main/java/bjc/rgens/newparser/RGrammar.java
@@ -187,6 +187,12 @@ public class RGrammar {
case NORMAL:
for (CaseElement elm : start.getElements()) {
generateElement(elm, state);
+ state.contents.append(" ");
+ }
+ break;
+ case SPACEFLATTEN:
+ for (CaseElement elm : start.getElements()) {
+ generateElement(elm, state);
}
break;
default:
@@ -205,7 +211,6 @@ public class RGrammar {
switch (elm.type) {
case LITERAL:
state.contents.append(elm.getLiteral());
- state.contents.append(" ");
break;
case RULEREF:
generateRuleReference(elm, state);
@@ -218,7 +223,6 @@ public class RGrammar {
val += start;
state.contents.append(val);
- state.contents.append(" ");
break;
case VARDEF:
generateVarDef(elm.getName(), elm.getDefn(), state);
@@ -351,7 +355,6 @@ public class RGrammar {
if (refersTo.contains("+")) {
/* Rule names with pluses in them get space-flattened */
state.contents.append(newState.contents.toString().replaceAll("\\s+", ""));
- state.contents.append(" ");
} else {
state.contents.append(newState.contents.toString());
}