checkpoint
[sbp.git] / src / edu / berkeley / sbp / misc / MetaGrammar.java
index 3501ee6..49befee 100644 (file)
@@ -15,7 +15,7 @@ public class MetaGrammar extends StringWalker {
         return ret.toString();
     }
 
-    private static HashSet<Element> dropAll = new HashSet<Element>();
+    public /*private*/ static HashSet<Element> dropAll = new HashSet<Element>();
 
     // Statics //////////////////////////////////////////////////////////////////////////////
 
@@ -51,6 +51,7 @@ public class MetaGrammar extends StringWalker {
 
     // MetaGrammar //////////////////////////////////////////////////////////////////////////////
 
+    public Union       nonTerminal(String str) { return nonTerminal(str, null, false, false); }
     public Union       nonTerminal(String str, PreSequence[][] s, boolean synthetic, boolean dropAll) {
         Union n = str.equals(startSymbol) ? g : nt.get(str);
         if (n == null) nt.put(str, n = new Union(str, synthetic));
@@ -127,19 +128,7 @@ public class MetaGrammar extends StringWalker {
             PreSequence ret = new PreSequence(o3, s);
             ret.drops[o1.length] = o3.length>1;
             return ret;
-        } else if ("{".equals(head))
-            return nonTerminal("braced"+(anon++),
-                               new PreSequence[][] {
-                                   new PreSequence[] {
-                                       new PreSequence(new Element[] { leftBrace(),
-                                                                       ((PreSequence)walk(tree, 0)).buildUnion(),
-                                                                       rightBrace()
-                                       })
-                                   }
-                               },
-                               false,
-                               false);
-        else if ("[".equals(head) || "[~".equals(head)) {
+        } else if ("[".equals(head) || "[~".equals(head)) {
             boolean positive = "[".equals(head);
             Range[] rr = (Range[])walk(tree, 0);
             Range.Set ret = positive ? new Range.Set() : new Range.Set(new Range(true, true));