From ea6309dcafef2c5796be4c1d50c8295274dc31d6 Mon Sep 17 00:00:00 2001 From: adam Date: Wed, 14 Dec 2005 02:06:05 -0500 Subject: [PATCH] checkpoint darcs-hash:20051214070605-5007d-eab74c5adfc3fa381fba10b93e83cbd2ad432c1a.gz --- src/edu/berkeley/sbp/misc/MetaGrammar.java | 19 +++++++------------ tests/meta.g | 4 ---- 2 files changed, 7 insertions(+), 16 deletions(-) diff --git a/src/edu/berkeley/sbp/misc/MetaGrammar.java b/src/edu/berkeley/sbp/misc/MetaGrammar.java index 900ee3f..d5fa65d 100644 --- a/src/edu/berkeley/sbp/misc/MetaGrammar.java +++ b/src/edu/berkeley/sbp/misc/MetaGrammar.java @@ -48,19 +48,17 @@ public class MetaGrammar extends ReflectiveWalker { } // MetaGrammar ////////////////////////////////////////////////////////////////////////////// + + public PreSequence _amp_(PreSequence p, Object[] o) { return p.and(new PreSequence(o, null, true).buildSequence(null, true, false)); } + public PreSequence _amp__tilde_(PreSequence p, Object[] o) { return p.not(new PreSequence(o, null, true).buildSequence(null, true, false)); } + public PreSequence rewrite(Object[] o) { return new PreSequence(o, null); } public PreSequence _equals__greater_(Object[] o, String s) { return new PreSequence(o, s); } public Object _star_(Element r) { return Repeat.many0(r); } public Element epsilon(Object o, Object b) { return epsilon; } public Element _rightparen_(Object e) { return SELF; } - - public PreSequence _amp_(PreSequence p, Object[] o) { return p.and(new PreSequence(o, null, true).buildSequence(null, true, false)); } - public PreSequence _amp__tilde_(PreSequence p, Object[] o) { return p.not(new PreSequence(o, null, true).buildSequence(null, true, false)); } - - public Element _bang_(Element r) { return r; } - public Object care(String s) { return new MyLift(s); } - public Object _caret_(String s) { return new MyLift(s); } - public Object _leftparen__rightparen_() { return epsilon; } - + public Element _bang_(Element r) { return r; } + public Object _caret_(String s) { return new MyLift(s); } + public Object _leftparen__rightparen_() { return epsilon; } public Union nonTerminal(String s) { return nonTerminal(s, null, 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); } @@ -125,9 +123,6 @@ public class MetaGrammar extends ReflectiveWalker { return CharToken.set(ret); } - public PreSequence wrap(Object[] o) { return new PreSequence(o, ""); } - public PreSequence rewrite(Object[] o) { return new PreSequence(o, null); } - public static class MyLift { public final String s; public MyLift(String s) { this.s = s; } diff --git a/tests/meta.g b/tests/meta.g index 7afdbc4..e2713f9 100644 --- a/tests/meta.g +++ b/tests/meta.g @@ -33,12 +33,8 @@ e ::= word => "nonTerminal" | ^"[" (range*) "]" | ^"[~" (range*) "]" | ^"^" quoted /ws - | e ^"~/~" /ws | ^"!" e /ws - | ^"`" e /ws - | e ^"#" /ws - | (e ws ^"**" > e ws ^"*") | e ^"*/" e /ws | (e ws ^"++" > e ws ^"+") -- 1.7.10.4