X-Git-Url: http://git.megacz.com/?p=sbp.git;a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2Fmisc%2FMetaGrammar.java;h=0b70878a66a57f477e470208f3acad4f1acf5532;hp=e30312ebe8c6cbcfe75212f088225d0f108925da;hb=558f61d337215d3f65d503e1dc97300289efa5c4;hpb=87c66a88436dc16965e1dcdf504119612a81f362 diff --git a/src/edu/berkeley/sbp/misc/MetaGrammar.java b/src/edu/berkeley/sbp/misc/MetaGrammar.java index e30312e..0b70878 100644 --- a/src/edu/berkeley/sbp/misc/MetaGrammar.java +++ b/src/edu/berkeley/sbp/misc/MetaGrammar.java @@ -16,7 +16,7 @@ public class MetaGrammar extends ReflectiveWalker { } // FIXME - private static HashSet dropAll = new HashSet(); + private static HashSet dropAll = new HashSet(); // Statics ////////////////////////////////////////////////////////////////////////////// @@ -78,24 +78,14 @@ public class MetaGrammar extends ReflectiveWalker { } return ret; } - //public Element _tilde__slash__tilde_(final Element r) { return Repeat.maximal(r); } public Object _plus__slash_(final Element r, Object s) { if (s instanceof String) s = CharToken.string((String)s); return new Rep(r, (Element)s, false, false); } - public Object _dollar__dollar_(final Element r, Object s) { - if (s instanceof String) s = CharToken.string((String)s); - return new Rep(r, (Element)s, false, false); - } public Object _star__slash_(final Element r, Object s) { if (s instanceof String) s = CharToken.string((String)s); return new Rep(r, (Element)s, false, true); } - public Object _percent__percent_(final Element r, Object s) { - if (s instanceof String) s = CharToken.string((String)s); - return new Rep(r, (Element)s, false, true); - } - //public Element _star__slash_(final Element r, Element s) { return Repeat.many0(r, s); } public Object _star__star_(final Element r) { return new Rep(r, null, true, true); } public Object _plus__plus_(final Element r) { return new Rep(r, null, true, false); } public Element _question_(final Element r) { return Repeat.maybe(r); } @@ -104,8 +94,14 @@ public class MetaGrammar extends ReflectiveWalker { public MetaGrammar grammar(Object o, Union[] u, Object x) { return this; } public char _backslash_n() { return '\n'; } public char _backslash_r() { return '\r'; } - public String literal(String s) { return s; } - //public Element literal(String s) { return CharToken.string(s); } + //public String literal(String s) { return s; } + + public Object literal(String s) { + Element e = CharToken.string(s); + return new MyDrop(e); + //dropAll.add(e); + //return e; + } public Range range0(char a) { return new Range(a, a); } public Range range0(char a, char b) { return new Range(a, b); } @@ -177,6 +173,7 @@ public class MetaGrammar extends ReflectiveWalker { g = new Union(str); startSymbol = str; nt = new HashMap(); + dropAll = new HashSet(); nt.put(str, g); this.dws = Repeat.maximal(Repeat.many0(nonTerminalY("w"))); return ret; @@ -368,6 +365,10 @@ public class MetaGrammar extends ReflectiveWalker { + + + + // DO NOT EDIT STUFF BELOW: IT IS AUTOMATICALLY GENERATED new Tree(null, "gram", new Tree[] { new Tree(null, null, new Tree[] { }), new Tree(null, "grammar", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "::=", new Tree[] { new Tree(null, "sify", new Tree[] { new Tree(null, null, new Tree[] { new Tree(null, "s", new Tree[] { })})}), @@ -951,3 +952,7 @@ new Tree(null, "gram", new Tree[] { new Tree(null, null, new Tree[] { }), + + + +