summaryrefslogtreecommitdiff
path: root/RGens/src/main/java/bjc/rgens/newparser/RGrammarTest.java
diff options
context:
space:
mode:
authorBenjamin J. Culkin <bjculkin@mix.wvu.edu>2017-10-04 19:28:04 -0300
committerBenjamin J. Culkin <bjculkin@mix.wvu.edu>2017-10-04 19:28:04 -0300
commit3e6e258a63d30e9ae57cc3f08efdcf95d6a3c44d (patch)
tree694c04419eab6e8322026a531087c22a22d3da47 /RGens/src/main/java/bjc/rgens/newparser/RGrammarTest.java
parent4bba1173779dc7933c651785d491fb089515e1e2 (diff)
Minor updates
Diffstat (limited to 'RGens/src/main/java/bjc/rgens/newparser/RGrammarTest.java')
-rw-r--r--RGens/src/main/java/bjc/rgens/newparser/RGrammarTest.java22
1 files changed, 17 insertions, 5 deletions
diff --git a/RGens/src/main/java/bjc/rgens/newparser/RGrammarTest.java b/RGens/src/main/java/bjc/rgens/newparser/RGrammarTest.java
index 7bfd762..97440f6 100644
--- a/RGens/src/main/java/bjc/rgens/newparser/RGrammarTest.java
+++ b/RGens/src/main/java/bjc/rgens/newparser/RGrammarTest.java
@@ -3,6 +3,7 @@ package bjc.rgens.newparser;
import java.io.IOException;
import java.net.URISyntaxException;
import java.net.URL;
+import java.nio.file.Path;
import java.nio.file.Paths;
/**
@@ -22,22 +23,32 @@ public class RGrammarTest {
URL rsc = RGrammarTest.class.getResource("/server-config-sample.cfg");
try {
- RGrammarSet gramSet = RGrammarSet.fromConfigFile(Paths.get(rsc.toURI()));
+ /* Load a grammar set. */
+ Path cfgPath = Paths.get(rsc.toURI());
+ RGrammarSet gramSet = RGrammarSet.fromConfigFile(cfgPath);
+ /* Generate rule suggestions for all the grammars in the set. */
for (String gramName : gramSet.getGrammars()) {
gramSet.getGrammar(gramName).generateSuggestions();
}
+ /* Generate for each exported rule. */
for (String exportName : gramSet.getExportedRules()) {
RGrammar grammar = gramSet.getExportSource(exportName);
for (int i = 0; i < 10; i++) {
try {
- grammar.generate(exportName);
+ System.out.printf("Generating for exported rule '%s'\n", exportName);
+ String res = grammar.generate(exportName);
+ System.out.printf("\tContents: %s\n", res);
} catch (GrammarException gex) {
- System.out.println("Error in exported rule " + exportName
- + " (loaded from "
- + gramSet.loadedFrom(gramSet.exportedFrom(exportName)));
+ /*
+ * Print out errors with generation.
+ */
+ String fmt = "Error in exported rule '%s' (loaded from '%s')\n";
+ String loadSrc = gramSet.loadedFrom(gramSet.exportedFrom(exportName));
+
+ System.out.printf(fmt, exportName, loadSrc);
System.out.println();
@@ -48,6 +59,7 @@ public class RGrammarTest {
}
}
}
+
} catch (IOException ioex) {
ioex.printStackTrace();
} catch (URISyntaxException urisex) {