public class Lexer extends Object
| 限定符和类型 | 类和说明 |
|---|---|
static interface |
Lexer.CommentHandler |
static class |
Lexer.SavePoint |
| 限定符和类型 | 字段和说明 |
|---|---|
protected char[] |
buf |
protected int |
bufPos |
protected char |
ch |
protected int |
commentCount |
protected Lexer.CommentHandler |
commentHandler |
protected List<String> |
comments |
protected DbType |
dbType |
protected boolean |
endOfComment |
protected int |
features |
protected long |
hash |
protected long |
hash_lower |
protected boolean |
keepComments |
protected boolean |
keepSourceLocation |
protected Keywords |
keywords |
protected int |
line |
protected int |
lines |
protected int |
mark |
protected boolean |
numberExp |
protected int |
numberSale |
protected boolean |
optimizedForParameterized |
protected int |
pos |
protected int |
posColumn |
protected int |
posLine |
protected boolean |
skipComment |
protected int |
startPos |
protected String |
stringVal |
protected static SymbolTable |
symbols_l2 |
String |
text |
protected TimeZone |
timeZone |
protected Token |
token |
| 构造器和说明 |
|---|
Lexer(char[] input,
int inputLength,
boolean skipComment) |
Lexer(String input) |
Lexer(String input,
boolean skipComment) |
Lexer(String input,
Lexer.CommentHandler commentHandler) |
Lexer(String input,
Lexer.CommentHandler commentHandler,
DbType dbType) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
addComment(String comment) |
String |
addSymbol() |
void |
arraycopy(int srcPos,
char[] dest,
int destPos,
int length) |
int |
bp() |
char |
charAt(int index) |
void |
computeRowAndColumn() |
void |
config(SQLParserFeature feature,
boolean state) |
char |
current() |
BigDecimal |
decimalValue() |
int |
getCommentCount() |
Lexer.CommentHandler |
getCommentHandler() |
List<String> |
getComments() |
DbType |
getDbType() |
Keywords |
getKeywords() |
int |
getLine() |
int |
getPosColumn() |
int |
getPosLine() |
String |
getSource() |
TimeZone |
getTimeZone() |
boolean |
hasComment() |
long |
hash_lower() |
String |
hexString() |
boolean |
identifierEquals(long hash_lower) |
boolean |
identifierEquals(String text) |
String |
info() |
protected void |
initBuff(int size) |
Number |
integerValue() |
boolean |
isAllowComment() |
boolean |
isDigit(char ch) |
protected static boolean |
isDigit2(char ch) |
boolean |
isEnabled(SQLParserFeature feature) |
boolean |
isEndOfComment() |
boolean |
isEOF() |
boolean |
isKeepComments() |
boolean |
isNegativeIntegerValue() |
protected boolean |
isSafeComment(String comment) |
protected void |
lexError(String key,
Object... args)
Report an error at the given position using the provided arguments.
|
Lexer.SavePoint |
mark() |
void |
nextPath() |
void |
nextToken() |
void |
nextTokenAlias() |
void |
nextTokenBy() |
void |
nextTokenComma() |
void |
nextTokenCommaValue() |
void |
nextTokenEq() |
void |
nextTokenIdent() |
void |
nextTokenLParen() |
void |
nextTokenNotOrNull() |
void |
nextTokenValue() |
int |
nextVarIndex() |
SQLNumberExpr |
numberExpr() |
SQLNumberExpr |
numberExpr(boolean negate) |
SQLNumberExpr |
numberExpr(SQLObject parent) |
String |
numberString() |
static String |
parameterize(String sql,
DbType dbType) |
int |
pos()
Return the current token's position: a 0-based offset from beginning of the raw input stream (before unicode
translation)
|
protected void |
putChar(char ch)
Append a character to sbuf.
|
List<String> |
readAndResetComments() |
void |
reset() |
void |
reset(int pos) |
void |
reset(int mark,
char markChar,
Token token) |
void |
reset(Lexer.SavePoint savePoint) |
protected void |
scanAlias() |
protected void |
scanChar() |
void |
scanComment() |
void |
scanHexaDecimal() |
protected void |
scanHiveComment() |
void |
scanIdentifier() |
protected void |
scanLBracket() |
void |
scanNumber() |
void |
scanSharp() |
SQLType |
scanSQLType() |
SQLType |
scanSQLTypeV2() |
protected void |
scanString() |
protected void |
scanString2_d() |
protected void |
scanString2() |
protected void |
scanVariable_at() |
void |
scanVariable() |
void |
setAllowComment(boolean allowComment) |
void |
setCommentHandler(Lexer.CommentHandler commentHandler) |
void |
setKeepComments(boolean keepComments) |
void |
setTimeZone(TimeZone timeZone) |
void |
setToken(Token token) |
void |
skipToEOF() |
String |
stringVal()
The value of a literal token, recorded as a string.
|
char[] |
sub_chars(int offset,
int count) |
String |
subString(int offset,
int count) |
Token |
token()
Return the current token, set by nextToken().
|
protected void |
unscan() |
protected static SymbolTable symbols_l2
protected int features
protected TimeZone timeZone
public final String text
protected int pos
protected int mark
protected int numberSale
protected boolean numberExp
protected char ch
protected char[] buf
protected int bufPos
protected Token token
protected Keywords keywords
protected String stringVal
protected long hash_lower
protected long hash
protected int commentCount
protected boolean skipComment
protected Lexer.CommentHandler commentHandler
protected boolean endOfComment
protected boolean keepComments
protected int line
protected int lines
protected DbType dbType
protected boolean optimizedForParameterized
protected boolean keepSourceLocation
protected int startPos
protected int posLine
protected int posColumn
public Lexer(String input)
public Lexer(String input, Lexer.CommentHandler commentHandler)
public Lexer(String input, Lexer.CommentHandler commentHandler, DbType dbType)
public Lexer(String input, boolean skipComment)
public Lexer(char[] input,
int inputLength,
boolean skipComment)
public boolean isKeepComments()
public void setKeepComments(boolean keepComments)
public Lexer.CommentHandler getCommentHandler()
public void setCommentHandler(Lexer.CommentHandler commentHandler)
public final char charAt(int index)
public final String addSymbol()
public final String subString(int offset, int count)
public final char[] sub_chars(int offset,
int count)
protected void initBuff(int size)
public void arraycopy(int srcPos,
char[] dest,
int destPos,
int length)
public boolean isAllowComment()
public void setAllowComment(boolean allowComment)
public int nextVarIndex()
public Keywords getKeywords()
public Lexer.SavePoint mark()
public void reset(Lexer.SavePoint savePoint)
public void reset()
public void reset(int pos)
protected final void scanChar()
protected void unscan()
public boolean isEOF()
protected void lexError(String key, Object... args)
public final Token token()
public void setToken(Token token)
public final DbType getDbType()
public String info()
public final void nextTokenComma()
public final void nextTokenCommaValue()
public final void nextTokenEq()
public final void nextTokenLParen()
public final void nextTokenValue()
public final void nextTokenBy()
public final void nextTokenNotOrNull()
public final void nextTokenIdent()
public final SQLType scanSQLType()
public final SQLType scanSQLTypeV2()
public final void nextTokenAlias()
public final void nextPath()
public final void nextToken()
protected void scanLBracket()
protected void scanString()
protected final void scanString2()
protected final void scanString2_d()
protected final void scanAlias()
public void scanSharp()
public void scanVariable()
protected void scanVariable_at()
public void scanComment()
protected final void scanHiveComment()
public void scanIdentifier()
public void scanNumber()
public void scanHexaDecimal()
public String hexString()
public final boolean isDigit(char ch)
protected static final boolean isDigit2(char ch)
protected final void putChar(char ch)
public final int pos()
public final String stringVal()
public final boolean identifierEquals(String text)
public final boolean identifierEquals(long hash_lower)
public final long hash_lower()
public final boolean isNegativeIntegerValue()
public final Number integerValue()
public int bp()
public char current()
public void reset(int mark,
char markChar,
Token token)
public final String numberString()
public BigDecimal decimalValue()
public SQLNumberExpr numberExpr()
public SQLNumberExpr numberExpr(SQLObject parent)
public SQLNumberExpr numberExpr(boolean negate)
public boolean hasComment()
public int getCommentCount()
public void skipToEOF()
public boolean isEndOfComment()
protected boolean isSafeComment(String comment)
protected void addComment(String comment)
public int getLine()
public void computeRowAndColumn()
public int getPosLine()
public int getPosColumn()
public void config(SQLParserFeature feature, boolean state)
public TimeZone getTimeZone()
public void setTimeZone(TimeZone timeZone)
public final boolean isEnabled(SQLParserFeature feature)
public String getSource()
Copyright © 2013–2023. All rights reserved.