X-Git-Url: http://git.megacz.com/?p=sbp.git;a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2Fmisc%2FMetaGrammar.java;fp=src%2Fedu%2Fberkeley%2Fsbp%2Fmisc%2FMetaGrammar.java;h=4d82952ddf64a7fb726d7c7292bbfe0ede7d45b8;hp=53c9bedcad2ccfe7cf60cd5a523d89ae8902a01e;hb=e5cfb136bf7fd1352eff1bd87a458aa4ff748537;hpb=6ae224025882c9929e2e4e9e8461decbf3b9cae4 diff --git a/src/edu/berkeley/sbp/misc/MetaGrammar.java b/src/edu/berkeley/sbp/misc/MetaGrammar.java index 53c9bed..4d82952 100644 --- a/src/edu/berkeley/sbp/misc/MetaGrammar.java +++ b/src/edu/berkeley/sbp/misc/MetaGrammar.java @@ -20,8 +20,8 @@ public class MetaGrammar extends StringWalker { private static Element set(Range.Set r) { return CharRange.set(r); } private static Element string(String s) { return CharRange.string(s); } - private static Atom infer(Element e) { return infer(Atom.toAtom(e)); } - private static Atom infer(Topology t) { return new CharRange((Topology)t); } + private static Atom infer(Element e) { return infer((Topology)Atom.toAtom(e)); } + private static Atom infer(Topology t) { return new CharRange(new CharTopology(t)); } private MetaGrammar() { } @@ -357,7 +357,7 @@ public class MetaGrammar extends StringWalker { public MetaClause element; public MetaInvert(Tree t, MetaConjunct c) { this.element = make(t, c); } public String toString() { return "~"+element; } - public Element build(BuildContext bc) { return infer(Atom.toAtom(element.build(bc)).complement()); } + public Element build(BuildContext bc) { return infer((Topology)Atom.toAtom(element.build(bc)).complement()); } } }