X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2Fmeta%2FMetaGrammar.java;h=2077bbd3be734ab61c8634c280d9df0e94f8f076;hb=7e24ec8964abf26cb768820f42572e0982c5ddf0;hp=aa02d5f475633c88e3eb6450b067d936b0789f6e;hpb=92fb8d7453b3caad1471d84dd452f5ec07785e5e;p=sbp.git diff --git a/src/edu/berkeley/sbp/meta/MetaGrammar.java b/src/edu/berkeley/sbp/meta/MetaGrammar.java index aa02d5f..2077bbd 100644 --- a/src/edu/berkeley/sbp/meta/MetaGrammar.java +++ b/src/edu/berkeley/sbp/meta/MetaGrammar.java @@ -127,7 +127,7 @@ public class MetaGrammar { return buildSequence(p)!=null; bind b = getBind(); - System.out.println(_bindable.getClass().getSimpleName() + ": " + _bindable.getSimpleName()); + //System.out.println(_bindable.getClass().getSimpleName() + ": " + _bindable.getSimpleName()); if (b != null && getName().equals(p.tag)) return buildSequence(p)!=null; @@ -150,15 +150,27 @@ public class MetaGrammar { argTagged++; // FIXME: can be smarter here - if (names.length==p.count) { - int[] ret = new int[p.count]; - for(int i=0; i red = (Tree.TreeFunctor)t.head(); MetaGrammarBindings.Grammar g = (MetaGrammarBindings.Grammar)red.invoke(t.children()); Context cx = new Context(g,rm); Union u = null; - for(MetaGrammarBindings.NonTerminal nt : g.nonterminals) { - System.out.println(nt.name); + for(MetaGrammarBindings.NonTerminal nt : g.values()) { Union el = (Union)cx.get(nt.name); StringBuffer st = new StringBuffer(); el.toString(st); - System.err.println(st); if (nt.name.equals(s)) u = el; } return u; @@ -266,7 +275,7 @@ public class MetaGrammar { } public Union build() { Union ret = null; - for(MetaGrammarBindings.NonTerminal nt : grammar.nonterminals) { + for(MetaGrammarBindings.NonTerminal nt : grammar.values()) { Union u = get(nt.name); if ("s".equals(nt.name)) ret = u;