summaryrefslogtreecommitdiff
path: root/src/main/java/bjc/rgens/parser/Rule.java
diff options
context:
space:
mode:
authorBenjamin J. Culkin <bjculkin@mix.wvu.edu>2018-09-06 16:26:40 -0300
committerBenjamin J. Culkin <bjculkin@mix.wvu.edu>2018-09-06 16:26:40 -0300
commitc7fbd761c1cc8a8a553f79463ecb8dd02c43d0f8 (patch)
tree704ad9534058cdb98e6c3c34edf893489bce5779 /src/main/java/bjc/rgens/parser/Rule.java
parente9ff21333162f6b3a516d91d4c814d5ebb78d88c (diff)
Convert GenerationState.contents to private
This is to prepare for replacing contents with a ReportWriter
Diffstat (limited to 'src/main/java/bjc/rgens/parser/Rule.java')
-rwxr-xr-xsrc/main/java/bjc/rgens/parser/Rule.java11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/main/java/bjc/rgens/parser/Rule.java b/src/main/java/bjc/rgens/parser/Rule.java
index 21d197d..1a74352 100755
--- a/src/main/java/bjc/rgens/parser/Rule.java
+++ b/src/main/java/bjc/rgens/parser/Rule.java
@@ -297,24 +297,23 @@ public class Rule {
endRecur();
}
+ // Don't rebuild the builder a bunch
+ String conts = state.getContents();
if(name.contains("+")) {
- state.contents = new StringBuilder(state.contents.toString().replaceAll("\\s+", ""));
+ conts = conts.replaceAll("\\s+", "");
}
- String conts = state.contents.toString();
-
for(IPair<String, String> findRep : findReplaces) {
conts = conts.replaceAll(findRep.getLeft(), findRep.getRight());
}
-
- state.contents = new StringBuilder(conts);
+ state.setContents(conts);
for(String pat : rejectionPreds) {
if(!conts.matches(pat)) {
fine("Rejected %s by %s (from %s)", conts, pat, belongsTo.name);
rejected = true;
- state.contents = new StringBuilder();
+ state.clearContents();
break;
}