public CSSToken make() { CSSToken t = new CSSToken(input, state.type, state.channel, state.tokenStartCharIndex, input.index()-1, lexerClass); t.setLine(state.tokenStartLine); t.setText(state.text); t.setCharPositionInLine(state.tokenStartCharPositionInLine); t.setBase(input.getBase()); // clone lexer state t.setLexerState(new CSSLexerState(ls)); return t; } }
/** * Adds contextual information about n { esting into token. */ @Override public Token emit() { CSSToken t = new CSSToken(input, state.type, state.channel, state.tokenStartCharIndex, getCharIndex()-1); t.setLine(state.tokenStartLine); t.setText(state.text); t.setCharPositionInLine(state.tokenStartCharPositionInLine); t.setBase(((CSSInputStream) input).getBase()); // clone lexer state t.setLexerState(new LexerState(ls)); emit(t); return t; }