checkpoint
authoradam <adam@megacz.com>
Sat, 8 Jul 2006 04:20:37 +0000 (00:20 -0400)
committeradam <adam@megacz.com>
Sat, 8 Jul 2006 04:20:37 +0000 (00:20 -0400)
darcs-hash:20060708042037-5007d-48e1270f47b47846a5953b029fec937b2917faca.gz

src/edu/berkeley/sbp/meta/GrammarBindingResolver.java
src/edu/berkeley/sbp/meta/TaggingGrammarBindingResolver.java [new file with mode: 0644]
src/edu/berkeley/sbp/misc/RegressionTests.java

index a71122e..e32b41a 100644 (file)
@@ -14,6 +14,5 @@ public class GrammarBindingResolver {
     public Sequence tryResolveTag(String tag, String nonTerminalName, Element[] els, Object[] labels, boolean[] drops) {
         return null; }
     public Sequence resolveTag(String tag, String nonTerminalName, Element[] els, Object[] labels, boolean[] drops) {
-        return Sequence.rewritingSequence(tag, els, labels, drops);
-    }
+        return null; }
 }
diff --git a/src/edu/berkeley/sbp/meta/TaggingGrammarBindingResolver.java b/src/edu/berkeley/sbp/meta/TaggingGrammarBindingResolver.java
new file mode 100644 (file)
index 0000000..2a53616
--- /dev/null
@@ -0,0 +1,21 @@
+package edu.berkeley.sbp.meta;
+import edu.berkeley.sbp.util.*;
+import edu.berkeley.sbp.*;
+import edu.berkeley.sbp.chr.*;
+import edu.berkeley.sbp.misc.*;
+import edu.berkeley.sbp.bind.*;
+import java.util.*;
+import java.lang.annotation.*;
+import java.lang.reflect.*;
+import java.io.*;
+
+public class TaggingGrammarBindingResolver extends GrammarBindingResolver {
+    public Object repeatTag() { return null; }
+    public Sequence tryResolveTag(String tag, String nonTerminalName, Element[] els, Object[] labels, boolean[] drops) {
+        if (tag==null) return null;
+        return Sequence.rewritingSequence(tag, els, labels, drops);
+    }
+    public Sequence resolveTag(String tag, String nonTerminalName, Element[] els, Object[] labels, boolean[] drops) {
+        return Sequence.rewritingSequence(tag, els, labels, drops);
+    }
+}
index 739df55..032e373 100644 (file)
@@ -108,7 +108,7 @@ public class RegressionTests {
         public static class TestCaseMakerHelper extends MetaGrammarBindings {
             public static @bind.as("grammaro") @bind.raw Object grammaro(Iterable<Tree> t) {
                 System.out.println("working on " + t);
-                return MetaGrammar.make(t.iterator().next(), "s", new GrammarBindingResolver());
+                return MetaGrammar.make(t.iterator().next(), "s", new TaggingGrammarBindingResolver());
             }
             //public static @bind.as("tca")           Object tca(Object[] o) throws IOException {
             //return new TestCase((String)o[0], (String[])o[1], (Union)o[2], false, false); }