CharStream Returns the next character that marks the beginning of the next token. All characters must remain in the buffer between two successive calls to this method to implement backup correctly. CharStream Backs up the input stream by amount steps. So, they will be used again as the prefix of the next token and it is the implemetation's responsibility to do this right. CharStream Returns a string made up of characters from the marked token beginning to the current buffer position.
Implementations have the choice of returning anything that they want to.
For example, for efficiency, one might decide to just return null, which is a valid implementation. CharStream Returns an array of characters that make up the suffix of length 'len' for the currently matched token. The lexer calls this function to indicate that it is done with the stream and hence implementations can free any resources held by this class. Again, the body of this function can be just empty and it will not affect the lexer's operation. CharStream Returns the column position of the character last read.