From e64e99e8fd3b7a291639ee28a4a5ef3e75d6de4a Mon Sep 17 00:00:00 2001 From: adam Date: Sat, 8 Jul 2006 00:20:37 -0400 Subject: [PATCH] checkpoint darcs-hash:20060708042037-5007d-48e1270f47b47846a5953b029fec937b2917faca.gz --- .../berkeley/sbp/meta/GrammarBindingResolver.java | 3 +-- .../sbp/meta/TaggingGrammarBindingResolver.java | 21 ++++++++++++++++++++ src/edu/berkeley/sbp/misc/RegressionTests.java | 2 +- 3 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 src/edu/berkeley/sbp/meta/TaggingGrammarBindingResolver.java diff --git a/src/edu/berkeley/sbp/meta/GrammarBindingResolver.java b/src/edu/berkeley/sbp/meta/GrammarBindingResolver.java index a71122e..e32b41a 100644 --- a/src/edu/berkeley/sbp/meta/GrammarBindingResolver.java +++ b/src/edu/berkeley/sbp/meta/GrammarBindingResolver.java @@ -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 index 0000000..2a53616 --- /dev/null +++ b/src/edu/berkeley/sbp/meta/TaggingGrammarBindingResolver.java @@ -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); + } +} diff --git a/src/edu/berkeley/sbp/misc/RegressionTests.java b/src/edu/berkeley/sbp/misc/RegressionTests.java index 739df55..032e373 100644 --- a/src/edu/berkeley/sbp/misc/RegressionTests.java +++ b/src/edu/berkeley/sbp/misc/RegressionTests.java @@ -108,7 +108,7 @@ public class RegressionTests { public static class TestCaseMakerHelper extends MetaGrammarBindings { public static @bind.as("grammaro") @bind.raw Object grammaro(Iterable 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); } -- 1.7.10.4