- public <T> Forest<T> postReduce(Token.Location loc, Forest<T>[] args) {
- if (drops==null) return Forest.create(loc, null, args, this, true, false);
+ public Sequence and(Sequence s) { Sequence ret = new Unwrap(elements, drops, needs, hates); ret.needs(s); return ret; }
+ public Sequence not(Sequence s) { Sequence ret = new Unwrap(elements, drops, needs, hates); ret.hates(s); return ret; }
+ public <T> Forest<T> postReduce(Input.Location loc, Forest<T>[] args) {
+ for(int i=0; i<args.length; i++) if (args[i]==null) throw new Error();
+ if (drops==null) return Forest.create(loc, null, args, true, false);