diff options
Diffstat (limited to 'src/main/java/bjc/rgens/parser/elements')
9 files changed, 16 insertions, 18 deletions
diff --git a/src/main/java/bjc/rgens/parser/elements/ExpVariableCaseElement.java b/src/main/java/bjc/rgens/parser/elements/ExpVariableCaseElement.java index 1606e59..c221f4a 100755 --- a/src/main/java/bjc/rgens/parser/elements/ExpVariableCaseElement.java +++ b/src/main/java/bjc/rgens/parser/elements/ExpVariableCaseElement.java @@ -29,12 +29,10 @@ public class ExpVariableCaseElement extends VariableDefCaseElement { */ String res = destGrammar.generate(varDef, state, false); - newState.contents = new StringBuilder(res); + state.defineVar(varName, res); } else { String msg = String.format("No rule '%s' defined", varDef); throw new GrammarException(msg); } - - state.defineVar(varName, newState.contents.toString()); } } diff --git a/src/main/java/bjc/rgens/parser/elements/LiteralCaseElement.java b/src/main/java/bjc/rgens/parser/elements/LiteralCaseElement.java index 6e0f8fd..2621ee6 100644 --- a/src/main/java/bjc/rgens/parser/elements/LiteralCaseElement.java +++ b/src/main/java/bjc/rgens/parser/elements/LiteralCaseElement.java @@ -12,6 +12,6 @@ public class LiteralCaseElement extends CaseElement { } public void generate(GenerationState state) { - state.contents.append(val); + state.appendContents(val); } } diff --git a/src/main/java/bjc/rgens/parser/elements/RangeCaseElement.java b/src/main/java/bjc/rgens/parser/elements/RangeCaseElement.java index e877dd1..bd73f1b 100755 --- a/src/main/java/bjc/rgens/parser/elements/RangeCaseElement.java +++ b/src/main/java/bjc/rgens/parser/elements/RangeCaseElement.java @@ -17,7 +17,7 @@ public class RangeCaseElement extends CaseElement { int val = state.rnd.nextInt(end - begin); val += begin; - state.contents.append(val); + state.appendContents(Integer.toString(val)); } @Override diff --git a/src/main/java/bjc/rgens/parser/elements/RuleCaseElement.java b/src/main/java/bjc/rgens/parser/elements/RuleCaseElement.java index f13dbdb..e42647c 100755 --- a/src/main/java/bjc/rgens/parser/elements/RuleCaseElement.java +++ b/src/main/java/bjc/rgens/parser/elements/RuleCaseElement.java @@ -37,12 +37,12 @@ public class RuleCaseElement extends CaseElement { if(inName == false) inName = elm.forbidSpaces; } - String body = newState.contents.toString(); + String body = newState.getContents(); if(inName) { doGenerate(String.format("[%s]", body), state); } else { - state.contents.append(body); + state.appendContents(body); } } @@ -67,7 +67,7 @@ public class RuleCaseElement extends CaseElement { * once. */ String res = destGrammar.generate(actName, newState, false); - newState.contents = new StringBuilder(res); + newState.setContents(res); } else { /* * @TODO 5/29/18 Ben Culkin :RuleSuggesting @@ -91,13 +91,13 @@ public class RuleCaseElement extends CaseElement { throw new GrammarException(msg); } - String res = newState.contents.toString(); + String res = newState.getContents(); if (actName.contains("+")) { /* Rule names with pluses in them get space-flattened */ - state.contents.append(res.replaceAll("\\s+", "")); + state.appendContents(res.replaceAll("\\s+", "")); } else { - state.contents.append(res); + state.appendContents(res); } } } diff --git a/src/main/java/bjc/rgens/parser/elements/SerialCaseElement.java b/src/main/java/bjc/rgens/parser/elements/SerialCaseElement.java index 348cfbb..195ba4f 100644 --- a/src/main/java/bjc/rgens/parser/elements/SerialCaseElement.java +++ b/src/main/java/bjc/rgens/parser/elements/SerialCaseElement.java @@ -24,7 +24,7 @@ public class SerialCaseElement extends CaseElement { rep.generate(state); if(rep.spacing) - state.contents.append(" "); + state.appendContents(" "); } } } diff --git a/src/main/java/bjc/rgens/parser/elements/vars/ARefVariableElement.java b/src/main/java/bjc/rgens/parser/elements/vars/ARefVariableElement.java index 99af354..17db660 100644 --- a/src/main/java/bjc/rgens/parser/elements/vars/ARefVariableElement.java +++ b/src/main/java/bjc/rgens/parser/elements/vars/ARefVariableElement.java @@ -20,8 +20,8 @@ public class ARefVariableElement extends VariableElement { rl.generate(newState); - String res = newState.contents.toString(); + String res = newState.getContents(); - state.contents.append(res); + state.appendContents(res); } } diff --git a/src/main/java/bjc/rgens/parser/elements/vars/LiteralVariableElement.java b/src/main/java/bjc/rgens/parser/elements/vars/LiteralVariableElement.java index cf33c66..e7415f5 100644 --- a/src/main/java/bjc/rgens/parser/elements/vars/LiteralVariableElement.java +++ b/src/main/java/bjc/rgens/parser/elements/vars/LiteralVariableElement.java @@ -12,6 +12,6 @@ public class LiteralVariableElement extends VariableElement { } public void generate(GenerationState state) { - state.contents.append(val); + state.appendContents(val); } } diff --git a/src/main/java/bjc/rgens/parser/elements/vars/RRefVariableElement.java b/src/main/java/bjc/rgens/parser/elements/vars/RRefVariableElement.java index 5c0a768..e81e9f8 100644 --- a/src/main/java/bjc/rgens/parser/elements/vars/RRefVariableElement.java +++ b/src/main/java/bjc/rgens/parser/elements/vars/RRefVariableElement.java @@ -23,12 +23,12 @@ public class RRefVariableElement extends VariableElement { rl.generate(newState); - String res = newState.contents.toString(); + String res = newState.getContents(); if(forbidSpaces && res.contains(" ")) { throw new GrammarException(String.format("Spaces not allowed in this context (rule-reference %s)", state)); } - state.contents.append(res); + state.appendContents(res); } } diff --git a/src/main/java/bjc/rgens/parser/elements/vars/VRefVariableElement.java b/src/main/java/bjc/rgens/parser/elements/vars/VRefVariableElement.java index 1facd38..e65d876 100644 --- a/src/main/java/bjc/rgens/parser/elements/vars/VRefVariableElement.java +++ b/src/main/java/bjc/rgens/parser/elements/vars/VRefVariableElement.java @@ -19,6 +19,6 @@ public class VRefVariableElement extends VariableElement { throw new GrammarException(String.format("Cannot include variable %s w/ spaces in body in rule name", nam)); } - state.contents.append(strang); + state.appendContents(strang); } } |
