public final class VelocityCharStream extends Object implements CharStream
An implementation of interface CharStream, where the stream is assumed to contain only ASCII characters (without unicode processing).
NOTE : This class was originally an ASCII_CharStream autogenerated by Javacc. It was then modified via changing class name with appropriate fixes for CTORS, and mods to readChar().
This is safe because we *always* use Reader with this class, and never a InputStream. This guarantees that we have a correct stream of 16-bit chars - all encoding transformations have been done elsewhere, so we believe that there is no risk in doing this. Time will tell :)
| Modifier and Type | Field and Description |
|---|---|
int |
bufpos |
static boolean |
staticFlag |
| Constructor and Description |
|---|
VelocityCharStream(InputStream dstream,
int startline,
int startcolumn) |
VelocityCharStream(InputStream dstream,
int startline,
int startcolumn,
int buffersize) |
VelocityCharStream(Reader dstream,
int startline,
int startcolumn) |
VelocityCharStream(Reader dstream,
int startline,
int startcolumn,
int buffersize) |
| Modifier and Type | Method and Description |
|---|---|
void |
adjustBeginLineColumn(int newLine,
int newCol)
Method to adjust line and column numbers for the start of a token.
|
void |
backup(int amount)
Backs up the input stream by amount steps.
|
char |
BeginToken()
Returns the next character that marks the beginning of the next token.
|
void |
Done()
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.
|
int |
getBeginColumn()
Returns the column number of the first character for current token (being
matched after the last call to BeginTOken).
|
int |
getBeginLine()
Returns the line number of the first character for current token (being
matched after the last call to BeginTOken).
|
int |
getEndColumn()
Returns the column number of the last character for current token (being
matched after the last call to BeginTOken).
|
int |
getEndLine()
Returns the line number of the last character for current token (being
matched after the last call to BeginTOken).
|
String |
GetImage()
Returns a string made up of characters from the marked token beginning
to the current buffer position.
|
char[] |
GetSuffix(int len)
Returns an array of characters that make up the suffix of length 'len' for
the currently matched token.
|
char |
readChar()
Returns the next character from the selected input.
|
void |
ReInit(InputStream dstream,
int startline,
int startcolumn) |
void |
ReInit(InputStream dstream,
int startline,
int startcolumn,
int buffersize) |
void |
ReInit(Reader dstream,
int startline,
int startcolumn) |
void |
ReInit(Reader dstream,
int startline,
int startcolumn,
int buffersize) |
public static final boolean staticFlag
public int bufpos
public VelocityCharStream(Reader dstream, int startline, int startcolumn, int buffersize)
dstream - startline - startcolumn - buffersize - public VelocityCharStream(Reader dstream, int startline, int startcolumn)
dstream - startline - startcolumn - public VelocityCharStream(InputStream dstream, int startline, int startcolumn, int buffersize)
dstream - startline - startcolumn - buffersize - public VelocityCharStream(InputStream dstream, int startline, int startcolumn)
dstream - startline - startcolumn - public final char BeginToken()
throws IOException
CharStreamBeginToken in interface CharStreamIOExceptionCharStream.BeginToken()public final char readChar()
throws IOException
CharStreamreadChar in interface CharStreamIOExceptionCharStream.readChar()public final int getEndColumn()
CharStreamgetEndColumn in interface CharStreamCharStream.getEndColumn()public final int getEndLine()
CharStreamgetEndLine in interface CharStreamCharStream.getEndLine()public final int getBeginColumn()
CharStreamgetBeginColumn in interface CharStreamCharStream.getBeginColumn()public final int getBeginLine()
CharStreamgetBeginLine in interface CharStreamCharStream.getBeginLine()public final void backup(int amount)
CharStreambackup in interface CharStreamCharStream.backup(int)public void ReInit(Reader dstream, int startline, int startcolumn, int buffersize)
dstream - startline - startcolumn - buffersize - public void ReInit(Reader dstream, int startline, int startcolumn)
dstream - startline - startcolumn - public void ReInit(InputStream dstream, int startline, int startcolumn, int buffersize)
dstream - startline - startcolumn - buffersize - public void ReInit(InputStream dstream, int startline, int startcolumn)
dstream - startline - startcolumn - public final String GetImage()
CharStreamGetImage in interface CharStreamCharStream.GetImage()public final char[] GetSuffix(int len)
CharStreamReturns an array of characters that make up the suffix of length 'len' for the currently matched token. This is used to build up the matched string for use in actions in the case of MORE. A simple and inefficient implementation of this is as follows :
{
String t = GetImage();
return t.substring(t.length() - len, t.length()).toCharArray();
}
GetSuffix in interface CharStreamlen - suffix lenCharStream.GetSuffix(int)public void Done()
CharStreamDone in interface CharStreamCharStream.Done()public void adjustBeginLineColumn(int newLine,
int newCol)
newLine - newCol - Copyright © 2000–2021 The Apache Software Foundation. All rights reserved.