X-Git-Url: http://git.megacz.com/?p=sbp.git;a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2Fmeta%2FMetaGrammarBindings.java;h=2d064223452c9b81e500b1e52ebc62a30490691f;hp=da0204a157a8642b9588cb3609f18fe1cacebd47;hb=439f7fedebf5fdf586c18e6c3ce0c50e703ec0ed;hpb=df76fcb56242a90011500ab89092d2108350a8ab diff --git a/src/edu/berkeley/sbp/meta/MetaGrammarBindings.java b/src/edu/berkeley/sbp/meta/MetaGrammarBindings.java index da0204a..2d06422 100644 --- a/src/edu/berkeley/sbp/meta/MetaGrammarBindings.java +++ b/src/edu/berkeley/sbp/meta/MetaGrammarBindings.java @@ -59,6 +59,36 @@ public class MetaGrammarBindings { this.sep = sep; } public Element build(MetaGrammar.Context cx) { return cx.get(name); } + public void build(MetaGrammar.Context cx, Union u) { + if (!rep) { super.build(cx, u); return; } + HashSet bad2 = new HashSet(); + + Union urep = new Union(); + urep.add(Sequence.empty); + urep.add(Sequence.singleton(new Element[] { cx.get(sep), u }, 1)); + + for(int i=0; i