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
CharStream
BeginToken
in interface CharStream
IOException
CharStream.BeginToken()
public final char readChar() throws IOException
CharStream
readChar
in interface CharStream
IOException
CharStream.readChar()
public final int getEndColumn()
CharStream
getEndColumn
in interface CharStream
CharStream.getEndColumn()
public final int getEndLine()
CharStream
getEndLine
in interface CharStream
CharStream.getEndLine()
public final int getBeginColumn()
CharStream
getBeginColumn
in interface CharStream
CharStream.getBeginColumn()
public final int getBeginLine()
CharStream
getBeginLine
in interface CharStream
CharStream.getBeginLine()
public final void backup(int amount)
CharStream
backup
in interface CharStream
CharStream.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()
CharStream
GetImage
in interface CharStream
CharStream.GetImage()
public final char[] GetSuffix(int len)
CharStream
Returns 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 CharStream
len
- suffix lenCharStream.GetSuffix(int)
public void Done()
CharStream
Done
in interface CharStream
CharStream.Done()
public void adjustBeginLineColumn(int newLine, int newCol)
newLine
- newCol
- Copyright © 2000–2021 The Apache Software Foundation. All rights reserved.