summaryrefslogtreecommitdiff
path: root/RGens/src/main/java/bjc/rgens/newparser/RGrammarParser.java
diff options
context:
space:
mode:
Diffstat (limited to 'RGens/src/main/java/bjc/rgens/newparser/RGrammarParser.java')
-rw-r--r--RGens/src/main/java/bjc/rgens/newparser/RGrammarParser.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/RGens/src/main/java/bjc/rgens/newparser/RGrammarParser.java b/RGens/src/main/java/bjc/rgens/newparser/RGrammarParser.java
index e253cc3..9451f8c 100644
--- a/RGens/src/main/java/bjc/rgens/newparser/RGrammarParser.java
+++ b/RGens/src/main/java/bjc/rgens/newparser/RGrammarParser.java
@@ -51,6 +51,17 @@ public class RGrammarParser {
build.setInitialRule(body);
});
+ pragmas.put("despace-rule", (body, build, level) -> {
+ int sep = body.indexOf(' ');
+
+ if (sep != -1) {
+ String msg = "despace-rule pragma takes only one argument, the name of the rule to despace";
+ throw new GrammarException(msg);
+ }
+
+ build.despaceRule(body);
+ });
+
pragmas.put("export-rule", (body, build, level) -> {
String[] exports = body.split(" ");