> > > a TS must implement one of them. I see no harm in implementing > > the two (but doing so is likely to just duplicate TokenStream's code.) > > I don't think the contract was ever laid out so strictly. I think > it's fine for any TokenStream to implement both if it's advantageous > to do so. >
>From TokenStream's Javadocs: "subclasses must override at least one of next() or next(Token)."