+ private Element set(Range.Set r) { if (strings) throw new Error(); return CharToken.set(r); }
+ private Element string(String s) { return strings ? StringToken.string(s) : CharToken.string(s); }
+ private Atom leftBrace() { return strings ? StringToken.leftBrace : CharToken.leftBrace; }
+ private Atom rightBrace() { return strings ? StringToken.rightBrace : CharToken.rightBrace; }
+
+ public MetaGrammar() { this("s", false); }
+ public MetaGrammar(String s) { this(s, false); }
+ public MetaGrammar(String s, boolean strings) { this.strings = strings; done(s); }