X-Git-Url: http://git.megacz.com/?p=sbp.git;a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2Fmisc%2FMetaGrammar.java;h=eb4a34fb3ba2a82456b363fb0cca79a41121da4f;hp=d1ec41665c4f390f3347483c4c9b29e63144f9dd;hb=202da2dfa080e426c29c14123b3f2485b53f12dd;hpb=be24ec463cd9a9a4f907c5a6167d8029726753ea diff --git a/src/edu/berkeley/sbp/misc/MetaGrammar.java b/src/edu/berkeley/sbp/misc/MetaGrammar.java index d1ec416..eb4a34f 100644 --- a/src/edu/berkeley/sbp/misc/MetaGrammar.java +++ b/src/edu/berkeley/sbp/misc/MetaGrammar.java @@ -28,7 +28,6 @@ public class MetaGrammar extends ReflectiveWalker { // MetaGrammar ////////////////////////////////////////////////////////////////////////////// public Object _star_(Element r) { return new Rep(r, null, false, true); } - public Element _leftbracket_(Object o, Object[] args) { return rangex(o==null || !(o instanceof Character) ? null : o, args); } public Union _colon__colon__equals_(String s, PreSequence[][] p) { return nonTerminalZ(s, p); } public Union _bang__colon__colon__equals_(String s, PreSequence[][] p) { return nonTerminalZ(s, p, true); } public Union _colon__colon__equals_(boolean q, String s, PreSequence[][] p) { return nonTerminalZ(s, p, q); } @@ -100,6 +99,8 @@ public class MetaGrammar extends ReflectiveWalker { public Range _minus_(char a, char b) { return new Range(a, b); } public Element rangesx(Range[] rr) { return ranges("~", rr); } public Element ranges(Range[] rr) { return ranges(null, rr); } + public Element _leftbracket_ (Range[] rr) { return ranges(null, rr); } + public Element _leftbracket__tilde_(Range[] rr) { return ranges("~", rr); } public Element ranges(Object o, Range[] rr) { Range.Set ret = !"~".equals(o+"") ? new Range.Set() : new Range.Set(new Range(true, true)); if (rr != null)