X-Git-Url: http://git.megacz.com/?p=sbp.git;a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2Fmisc%2FMetaGrammar.java;h=26f8ae1712cdd015aad3a2904ded7d712f3b23eb;hp=234673f037200042a873b5088f71edc81995c8be;hb=d36f4e4e82c44906ed45f8184e231779bdd61232;hpb=7ad1e0ae9ef7ee8ba5e3cc1d98b3545b92f48298 diff --git a/src/edu/berkeley/sbp/misc/MetaGrammar.java b/src/edu/berkeley/sbp/misc/MetaGrammar.java index 234673f..26f8ae1 100644 --- a/src/edu/berkeley/sbp/misc/MetaGrammar.java +++ b/src/edu/berkeley/sbp/misc/MetaGrammar.java @@ -39,17 +39,17 @@ public class MetaGrammar extends ReflectiveWalker { public Object _caret_(String s) { return new MyLift(s); } public Object _leftparen__rightparen_() { return epsilon; } - public Union nonTerminal(String s) { return nonTerminalX(s, false, false); } - public Union nonTerminalX(String s, boolean synthetic, boolean dropAll) { + public Union nonTerminal(String s) { return nonTerminal(s, false, false); } + public Union nonTerminal(String s, boolean synthetic, boolean dropAll) { Union n = s.equals(startSymbol) ? g : nt.get(s); if (n == null) nt.put(s, n = new Union(s, synthetic)); if (dropAll) this.dropAll.add(n); return n; } - public Union _colon__colon__equals_(String s, PreSequence[][] p) { return nonTerminalX(s, p, false, false); } - public Union _bang__colon__colon__equals_(String s, PreSequence[][] p) { return nonTerminalX(s, p, false, true); } - public Union _colon__colon__equals_(boolean q, String s, PreSequence[][] p) { return nonTerminalX(s, p, false, q); } - public Object _leftparen_(PreSequence[][] p) { return nonTerminalX("anon"+(anon++), p, false, false); } + public Union _colon__colon__equals_(String s, PreSequence[][] p) { return nonTerminal(s, p, false, false); } + public Union _bang__colon__colon__equals_(String s, PreSequence[][] p) { return nonTerminal(s, p, false, true); } + public Union _colon__colon__equals_(boolean q, String s, PreSequence[][] p) { return nonTerminal(s, p, false, q); } + public Object _leftparen_(PreSequence[][] p) { return nonTerminal("anon"+(anon++), p, false, false); } public Object _backslash__leftbrace_(String s) { return SELF; } public Object _leftbrace_(String s) { return SELF; } public Object _plus_(final Element r) { return new Rep(r, null, false, false); } @@ -110,8 +110,8 @@ public class MetaGrammar extends ReflectiveWalker { return ret; } - public Union nonTerminalX(String str, PreSequence[][] s, boolean synthetic, boolean dropAll) { - Union n = nonTerminalX(str, synthetic, dropAll); + public Union nonTerminal(String str, PreSequence[][] s, boolean synthetic, boolean dropAll) { + Union n = nonTerminal(str, synthetic, dropAll); if (s == null || s.length==0) { n.add(Sequence.empty); return n; } HashSet seqs = new HashSet(); for(int i=0; i