Class SQLLexer
java.lang.Object
com.jsql.view.swing.sql.lexer.syntax.SQLLexer
- All Implemented Interfaces:
Lexer
SQLLexer is a SQL language lexer. Created with JFlex. An example of how it is
used:
SQLLexer shredder = new SQLLexer(System.in);
SQLToken t;
while ((t = shredder.getNextToken()) != null) {
System.out.println(t);
}
- See Also:
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionResumes scanning until the next regular expression is matched, the end of input is encountered or an I/O-Error occurs.getNextToken
(boolean returnComments, boolean returnWhiteSpace) next Token method that allows you to control if whitespace and comments are returned as tokens.void
Closes the current input stream, and resets the scanner to read from a new input stream.final void
yybegin
(int newState) Enters a new lexical statefinal char
yycharat
(int pos) Returns the character at position pos from the matched text.final void
yyclose()
Closes the input stream.final int
yylength()
Returns the length of the matched text region.void
yypushback
(int number) Pushes the specified amount of characters back into the input stream.final void
Resets the scanner to read from a new input stream.final int
yystate()
Returns the current lexical state.final String
yytext()
Returns the text matched by the current regular expression.
-
Field Details
-
YYEOF
public static final int YYEOFThis character denotes the end of file- See Also:
-
YYINITIAL
public static final int YYINITIALlexical states- See Also:
-
COMMENT
public static final int COMMENT- See Also:
-
-
Constructor Details
-
SQLLexer
Creates a new scanner- Parameters:
in
- the java.io.Reader to read input from.
-
-
Method Details
-
getNextToken
next Token method that allows you to control if whitespace and comments are returned as tokens.- Throws:
IOException
-
reset
Closes the current input stream, and resets the scanner to read from a new input stream. All internal variables are reset, the old input stream cannot be reused (content of the internal buffer is discarded and lost). The lexical state is set to the initial state. Subsequent tokens read from the lexer will start with the line, char, and column values given here. -
yyclose
Closes the input stream.- Throws:
IOException
-
yyreset
Resets the scanner to read from a new input stream. Does not close the old reader. All internal variables are reset, the old input stream cannot be reused (internal buffer is discarded and lost). Lexical state is set to ZZ_INITIAL. Internal scan buffer is resized down to its initial length, if it has grown.- Parameters:
reader
- the new input stream
-
yystate
public final int yystate()Returns the current lexical state. -
yybegin
public final void yybegin(int newState) Enters a new lexical state- Parameters:
newState
- the new lexical state
-
yytext
Returns the text matched by the current regular expression. -
yycharat
public final char yycharat(int pos) Returns the character at position pos from the matched text. It is equivalent to yytext().charAt(pos), but faster- Parameters:
pos
- the position of the character to fetch. A value from 0 to yylength()-1.- Returns:
- the character at position pos
-
yylength
public final int yylength()Returns the length of the matched text region. -
yypushback
public void yypushback(int number) Pushes the specified amount of characters back into the input stream. They will be read again by then next call of the scanning method- Parameters:
number
- the number of characters to be read again. This number must not be greater than yylength()!
-
getNextToken
Resumes scanning until the next regular expression is matched, the end of input is encountered or an I/O-Error occurs.- Specified by:
getNextToken
in interfaceLexer
- Returns:
- the next token
- Throws:
IOException
- if any I/O-Error occurs
-