public class JFlexLexer extends java.lang.Object implements JavaLexer
Modifier and Type | Field and Description |
---|---|
static int |
ANNOCHAR |
static int |
ANNOSTRING |
private int |
annotatedElementLine |
static int |
ANNOTATION |
private int |
annotationDepth |
static int |
ANNOTATIONNOARG |
static int |
ANNOTATIONTYPE |
private boolean |
anonymousMode |
private boolean |
appendingToCodeBody |
static int |
ARGUMENTS |
static int |
ASSIGNMENT |
private int |
assignmentDepth |
static int |
ATANNOTATION |
private int |
braceMode |
private boolean |
bracketMode |
static int |
CHAR |
private int |
classDepth |
static int |
CODEBLOCK |
private int |
codeblockDepth |
private java.lang.StringBuffer |
codeBody |
private java.util.List<CommentHandler> |
commentHandlers |
static int |
ENUM |
private boolean |
enumConstantMode |
static int |
JAVADOC |
static int |
JAVADOCLINE |
static int |
JAVADOCTAG |
static int |
MODULE |
static int |
MULTILINECOMMENT |
static int |
NAME |
static int |
NAME_OR_MODIFIER |
private int |
nestingDepth |
private boolean |
newMode |
static int |
PARENBLOCK |
private int |
parenDepth |
private int |
parenMode |
static int |
SINGLELINECOMMENT |
private int |
stateDepth |
private int[] |
stateStack |
static int |
STRING |
static int |
TYPE |
private java.io.Writer |
writer |
private int |
yychar
the number of characters up to the start of the matched text
|
private int |
yycolumn
the number of characters from the last newline up to the start of the
matched text
|
static int |
YYEOF
This character denotes the end of file
|
static int |
YYINITIAL
lexical states
|
private int |
yyline
number of newlines encountered up to the start of the matched text
|
private static int[] |
ZZ_ACTION
Translates DFA states to action switch labels.
|
private static java.lang.String |
ZZ_ACTION_PACKED_0 |
private static int[] |
ZZ_ATTRIBUTE
ZZ_ATTRIBUTE[aState] contains the attributes of state
aState |
private static java.lang.String |
ZZ_ATTRIBUTE_PACKED_0 |
private static int |
ZZ_BUFFERSIZE
initial size of the lookahead buffer
|
private static char[] |
ZZ_CMAP
Translates characters to character classes
|
private static java.lang.String |
ZZ_CMAP_PACKED
Translates characters to character classes
|
private static java.lang.String[] |
ZZ_ERROR_MSG |
private static int[] |
ZZ_LEXSTATE
ZZ_LEXSTATE[l] is the state in the DFA for the lexical state l
ZZ_LEXSTATE[l+1] is the state in the DFA for the lexical state l
at the beginning of a line
l is of the form l = 2*k, k a non negative integer
|
private static int |
ZZ_NO_MATCH |
private static int |
ZZ_PUSHBACK_2BIG |
private static int[] |
ZZ_ROWMAP
Translates a state to a row index in the transition table
|
private static java.lang.String |
ZZ_ROWMAP_PACKED_0 |
private static int[] |
ZZ_TRANS
The transition table of the DFA
|
private static java.lang.String |
ZZ_TRANS_PACKED_0 |
private static int |
ZZ_UNKNOWN_ERROR |
private boolean |
zzAtBOL
zzAtBOL == true <=> the scanner is currently at the beginning of a line
|
private boolean |
zzAtEOF
zzAtEOF == true <=> the scanner is at the EOF
|
private char[] |
zzBuffer
this buffer contains the current text to be matched and is
the source of the yytext() string
|
private int |
zzCurrentPos
the current text position in the buffer
|
private int |
zzEndRead
endRead marks the last character in the buffer, that has been read
from input
|
private boolean |
zzEOFDone
denotes if the user-EOF-code has already been executed
|
private boolean[] |
zzFin
For the backwards DFA of general lookahead statements
|
private int |
zzFinalHighSurrogate
The number of occupied positions in zzBuffer beyond zzEndRead.
|
private int |
zzLexicalState
the current lexical state
|
private int |
zzMarkedPos
the textposition at the last accepting state
|
private java.io.Reader |
zzReader
the input device
|
private int |
zzStartRead
startRead marks the beginning of the yytext() string in the buffer
|
private int |
zzState
the current state of the DFA
|
Constructor and Description |
---|
JFlexLexer(java.io.InputStream stream,
java.io.Writer writer) |
JFlexLexer(java.io.Reader in)
Creates a new scanner
|
JFlexLexer(java.io.Reader reader,
java.io.Writer writer) |
Modifier and Type | Method and Description |
---|---|
void |
addCommentHandler(CommentHandler handler)
Register this handler as a comment-listener.
|
java.lang.String |
getCodeBody() |
int |
getColumn() |
int |
getLine() |
int |
lex() |
private void |
markAnnotatedElementLine() |
private int |
parseValue(java.lang.String value,
int defaultValue) |
private void |
popState() |
private void |
pushState(int newState) |
private void |
resetAnnotatedElementLine() |
java.lang.String |
text() |
private void |
write() |
private void |
write(java.lang.String text) |
void |
yybegin(int newState)
Enters a new lexical state
|
char |
yycharat(int pos)
Returns the character at position pos from the
matched text.
|
void |
yyclose()
Closes the input stream.
|
int |
yylength()
Returns the length of the matched text region.
|
int |
yylex()
Resumes scanning until the next regular expression is matched,
the end of input is encountered or an I/O-Error occurs.
|
void |
yypushback(int number)
Pushes the specified amount of characters back into the input stream.
|
void |
yyreset(java.io.Reader reader)
Resets the scanner to read from a new input stream.
|
int |
yystate()
Returns the current lexical state.
|
java.lang.String |
yytext()
Returns the text matched by the current regular expression.
|
private void |
zzDoEOF()
Contains user EOF-code, which will be executed exactly once,
when the end of file is reached
|
private boolean |
zzRefill()
Refills the input buffer.
|
private void |
zzScanError(int errorCode)
Reports an error that occured while scanning.
|
private static int[] |
zzUnpackAction() |
private static int |
zzUnpackAction(java.lang.String packed,
int offset,
int[] result) |
private static int[] |
zzUnpackAttribute() |
private static int |
zzUnpackAttribute(java.lang.String packed,
int offset,
int[] result) |
private static char[] |
zzUnpackCMap(java.lang.String packed)
Unpacks the compressed character translation table.
|
private static int[] |
zzUnpackRowMap() |
private static int |
zzUnpackRowMap(java.lang.String packed,
int offset,
int[] result) |
private static int[] |
zzUnpackTrans() |
private static int |
zzUnpackTrans(java.lang.String packed,
int offset,
int[] result) |
public static final int YYEOF
private static final int ZZ_BUFFERSIZE
public static final int YYINITIAL
public static final int JAVADOC
public static final int JAVADOCTAG
public static final int JAVADOCLINE
public static final int CODEBLOCK
public static final int PARENBLOCK
public static final int ASSIGNMENT
public static final int STRING
public static final int CHAR
public static final int SINGLELINECOMMENT
public static final int MULTILINECOMMENT
public static final int ANNOTATION
public static final int ANNOSTRING
public static final int ANNOCHAR
public static final int ARGUMENTS
public static final int NAME
public static final int ANNOTATIONTYPE
public static final int ENUM
public static final int MODULE
public static final int TYPE
public static final int ANNOTATIONNOARG
public static final int ATANNOTATION
public static final int NAME_OR_MODIFIER
private static final int[] ZZ_LEXSTATE
private static final java.lang.String ZZ_CMAP_PACKED
private static final char[] ZZ_CMAP
private static final int[] ZZ_ACTION
private static final java.lang.String ZZ_ACTION_PACKED_0
private static final int[] ZZ_ROWMAP
private static final java.lang.String ZZ_ROWMAP_PACKED_0
private static final int[] ZZ_TRANS
private static final java.lang.String ZZ_TRANS_PACKED_0
private static final int ZZ_UNKNOWN_ERROR
private static final int ZZ_NO_MATCH
private static final int ZZ_PUSHBACK_2BIG
private static final java.lang.String[] ZZ_ERROR_MSG
private static final int[] ZZ_ATTRIBUTE
aState
private static final java.lang.String ZZ_ATTRIBUTE_PACKED_0
private java.io.Reader zzReader
private int zzState
private int zzLexicalState
private char[] zzBuffer
private int zzMarkedPos
private int zzCurrentPos
private int zzStartRead
private int zzEndRead
private int yyline
private int yychar
private int yycolumn
private boolean zzAtBOL
private boolean zzAtEOF
private boolean zzEOFDone
private int zzFinalHighSurrogate
private boolean[] zzFin
private java.io.Writer writer
private java.util.List<CommentHandler> commentHandlers
private int classDepth
private int parenDepth
private int nestingDepth
private int annotationDepth
private int assignmentDepth
private int stateDepth
private int codeblockDepth
private int[] stateStack
private int braceMode
private int parenMode
private int annotatedElementLine
private java.lang.StringBuffer codeBody
private boolean newMode
private boolean bracketMode
private boolean anonymousMode
private boolean enumConstantMode
private boolean appendingToCodeBody
public JFlexLexer(java.io.Reader reader, java.io.Writer writer)
public JFlexLexer(java.io.InputStream stream, java.io.Writer writer)
public JFlexLexer(java.io.Reader in)
in
- the java.io.Reader to read input from.private static int[] zzUnpackAction()
private static int zzUnpackAction(java.lang.String packed, int offset, int[] result)
private static int[] zzUnpackRowMap()
private static int zzUnpackRowMap(java.lang.String packed, int offset, int[] result)
private static int[] zzUnpackTrans()
private static int zzUnpackTrans(java.lang.String packed, int offset, int[] result)
private static int[] zzUnpackAttribute()
private static int zzUnpackAttribute(java.lang.String packed, int offset, int[] result)
private void write()
private void write(java.lang.String text)
public int lex() throws java.io.IOException
private void pushState(int newState)
private void popState()
public java.lang.String getCodeBody()
getCodeBody
in interface Lexer
public void addCommentHandler(CommentHandler handler)
CommentScanner
addCommentHandler
in interface CommentScanner
handler
- the commentHandler to add to the CommentScannerprivate int parseValue(java.lang.String value, int defaultValue)
private void markAnnotatedElementLine()
private void resetAnnotatedElementLine()
private static char[] zzUnpackCMap(java.lang.String packed)
packed
- the packed character translation tableprivate boolean zzRefill() throws java.io.IOException
false
, iff there was new input.java.io.IOException
- if any I/O-Error occurspublic final void yyclose() throws java.io.IOException
java.io.IOException
public final void yyreset(java.io.Reader reader)
reader
- the new input streampublic final int yystate()
public final void yybegin(int newState)
newState
- the new lexical statepublic final java.lang.String yytext()
public final char yycharat(int pos)
pos
- the position of the character to fetch.
A value from 0 to yylength()-1.public final int yylength()
private void zzScanError(int errorCode)
errorCode
- the code of the errormessage to displaypublic void yypushback(int number)
number
- the number of characters to be read again.
This number must not be greater than yylength()!private void zzDoEOF() throws java.io.IOException
java.io.IOException
public int yylex() throws java.io.IOException
java.io.IOException
- if any I/O-Error occurs