From 55b213d397cdc89a21905c9ca01d11405dbbf3ae Mon Sep 17 00:00:00 2001 From: adam Date: Wed, 21 Dec 2005 20:52:25 -0500 Subject: [PATCH] checkpoint darcs-hash:20051222015225-5007d-904ad476894fe53ea97e6cb7091c73ede5782908.gz --- src/edu/berkeley/sbp/misc/MetaGrammar.java | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/edu/berkeley/sbp/misc/MetaGrammar.java b/src/edu/berkeley/sbp/misc/MetaGrammar.java index d03baaf..7b64f70 100644 --- a/src/edu/berkeley/sbp/misc/MetaGrammar.java +++ b/src/edu/berkeley/sbp/misc/MetaGrammar.java @@ -71,7 +71,6 @@ public class MetaGrammar extends ReflectiveWalker { return n; } - public Object _backslash__leftbrace_(String s) { return SELF; } public Object _leftbrace_(PreSequence p) { return nonTerminal("braced"+(anon++), new PreSequence[][] { @@ -86,9 +85,6 @@ public class MetaGrammar extends ReflectiveWalker { false); } - public PreSequence _equals__greater_(PreSequence p, String tag) { p.tag = tag; return p; } - - public PreSequence ps(Object[] o) { return new PreSequence(o); } public PreSequence ps2(Object[] o1, String s, Object[] o2) { if (o1==null) o1 = new Object[0]; if (o2==null) o2 = new Object[0]; @@ -100,7 +96,6 @@ public class MetaGrammar extends ReflectiveWalker { ret.drops[o1.length] = o3.length>1; return ret; } - public PreSequence _slash_(PreSequence p, Object sep) { return p.sparse(sep); } public String string(Tree tree) { String ret = ""; @@ -136,6 +131,10 @@ public class MetaGrammar extends ReflectiveWalker { else if ("literal".equals(head)) { Element ret = string(string(tree.child(0))); dropAll.add(ret); return ret; } else if ("-".equals(head)) return new Range(walk(tree, 0).toString().charAt(0), walk(tree,1).toString().charAt(0)); else if ("range".equals(head)) return new Range(walk(tree, 0).toString().charAt(0), walk(tree,0).toString().charAt(0)); + else if ("gram".equals(head)) return walk(tree, 1); + else if ("=>".equals(head)) { PreSequence p = (PreSequence)walk(tree, 0); p.tag = string(tree.child(1)); return p; } + else if ("/".equals(head)) return ((PreSequence)walk(tree, 0)).sparse((Element)walk(tree, 1)); + else if ("ps".equals(head)) return new PreSequence((Element[])walk(tree, 0)); else if ("[".equals(head) || "[~".equals(head)) { boolean positive = "[".equals(head); Range[] rr = (Range[])walk(tree, 0); @@ -149,7 +148,6 @@ public class MetaGrammar extends ReflectiveWalker { else return super.walk(tree); } - public Object gram(Object o, Object g, Object o2) { return g; } ////////////////////////////////////////////////////////////////////////////// -- 1.7.10.4