diff options
| author | Benjamin J. Culkin <bjculkin@mix.wvu.edu> | 2017-10-24 19:29:04 -0300 |
|---|---|---|
| committer | Benjamin J. Culkin <bjculkin@mix.wvu.edu> | 2017-10-24 19:29:04 -0300 |
| commit | d6a2f1faa5d2f2009afe37a17b3c18faa2d79a0e (patch) | |
| tree | 13efb0414aeb9bb9b4d90f6f62878a9cfcf69a5d /RGens/src/main/java/bjc/rgens/newparser/RGrammarParser.java | |
| parent | e1f4d1f3fc86b67e82684d196d3948a13794d35f (diff) | |
Add a possible solution to :Spacing?
Diffstat (limited to 'RGens/src/main/java/bjc/rgens/newparser/RGrammarParser.java')
| -rw-r--r-- | RGens/src/main/java/bjc/rgens/newparser/RGrammarParser.java | 11 |
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(" "); |
