public List<Token> getHiddenTokensToLeft(int tokenIndex, int channel) {lazyInit();if ( tokenIndex<0 || tokenIndex>=tokens.size() ) {throw new IndexOutOfBoundsException(tokenIndex+" not in 0.."+(tokens.size()-1));}if (tokenIndex == 0) {return null;}int prevOnChannel =previousTokenOnChannel(tokenIndex - 1, Lexer.DEFAULT_TOKEN_CHANNEL);if ( prevOnChannel == tokenIndex - 1 ) return null;int from = prevOnChannel+1;int to = tokenIndex-1;return filterForChannel(from, to, channel);}

public virtual IList<IToken> GetHiddenTokensToLeft(int tokenIndex, int channel){LazyInit();if (tokenIndex < 0 || tokenIndex >= tokens.Count){throw new ArgumentOutOfRangeException(tokenIndex + " not in 0.." + (tokens.Count - 1));}if (tokenIndex == 0){return null;}int prevOnChannel = PreviousTokenOnChannel(tokenIndex - 1, Lexer.DefaultTokenChannel);if (prevOnChannel == tokenIndex - 1){return null;}int from = prevOnChannel + 1;int to = tokenIndex - 1;return FilterForChannel(from, to, channel);}
