public PreSequence _amp_(PreSequence p, Object[] o) { return p.and(new PreSequence(o, null).buildSequence(null, true, false, true)); }
public PreSequence _amp__tilde_(PreSequence p, Object[] o) { return p.not(new PreSequence(o, null).buildSequence(null, true, false, true)); }
- public Object _star_(Element r) { return Repeat.many0(r); }
public Element epsilon(Object o, Object b) { return Union.epsilon; }
public Object _leftparen__rightparen_(Object o) { return Union.epsilon; }
public Element _rightparen_(Object e) { return SELF; }
false);
}
- public Object _plus_(final Element r) { return Repeat.many1(r); }
public PreSequence rewrite(Object[] o) { return new PreSequence(o, null); }
public PreSequence seqx(PreSequence p, String tag) { return _equals__greater_(p, tag); }
public PreSequence ps(Object[] o) { return new PreSequence(o); }
public PreSequence _slash_(PreSequence p, Object sep) { return p.sparse(sep); }
+ public Object _star_(Element r) { return Repeat.many0(r); }
+ public Object _plus_(final Element r) { return Repeat.many1(r); }
public Object _plus__slash_(final Element r, Element s) { return Repeat.many1(r, s); }
public Object _star__slash_(final Element r, Element s) { return Repeat.many0(r, s); }
- public Object _star__star_(final Element r) { return Repeat.maximal(Repeat.many0(r)); }
- public Object _plus__plus_(final Element r) { return Repeat.maximal(Repeat.many1(r)); }
- public Element _question_(final Element r) { return Repeat.maybe(r); }
+ public Object _star__star_(final Element r) { return Repeat.maximal(Repeat.many0(r)); }
+ public Object _plus__plus_(final Element r) { return Repeat.maximal(Repeat.many1(r)); }
+ public Element _question_(final Element r) { return Repeat.maybe(r); }
+
public MetaGrammar gram(Object o, MetaGrammar g, Object o2) { return g; }
public MetaGrammar grammar(Object[] o) { return this; }
public MetaGrammar grammar(Object o, Union[] u, Object x) { return this; }
public char _backslash_n() { return '\n'; }
public char _backslash_r() { return '\r'; }
- public Object literal(String s) { return new MyDrop(string(s)); }
+ public Element literal(String s) { Element ret = string(s); dropAll.add(ret); return ret; }
public Range _minus_(char a, char b) { return new Range(a, b); }
public Range range(char a) { return new Range(a, a); }
public Element _leftbracket_ (Range[] rr) { return ranges(true, rr); }
ret[i*2] = oi;
drops[i*2] = this.drops[i];
if (i*2+1<ret.length) {
- ret[i*2+1] = new MyDrop(e);
+ ret[i*2+1] = e;
drops[i*2+1] = true;
}
}