API 5.4-SNAPSHOT¶
Base Package: net.sf.jsqlparser
Base¶
JSQLParserException¶
extends: Exception
Model¶
implements: Serializable provides: Expression, Statement,
expression¶
AnalyticType¶
[OVER, WITHIN_GROUP, WITHIN_GROUP_OVER, FILTER_ONLY]
AnyType¶
[ANY, SOME, ALL]
DataType¶
[ARRAY, BIT, BITSTRING, BLOB, BYTEA, BINARY, VARBINARY, BYTES, BOOLEAN, BOOL, ENUM, INTERVAL, LIST, MAP, STRUCT, TINYINT, INT1, SMALLINT, INT2, SHORT, INTEGER, INT4, INT, SIGNED, BIGINT, INT8, LONG, HUGEINT, UTINYINT, USMALLINT, UINTEGER, UBIGINT, UHUGEINT, DECIMAL, NUMBER, NUMERIC, REAL, FLOAT4, FLOAT, DOUBLE, DOUBLE_PRECISION, FLOAT8, FLOAT64, UUID, VARCHAR, NVARCHAR, CHAR, NCHAR, BPCHAR, STRING, TEXT, CLOB, DATE, TIME, TIME_WITHOUT_TIME_ZONE, TIMETZ, TIME_WITH_TIME_ZONE, TIMESTAMP_NS, TIMESTAMP, TIMESTAMP_WITHOUT_TIME_ZONE, DATETIME, TIMESTAMP_MS, TIMESTAMP_S, TIMESTAMPTZ, TIMESTAMP_WITH_TIME_ZONE, UNKNOWN, VARBYTE, JSON]
DateTime¶
[DATE, DATETIME, TIME, TIMESTAMP, TIMESTAMPTZ]
NullHandling¶
[IGNORE_NULLS, RESPECT_NULLS]
JsonAggregateOnNullType¶
[NULL, ABSENT]
JsonAggregateUniqueKeysType¶
[WITH, WITHOUT]
JsonFunctionType¶
[OBJECT, ARRAY, POSTGRES_OBJECT, MYSQL_OBJECT]
OnDelete¶
[CASCADE, NO_ACTION]
Dialect¶
[BIG_QUERY, DUCKDB]
TrimSpecification¶
[LEADING, TRAILING, BOTH]
Type¶
[ROWS, RANGE]
Type¶
[PRECEDING, FOLLOWING, CURRENT, EXPR]
Alias¶
extends: Object implements: Serializable
AliasColumn¶
extends: Object implements: Serializable
AllValue¶
extends: ASTNodeAccessImpl implements: Expression
AnalyticExpression¶
extends: ASTNodeAccessImpl implements: Expression
AnyComparisonExpression¶
extends: ASTNodeAccessImpl implements: Expression
ArrayConstructor¶
extends: ASTNodeAccessImpl implements: Expression
ArrayExpression¶
extends: ASTNodeAccessImpl implements: Expression
BinaryExpression¶
extends: ASTNodeAccessImpl implements: Expression provides: Addition, AndExpression, BitwiseAnd, BitwiseLeftShift, BitwiseOr, BitwiseRightShift, BitwiseXor, Concat, Division, IntegerDivision, IsDistinctExpression, JsonOperator, LikeExpression, Modulo, Multiplication, OldOracleJoinBinaryExpression, OrExpression, Plus, PriorTo, RegExpMatchOperator, SimilarToExpression, Subtraction, XorExpression
BooleanValue¶
extends: ASTNodeAccessImpl implements: Expression
CaseExpression¶
extends: ASTNodeAccessImpl implements: Expression
`CASE WHEN condition THEN expression [WHEN condition THEN expression]... [ELSE expression] END`
`CASE expression WHEN condition THEN expression [WHEN condition THEN expression]... [ELSE expression] END`
CastExpression¶
extends: ASTNodeAccessImpl implements: Expression
CollateExpression¶
extends: ASTNodeAccessImpl implements: Expression
ConnectByPriorOperator¶
extends: ASTNodeAccessImpl implements: Expression
ConnectByRootOperator¶
extends: ASTNodeAccessImpl implements: Expression
DateTimeLiteralExpression¶
extends: ASTNodeAccessImpl implements: Expression
DateValue¶
extends: ASTNodeAccessImpl implements: Expression
DoubleValue¶
extends: ASTNodeAccessImpl implements: Expression
ExpressionVisitorAdapter¶
extends: Object implements: ExpressionVisitor, PivotVisitor, SelectItemVisitor
Expression expressionS contextreturns TExpression expressionS contextExpression> subExpressionsreturns TExpression expressionS contextExpression> subExpressionsreturns TExpression expressionS contextExpression[] subExpressionsreturns TBinaryExpression binaryExpressionS contextreturns T@Override
ExtractExpression¶
extends: ASTNodeAccessImpl implements: Expression
FilterOverImpl¶
extends: ASTNodeAccessImpl provides: JsonAggregateFunction
Function¶
extends: ASTNodeAccessImpl implements: Expression provides: TableFunction
HavingClause¶
extends: ASTNodeAccessImpl implements: Expression
HexValue¶
extends: ASTNodeAccessImpl implements: Expression
HighExpression¶
extends: ASTNodeAccessImpl implements: Expression
IntervalExpression¶
extends: ASTNodeAccessImpl implements: Expression
Inverse¶
extends: ASTNodeAccessImpl implements: Expression
JdbcNamedParameter¶
extends: ASTNodeAccessImpl implements: Expression
JdbcParameter¶
extends: ASTNodeAccessImpl implements: Expression
JsonAggregateFunction¶
extends: FilterOverImpl implements: Expression
JsonExpression¶
extends: ASTNodeAccessImpl implements: Expression
JsonFunction¶
extends: ASTNodeAccessImpl implements: Expression
JsonFunctionExpression¶
extends: Object implements: Serializable
JsonKeyValuePair¶
extends: Object implements: Serializable
KeepExpression¶
extends: ASTNodeAccessImpl implements: Expression
StringBuilder breturns voidwithName (name) → KeepExpression
LambdaExpression¶
extends: ASTNodeAccessImpl implements: Expression
LongValue¶
extends: ASTNodeAccessImpl implements: Expression
LowExpression¶
extends: ASTNodeAccessImpl implements: Expression
MySQLGroupConcat¶
extends: ASTNodeAccessImpl implements: Expression
MySQLIndexHint¶
extends: Object implements: Serializable
NextValExpression¶
extends: ASTNodeAccessImpl implements: Expression
NotExpression¶
extends: ASTNodeAccessImpl implements: Expression
NullValue¶
extends: ASTNodeAccessImpl implements: Expression
NumericBind¶
extends: ASTNodeAccessImpl implements: Expression
OracleHierarchicalExpression¶
extends: ASTNodeAccessImpl implements: Expression
OracleHint¶
extends: ASTNodeAccessImpl implements: Expression
OracleNamedFunctionParameter¶
extends: ASTNodeAccessImpl implements: Expression
OrderByClause¶
extends: Object implements: Serializable
OverlapsCondition¶
extends: ASTNodeAccessImpl implements: Expression
Parenthesis¶
extends: Expression>
PartitionByClause¶
extends: Expression> implements: Serializable
PreferringClause¶
extends: Object implements: Serializable
RangeExpression¶
extends: ASTNodeAccessImpl implements: Expression
RowConstructor¶
extends: ParenthesedExpressionList implements: Expression
RowGetExpression¶
extends: ASTNodeAccessImpl implements: Expression
SQLServerHints¶
extends: Object implements: Serializable
SignedExpression¶
extends: ASTNodeAccessImpl implements: Expression
SpannerInterleaveIn¶
extends: Object
StringValue¶
extends: ASTNodeAccessImpl implements: Expression
StructType¶
extends: ASTNodeAccessImpl implements: Expression
TimeKeyExpression¶
extends: ASTNodeAccessImpl implements: Expression
TimeValue¶
extends: ASTNodeAccessImpl implements: Expression
TimestampValue¶
extends: ASTNodeAccessImpl implements: Expression
TimezoneExpression¶
extends: ASTNodeAccessImpl implements: Expression
TranscodingFunction¶
extends: ASTNodeAccessImpl implements: Expression
TrimFunction¶
extends: ASTNodeAccessImpl implements: Expression
UserVariable¶
extends: ASTNodeAccessImpl implements: Expression
VariableAssignment¶
extends: ASTNodeAccessImpl implements: Expression
WhenClause¶
extends: ASTNodeAccessImpl implements: Expression
WindowDefinition¶
extends: Object implements: Serializable
WindowElement¶
extends: Object implements: Serializable
WindowOffset¶
extends: Object implements: Serializable
WindowRange¶
extends: Object implements: Serializable
XMLSerializeExpr¶
extends: ASTNodeAccessImpl implements: Expression
Expression¶
implements: ASTNodeAccess, Model provides: AllColumns, AllValue, AnalyticExpression, AnyComparisonExpression, ArrayConstructor, ArrayExpression, Between, BinaryExpression, BooleanValue, CaseExpression, CastExpression, CollateExpression, Column, ConnectByPriorOperator, ConnectByRootOperator, DateTimeLiteralExpression, DateValue, DoubleValue, ExcludesExpression, ExistsExpression, ExpressionList, ExtractExpression, FullTextSearch, Function, HavingClause, HexValue, HighExpression, InExpression, IncludesExpression, IntervalExpression, Inverse, IsBooleanExpression, IsNullExpression, IsUnknownExpression, JdbcNamedParameter, JdbcParameter, JsonAggregateFunction, JsonExpression, JsonFunction, KeepExpression, LambdaExpression, LongValue, LowExpression, MemberOfExpression, MultipleExpression, MySQLGroupConcat, NextValExpression, NotExpression, NullValue, NumericBind, OracleHierarchicalExpression, OracleHint, OracleNamedFunctionParameter, OverlapsCondition, RangeExpression, RowConstructor, RowGetExpression, Select, SignedExpression, StringValue, StructType, TimeKeyExpression, TimeValue, TimestampValue, TimezoneExpression, TranscodingFunction, TrimFunction, UserVariable, VariableAssignment, WhenClause, XMLSerializeExpr,
ExpressionVisitor¶
provides: ExpressionVisitorAdapter,
expression.operators.arithmetic¶
Addition¶
extends: BinaryExpression
BitwiseAnd¶
extends: BinaryExpression
BitwiseLeftShift¶
extends: BinaryExpression
BitwiseOr¶
extends: BinaryExpression
BitwiseRightShift¶
extends: BinaryExpression
BitwiseXor¶
extends: BinaryExpression
Concat¶
extends: BinaryExpression
Division¶
extends: BinaryExpression
IntegerDivision¶
extends: BinaryExpression
Modulo¶
extends: BinaryExpression
Multiplication¶
extends: BinaryExpression
Subtraction¶
extends: BinaryExpression
expression.operators.conditional¶
AndExpression¶
extends: BinaryExpression
OrExpression¶
extends: BinaryExpression
XorExpression¶
extends: BinaryExpression
expression.operators.relational¶
KeyWord¶
[LIKE, ILIKE, RLIKE, REGEXP_LIKE, REGEXP, SIMILAR_TO, MATCH_ANY, MATCH_ALL, MATCH_PHRASE, MATCH_PHRASE_PREFIX, MATCH_REGEXP]
RegExpMatchOperatorType¶
[MATCH_CASESENSITIVE, MATCH_CASEINSENSITIVE, NOT_MATCH_CASESENSITIVE, NOT_MATCH_CASEINSENSITIVE]
Between¶
extends: ASTNodeAccessImpl implements: Expression
ComparisonOperator¶
extends: OldOracleJoinBinaryExpression provides: ContainedBy, Contains, CosineSimilarity, DoubleAnd, EqualsTo, GeometryDistance, GreaterThan, GreaterThanEquals, MinorThan, MinorThanEquals, NotEqualsTo, TSQLLeftJoin, TSQLRightJoin
ContainedBy¶
extends: ComparisonOperator
Contains¶
extends: ComparisonOperator
CosineSimilarity¶
extends: ComparisonOperator
DoubleAnd¶
extends: ComparisonOperator
EqualsTo¶
extends: ComparisonOperator
ExcludesExpression¶
extends: ASTNodeAccessImpl implements: Expression
ExistsExpression¶
extends: ASTNodeAccessImpl implements: Expression
ExpressionList¶
extends: ArrayList implements: Expression, Serializable provides: NamedExpressionList, ParenthesedExpressionList
FullTextSearch¶
extends: ASTNodeAccessImpl implements: Expression
GeometryDistance¶
extends: ComparisonOperator
GreaterThan¶
extends: ComparisonOperator
GreaterThanEquals¶
extends: ComparisonOperator
InExpression¶
extends: ASTNodeAccessImpl implements: Expression, SupportsOldOracleJoinSyntax
returns String@Override
IncludesExpression¶
extends: ASTNodeAccessImpl implements: Expression
IsBooleanExpression¶
extends: ASTNodeAccessImpl implements: Expression
IsDistinctExpression¶
extends: BinaryExpression
IsNullExpression¶
extends: ASTNodeAccessImpl implements: Expression
IsUnknownExpression¶
extends: ASTNodeAccessImpl implements: Expression
JsonOperator¶
extends: BinaryExpression
LikeExpression¶
extends: BinaryExpression
Matches¶
extends: OldOracleJoinBinaryExpression
MemberOfExpression¶
extends: ASTNodeAccessImpl implements: Expression
MinorThan¶
extends: ComparisonOperator
MinorThanEquals¶
extends: ComparisonOperator
NamedExpressionList¶
extends: ExpressionList
NotEqualsTo¶
extends: ComparisonOperator
OldOracleJoinBinaryExpression¶
extends: BinaryExpression implements: SupportsOldOracleJoinSyntax provides: ComparisonOperator, Matches
ParenthesedExpressionList¶
extends: ExpressionList provides: RowConstructor
Plus¶
extends: BinaryExpression
PriorTo¶
extends: BinaryExpression
RegExpMatchOperator¶
extends: BinaryExpression
SimilarToExpression¶
extends: BinaryExpression
TSQLLeftJoin¶
extends: ComparisonOperator
TSQLRightJoin¶
extends: ComparisonOperator
SupportsOldOracleJoinSyntax¶
provides: InExpression, OldOracleJoinBinaryExpression,
parser¶
Dialect¶
[ORACLE, EXASOL]
ASTNodeAccessImpl¶
extends: Object implements: ASTNodeAccess provides: AllColumns, AllValue, AnalyticExpression, AnyComparisonExpression, ArrayConstructor, ArrayExpression, Between, BinaryExpression, BooleanValue, CaseExpression, CastExpression, CollateExpression, Column, ConnectByPriorOperator, ConnectByRootOperator, DateTimeLiteralExpression, DateValue, DoubleValue, ExcludesExpression, ExistsExpression, ExtractExpression, FilterOverImpl, ForClause, FullTextSearch, Function, HavingClause, HexValue, HighExpression, Import, InExpression, IncludesExpression, IntervalExpression, Inverse, IsBooleanExpression, IsNullExpression, IsUnknownExpression, JdbcNamedParameter, JdbcParameter, Join, JsonExpression, JsonFunction, KSQLJoinWindow, KSQLWindow, KeepExpression, LambdaExpression, Limit, LongValue, LowExpression, MemberOfExpression, MultipleExpression, MySQLGroupConcat, NextValExpression, NotExpression, NullValue, NumericBind, OracleHierarchicalExpression, OracleHint, OracleNamedFunctionParameter, OverlapsCondition, ParenthesedFromItem, PipeOperator, RangeExpression, RowGetExpression, Select, SelectItem, Sequence, SetOperation, SignedExpression, StringValue, StructType, Synonym, Table, TimeKeyExpression, TimeValue, TimestampValue, TimezoneExpression, Top, TranscodingFunction, TrimFunction, UserVariable, VariableAssignment, WhenClause, XMLSerializeExpr
AbstractJSqlParser¶
extends: Object
BaseToken¶
extends: Object provides: Token
CCJSqlParser¶
extends: CCJSqlParser> implements: CCJSqlParserTreeConstants, CCJSqlParserConstants
getASTRoot () → Node
S_IDENTIFIER
: Standard unquoted SQL identifier - S_QUOTED_IDENTIFIER
: Quoted identifier (e.g., identifier or “identifier”) - K_NAME
, K_NEXT
, K_VALUE
, K_PUBLIC
, K_STRING
: Specific keywords treated as identifiersint kindreturns String>LikeClause () → LikeClause
returns OracleHintFirst () → First
returns String>returns String>String closingQuoteString escapeCharreturns StringString openingQuoteString closingQuoteString escapeCharreturns Stringreturns String>IdentifierChain () → String
int xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanint xlareturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns booleanreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidreturns voidReInit (s)
Get and chain the next token, and return its kind. | returns int
int kindint posString locreturns voidgenerateParseException (loc) → ParseException
When and for reporting error, rescans tokens (rerun phase 3 routines), to build ad-hoc info. | returns void
int indexint xlareturns void
CCJSqlParserDefaultVisitor¶
extends: Object implements: CCJSqlParserVisitor
CCJSqlParserManager¶
extends: Object implements: JSqlParser
CCJSqlParserTokenManager¶
extends: Object implements: CCJSqlParserConstants
isToken (kind) → boolean
CCJSqlParserUtil¶
extends: Object
JJTCCJSqlParserState¶
extends: Object
Node¶
extends: Object implements: Tree
ParseException¶
extends: Exception
Generate a parse error message and returns it.<br>
- If this object has been created due to a parse error and you do not catch it
- (i.e. it gets thrown from the parser), the correct error message gets displayed.
Token currTokenint[][] expTokenSequencesString[][] expTokenSequencesLocString[] tokImageString locString lexStateNamereturns StringUsed to convert raw characters to their escaped version when these raw version
- cannot be used as part of an ASCII string literal.
String strreturns String
ParserKeywordsUtils¶
extends: Object
String tokenBlockreturns String>PMD.EmptyWhileStmt
int indexchar[] strreturns booleanbuildGrammarForRelObjectNameWithoutValue (file)
File filePattern patternString replacementreturns voidrightPadding (input, ch, length) → String
SimpleCharStream¶
extends: Object
boolean wrapAroundreturns voidreturns voidBeginToken () → char
char creturns voidreadChar () → char
returns booleanboolean tlcreturns void
StreamProvider¶
extends: Object implements: Provider
StringProvider¶
extends: Object implements: Provider
Token¶
extends: BaseToken
case MyParserConstants.ID: return new IDToken(ofKind, image);
to the following switch statement. Then you can cast matchedToken variable to the appropriate type and use sit in your lexical actions.TokenMgrError¶
extends: Error
Replaces unprintable characters by their escaped (or unicode escaped)
- equivalents in the given string.
String strreturns StringReturns a detailed message for the Error when it is thrown by the token manager
to indicate a lexical error.<br>
Note: You can customize the lexical error message by modifying this method.
boolean eofSeenint lexStateint errorLineint errorColumnString errorAfterint curCharreturns String@Override
ASTNodeAccess¶
implements: Serializable provides: ASTNodeAccessImpl, Expression, FromItem,
CCJSqlParserConstants¶
provides: CCJSqlParser, CCJSqlParserTokenManager,
CCJSqlParserTreeConstants¶
provides: CCJSqlParser,
CCJSqlParserVisitor¶
provides: CCJSqlParserDefaultVisitor,
JSqlParser¶
provides: CCJSqlParserManager,
Provider¶
provides: StreamProvider, StringProvider,
StatementListener¶
provides:
Tree¶
provides: Node,
parser.feature¶
Feature¶
[select, selectGroupBy, selectGroupByGroupingSets, selectHaving, selectInto, limit, limitNull, limitAll, limitOffset, offset, offsetParam, fetch, fetchFirst, fetchNext, join, joinOuterSimple, joinSimple, joinRight, joinNatural, joinFull, joinLeft, joinCross, joinOuter, joinSemi, joinInner, joinStraight, joinApply, joinWindow, joinUsingColumns, skip, first, top, optimizeFor, selectUnique, distinct, distinctOn, orderBy, orderByNullOrdering, selectForUpdate, selectForShare, selectForKeyShare, selectForNoKeyUpdate, selectForUpdateOfTable, selectForUpdateWait, selectForUpdateNoWait, selectForUpdateSkipLocked, insert, insertFromSelect, insertModifierPriority, insertModifierIgnore, insertUseSet, insertUseDuplicateKeyUpdate, insertReturningAll, insertReturningExpressionList, insertValues, values, tableStatement, update, updateFrom, updateJoins, updateUseSelect, updateOrderBy, updateLimit, updateReturning, delete, deleteJoin, deleteTables, deleteLimit, deleteOrderBy, deleteReturningExpressionList, upsert, merge, alterTable, alterSequence, alterView, refreshMaterializedView, refreshMaterializedWithDataView, refreshMaterializedWithNoDataView, alterViewReplace, alterIndex, analyze, truncate, execute, executeExec, executeCall, executeExecute, executeStatement, executeStatementImmediate, executeUsing, replace, drop, dropTable, dropIndex, dropView, dropSchema, dropSequence, dropTableIfExists, dropIndexIfExists, dropViewIfExists, dropSchemaIfExists, dropSequenceIfExists, createSchema, createView, createViewForce, createViewTemporary, createOrReplaceView, createViewMaterialized, createViewWithComment, createTable, createTableUnlogged, createTableCreateOptionStrings, createTableTableOptionStrings, createTableIfNotExists, createTableRowMovement, createTableFromSelect, createIndex, createSequence, createSynonym, createTrigger, commit, comment, commentOnTable, commentOnColumn, commentOnView, describe, desc, explain, show, showTables, showColumns, showIndex, use, grant, function, createFunction, createProcedure, functionalStatement, block, declare, set, reset, pivot, unpivot, pivotXml, setOperation, setOperationUnion, setOperationIntersect, setOperationExcept, setOperationMinus, withItem, withItemRecursive, lateralSubSelect, valuesList, tableFunction, jdbcParameter, jdbcNamedParameter, exprLike, exprSimilarTo, kSqlWindow, oracleOldJoinSyntax, oraclePriorPosition, oracleHint, oracleHierarchicalExpression, oracleOrderBySiblings, mySqlHintStraightJoin, mysqlSqlCacheFlag, mysqlCalcFoundRows, selectForXmlPath, allowSquareBracketQuotation, allowPostgresSpecificSyntax, allowComplexParsing, allowUnsupportedStatements, timeOut, allowBackslashEscapeCharacter, allowUnparenthesizedSubSelects, allowedNestingDepth, dialect, imprt, export]
FeatureConfiguration¶
extends: Object
FeatureSet¶
provides: FeatureSetValidation, ModifyableFeatureSet,
ModifyableFeatureSet¶
implements: FeatureSet provides: FeaturesAllowed,
schema¶
ParameterType¶
[INCREMENT_BY, START_WITH, RESTART_WITH, MAXVALUE, NOMAXVALUE, MINVALUE, NOMINVALUE, CYCLE, NOCYCLE, CACHE, NOCACHE, ORDER, NOORDER, KEEP, NOKEEP, SESSION, GLOBAL]
Column¶
extends: ASTNodeAccessImpl implements: Expression, MultiPartName
Database¶
extends: Object implements: MultiPartName
Partition¶
extends: Object
StringBuilder builderint jreturns voidPMD.CyclomaticComplexity PMD.NPath
Sequence¶
extends: ASTNodeAccessImpl implements: MultiPartName
int idxString valuereturns voidint idxreturns String@Override
Parameter¶
extends: Object
String prefixreturns StringwithValue (value) → Parameter
Server¶
extends: Object implements: MultiPartName
Synonym¶
extends: ASTNodeAccessImpl implements: MultiPartName
int idxString valuereturns voidint idxreturns String@Override
Table¶
extends: ASTNodeAccessImpl implements: ErrorDestination, FromItem, MultiPartName, Cloneable
int idxString valuereturns voidint idxreturns String@Override
MultiPartName¶
provides: Column, Database, Sequence, Server, Synonym, Table,
statement¶
DeclareType¶
[TABLE, AS, TYPE]
OptionType¶
[ANALYZE, VERBOSE, COSTS, BUFFERS, FORMAT, PLAN, PLAN_FOR]
PurgeObjectType¶
[TABLE, INDEX, RECYCLEBIN, DBA_RECYCLEBIN, TABLESPACE]
Action¶
[CASCADE, RESTRICT, NO_ACTION, SET_DEFAULT, SET_NULL]
Type¶
[DELETE, UPDATE]
Keyword¶
[RETURN, RETURNING]
Action¶
[START, APPLY, DROP, SHOW, DESCRIBE]
Block¶
extends: Object implements: Statement
CSVColumn¶
extends: Object
CSVFileDestination¶
extends: Object implements: ErrorDestination
CertificateVerification¶
extends: Object implements: Serializable
CloudConnectionDefinition¶
extends: ConnectionDefinition
Commit¶
extends: Object implements: Statement
ConnectionDefinition¶
extends: Object implements: Serializable provides: CloudConnectionDefinition
StringBuilder sqlreturns StringBuilder@Override
ConnectionFileDefinition¶
extends: Object
CreateFunctionalStatement¶
extends: Object implements: Statement provides: CreateFunction, CreateProcedure
String kindString kindString> functionDeclarationPartsboolean orReplaceString kindString> functionDeclarationPartsgetFunctionDeclarationParts () → String>
DBMSType¶
extends: Object implements: SourceDestinationType
DeclareStatement¶
extends: Object implements: Statement
TypeDefExpr¶
extends: Object implements: Serializable
DescribeStatement¶
extends: Object implements: Statement
ErrorClause¶
extends: Object implements: Serializable
ExplainStatement¶
extends: Object implements: Statement
Option¶
extends: Object implements: Serializable
FBVColumn¶
extends: Object
String keyExpression valueFBVColumn (key, value)
Expression valuereturns voidsetValue (value)
FileOption¶
extends: Object
String keyExpression valueFileOption (key, value)
FileSourceDestination¶
extends: Object implements: Serializable provides: FileDestination, FileSource
getConnectionFileDefinitions () → ConnectionFileDefinition>
FileType¶
extends: Object implements: SourceDestinationType
IfElseStatement¶
extends: Object implements: Statement
LikeClause¶
extends: Object implements: ImportColumn, Serializable
OutputClause¶
extends: Object implements: Serializable
PurgeStatement¶
extends: Object implements: Statement
ReferentialAction¶
extends: Object implements: Serializable
RejectClause¶
extends: Object implements: Serializable
ResetStatement¶
extends: Object implements: Statement
ReturningClause¶
extends: SelectItem
a href="https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/DELETE.html#GUID-156845A5-B626-412B-9F95-8869B988ABD7"
Part of UPDATE, INSERT, DELETE statementsRollbackStatement¶
extends: Object implements: Statement
SavepointStatement¶
extends: Object implements: Statement
ScriptSourceDestination¶
extends: Object implements: ImportFromItem, ExportIntoItem, Serializable
SessionStatement¶
extends: Object implements: Statement
SetStatement¶
extends: Object implements: Statement
NameExpr nereturns String@Override
ShowColumnsStatement¶
extends: Object implements: Statement
ShowStatement¶
extends: Object implements: Statement
StatementVisitorAdapter¶
extends: Object implements: StatementVisitor
WithItem withItemsListS contextreturns void@Override
@Override
Statements¶
extends: Statement> implements: Serializable
UnsupportedStatement¶
extends: Object implements: Statement
UseStatement¶
extends: Object implements: Statement
UserIdentification¶
extends: Object implements: Serializable
ErrorDestination¶
provides: CSVFileDestination, Table,
ParenthesedStatement¶
implements: Statement provides: ParenthesedDelete, ParenthesedInsert, ParenthesedSelect, ParenthesedUpdate,
SourceDestinationType¶
Statement¶
implements: Model provides: Alter, AlterSequence, AlterSession, AlterSystemStatement, AlterView, Analyze, Block, Comment, Commit, CreateFunctionalStatement, CreateIndex, CreateSchema, CreateSequence, CreateSynonym, CreateTable, CreateView, DeclareStatement, Delete, DescribeStatement, Drop, Execute, ExplainStatement, Export, Grant, IfElseStatement, Import, Insert, Merge, ParenthesedStatement, PurgeStatement, RefreshMaterializedViewStatement, RenameTableStatement, ResetStatement, RollbackStatement, SavepointStatement, Select, SessionStatement, SetStatement, ShowColumnsStatement, ShowIndexStatement, ShowStatement, ShowTablesStatement, Truncate, UnsupportedStatement, Update, Upsert, UseStatement,
StatementVisitor¶
provides: StatementVisitorAdapter,
statement.alter¶
ConvertType¶
[CONVERT_TO, DEFAULT_CHARACTER_SET, CHARACTER_SET]
AlterOperation¶
[ADD, ALTER, DROP, DROP_PRIMARY_KEY, DROP_UNIQUE, DROP_FOREIGN_KEY, MODIFY, CHANGE, CONVERT, COLLATE, ALGORITHM, RENAME, RENAME_TABLE, RENAME_INDEX, RENAME_KEY, RENAME_CONSTRAINT, COMMENT, COMMENT_WITH_EQUAL_SIGN, UNSPECIFIC, ADD_PARTITION, DROP_PARTITION, DISCARD_PARTITION, IMPORT_PARTITION, TRUNCATE_PARTITION, COALESCE_PARTITION, REORGANIZE_PARTITION, EXCHANGE_PARTITION, ANALYZE_PARTITION, CHECK_PARTITION, OPTIMIZE_PARTITION, REBUILD_PARTITION, REPAIR_PARTITION, REMOVE_PARTITIONING, PARTITION_BY, SET_TABLE_OPTION, ENGINE, FORCE, KEY_BLOCK_SIZE, LOCK, DISCARD_TABLESPACE, IMPORT_TABLESPACE, DISABLE_KEYS, ENABLE_KEYS]
AlterSessionOperation¶
[ADVISE_COMMIT, ADVISE_ROLLBACK, ADVISE_NOTHING, CLOSE_DATABASE_LINK, ENABLE_COMMIT_IN_PROCEDURE, DISABLE_COMMIT_IN_PROCEDURE, ENABLE_GUARD, DISABLE_GUARD, ENABLE_PARALLEL_DML, DISABLE_PARALLEL_DML, FORCE_PARALLEL_DML, ENABLE_PARALLEL_DDL, DISABLE_PARALLEL_DDL, FORCE_PARALLEL_DDL, ENABLE_PARALLEL_QUERY, DISABLE_PARALLEL_QUERY, FORCE_PARALLEL_QUERY, ENABLE_RESUMABLE, DISABLE_RESUMABLE, SET]
AlterSystemOperation¶
[ARCHIVE_LOG, CHECKPOINT, CHECK_DATAFILES, DUMP_ACTIVE_SESSION_HISTORY, ENABLE_DISTRIBUTED_RECOVERY, DISABLE_DISTRIBUTED_RECOVERY, ENABLE_RESTRICTED_SESSION, DISABLE_RESTRICTED_SESSION, FLUSH, DISCONNECT_SESSION, KILL_SESSION, SWITCH, SUSPEND, RESUME, QUIESCE, UNQUIESCE, SHUTDOWN, REGISTER, SET, RESET]
Alter¶
extends: Object implements: Statement
AlterExpression¶
extends: Object implements: Serializable
Type typeAction actionboolean setreturns void@Deprecated
ColumnDataType¶
extends: ColumnDefinition
ColumnDropDefault¶
extends: Object implements: Serializable
ColumnDropNotNull¶
extends: Object implements: Serializable
ColumnSetDefault¶
extends: Object implements: Serializable
ColumnSetVisibility¶
extends: Object implements: Serializable
AlterSession¶
extends: Object implements: Statement
StringBuilder builderString> parametersreturns voidgetOperation () → AlterSessionOperation
AlterSystemStatement¶
extends: Object implements: Statement
StringBuilder builderString> parametersreturns voidgetOperation () → AlterSystemOperation
DeferrableConstraint¶
extends: Object implements: ConstraintState
EnableConstraint¶
extends: Object implements: ConstraintState
RenameTableStatement¶
extends: Object implements: Statement
ValidateConstraint¶
extends: Object implements: ConstraintState
ConstraintState¶
provides: DeferrableConstraint, EnableConstraint, ValidateConstraint,
statement.alter.sequence¶
AlterSequence¶
extends: Object implements: Statement
statement.analyze¶
Analyze¶
extends: Object implements: Statement
statement.comment¶
Comment¶
extends: Object implements: Statement
statement.create.function¶
CreateFunction¶
extends: CreateFunctionalStatement
statement.create.index¶
CreateIndex¶
extends: Object implements: Statement
statement.create.procedure¶
CreateProcedure¶
extends: CreateFunctionalStatement
statement.create.schema¶
CreateSchema¶
extends: Object implements: Statement
statement.create.sequence¶
CreateSequence¶
extends: Object implements: Statement
statement.create.synonym¶
CreateSynonym¶
extends: Object implements: Statement
statement.create.table¶
RowMovementMode¶
[ENABLE, DISABLE]
CheckConstraint¶
extends: NamedConstraint
ColDataType¶
extends: Object implements: Serializable
ColumnDefinition¶
extends: Object implements: ImportColumn, Serializable provides: ColumnDataType
CreateTable¶
extends: Object implements: Statement
ExcludeConstraint¶
extends: Index
ForeignKeyIndex¶
extends: NamedConstraint
Type typeAction actionboolean setreturns void@Deprecated
Index¶
extends: Object implements: Serializable provides: ExcludeConstraint, NamedConstraint
ColumnParams¶
extends: Object implements: Serializable
NamedConstraint¶
extends: Index provides: CheckConstraint, ForeignKeyIndex
PartitionDefinition¶
extends: Object implements: Serializable
RowMovement¶
extends: Object implements: Serializable
statement.create.view¶
AutoRefreshOption¶
[NONE, YES, NO]
ForceOption¶
[NONE, FORCE, NO_FORCE]
TemporaryOption¶
[NONE, TEMP, TEMPORARY, VOLATILE]
AlterView¶
extends: Object implements: Statement
CreateView¶
extends: Object implements: Statement
StringBuilder sqlreturns voidwithView (view) → CreateView
statement.delete¶
DeleteModifierPriority¶
[LOW_PRIORITY]
Delete¶
extends: Object implements: Statement provides: ParenthesedDelete
ParenthesedDelete¶
extends: Delete implements: ParenthesedStatement
statement.drop¶
Drop¶
extends: Object implements: Statement
statement.execute¶
ExecType¶
[EXECUTE, EXEC, CALL]
Execute¶
extends: Object implements: Statement
statement.export¶
DBMSDestination¶
extends: Object implements: ExportIntoItem, Serializable
DBMSTableDestinationOption¶
extends: Object implements: Serializable
String keyExpression valueDBMSTableDestinationOption (key)
Export¶
extends: Object implements: Statement
FileDestination¶
extends: FileSourceDestination implements: ExportIntoItem, Serializable
ExportIntoItem¶
provides: DBMSDestination, FileDestination, ScriptSourceDestination,
statement.grant¶
Grant¶
extends: Object implements: Statement
statement.imprt¶
DBMSSource¶
extends: Object implements: ImportFromItem, Serializable
FileSource¶
extends: FileSourceDestination implements: ImportFromItem, Serializable
Import¶
extends: ASTNodeAccessImpl implements: FromItem, Statement
ImportColumn¶
provides: ColumnDefinition, LikeClause,
ImportFromItem¶
provides: DBMSSource, FileSource, ScriptSourceDestination,
statement.insert¶
ConflictActionType¶
[DO_NOTHING, DO_UPDATE]
InsertModifierPriority¶
[LOW_PRIORITY, DELAYED, HIGH_PRIORITY, IGNORE]
Insert¶
extends: Object implements: Statement provides: ParenthesedInsert
InsertConflictAction¶
extends: Object implements: Serializable
InsertConflictTarget¶
extends: Object implements: Serializable
ParenthesedInsert¶
extends: Insert implements: ParenthesedStatement
statement.merge¶
Merge¶
extends: Object implements: Statement
returns voidreturns voidgetWithItemsList () → WithItem
MergeDelete¶
extends: Object implements: Serializable, MergeOperation
MergeInsert¶
extends: Object implements: Serializable, MergeOperation
MergeOperationVisitorAdapter¶
extends: Object implements: MergeOperationVisitor
MergeUpdate¶
extends: Object implements: Serializable, MergeOperation
MergeOperation¶
provides: MergeDelete, MergeInsert, MergeUpdate,
MergeOperationVisitor¶
provides: MergeOperationVisitorAdapter,
statement.piped¶
AggregatePipeOperator¶
extends: PipeOperator
AsPipeOperator¶
extends: PipeOperator
CallPipeOperator¶
extends: PipeOperator
DropPipeOperator¶
extends: PipeOperator
ExtendPipeOperator¶
extends: SelectPipeOperator
FromQuery¶
extends: Select
JoinPipeOperator¶
extends: PipeOperator
LimitPipeOperator¶
extends: PipeOperator
OrderByPipeOperator¶
extends: PipeOperator
PipeOperator¶
extends: ASTNodeAccessImpl provides: AggregatePipeOperator, AsPipeOperator, CallPipeOperator, DropPipeOperator, JoinPipeOperator, LimitPipeOperator, OrderByPipeOperator, PivotPipeOperator, SelectPipeOperator, SetOperationPipeOperator, SetPipeOperator, TableSamplePipeOperator, UnPivotPipeOperator, WherePipeOperator
PivotPipeOperator¶
extends: PipeOperator
RenamePipeOperator¶
extends: SelectPipeOperator
SelectPipeOperator¶
extends: PipeOperator provides: ExtendPipeOperator, RenamePipeOperator, WindowPipeOperator
SetOperationPipeOperator¶
extends: PipeOperator
SetPipeOperator¶
extends: PipeOperator
TableSamplePipeOperator¶
extends: PipeOperator
UnPivotPipeOperator¶
extends: PipeOperator
WherePipeOperator¶
extends: PipeOperator
WindowPipeOperator¶
extends: SelectPipeOperator
FromQueryVisitor¶
provides:
PipeOperatorVisitor¶
provides:
statement.refresh¶
RefreshMode¶
[DEFAULT, WITH_DATA, WITH_NO_DATA]
RefreshMaterializedViewStatement¶
extends: Object implements: Statement
statement.select¶
Keyword¶
[FIRST, LIMIT]
ForOption¶
[BROWSE, XML, JSON]
ForMode¶
[UPDATE, SHARE, NO_KEY_UPDATE, KEY_SHARE]
TimeUnit¶
[DAY, HOUR, MINUTE, SECOND, MILLISECOND, DAYS, HOURS, MINUTES, SECONDS, MILLISECONDS]
WindowType¶
[HOPPING, SESSION, TUMBLING]
MySqlSqlCacheFlags¶
[SQL_CACHE, SQL_NO_CACHE]
NullOrdering¶
[NULLS_FIRST, NULLS_LAST]
BigQuerySelectQualifier¶
[AS_STRUCT, AS_VALUE]
SampleKeyword¶
[SAMPLE, TABLESAMPLE, USING_SAMPLE]
SampleMethod¶
[BERNOULLI, SYSTEM, BLOCK]
SetOperationType¶
[INTERSECT, EXCEPT, MINUS, UNION]
AllColumns¶
extends: ASTNodeAccessImpl implements: Expression provides: AllTableColumns, FunctionAllColumns
AllTableColumns¶
extends: AllColumns
Distinct¶
extends: Object implements: Serializable
ExceptOp¶
extends: SetOperation
Fetch¶
extends: Object implements: Serializable
First¶
extends: Object implements: Serializable
ForClause¶
extends: ASTNodeAccessImpl
FromItemVisitorAdapter¶
extends: Object implements: FromItemVisitor
FunctionAllColumns¶
extends: AllColumns
GroupByElement¶
extends: Object implements: Serializable
IntersectOp¶
extends: SetOperation
IntoTableVisitorAdapter¶
extends: Object implements: IntoTableVisitor
Join¶
extends: ASTNodeAccessImpl
JoinHint¶
extends: Object
KSQLJoinWindow¶
extends: ASTNodeAccessImpl
KSQLWindow¶
extends: ASTNodeAccessImpl
LateralSubSelect¶
extends: ParenthesedSelect
LateralView¶
extends: Object implements: Serializable
Limit¶
extends: ASTNodeAccessImpl
MinusOp¶
extends: SetOperation
Offset¶
extends: Object implements: Serializable
OptimizeFor¶
extends: Object implements: Serializable
OrderByElement¶
extends: Object implements: Serializable
OrderByVisitorAdapter¶
extends: Object implements: OrderByVisitor
ParenthesedFromItem¶
extends: ASTNodeAccessImpl implements: FromItem
ParenthesedSelect¶
extends: Select implements: FromItem, ParenthesedStatement provides: LateralSubSelect
Pivot¶
extends: Object implements: Serializable provides: PivotXml
PivotVisitorAdapter¶
extends: Object implements: PivotVisitor
PivotXml¶
extends: Pivot
PlainSelect¶
extends: Select
SampleClause¶
extends: Object
Select¶
extends: ASTNodeAccessImpl implements: Statement, Expression, FromItem provides: FromQuery, ParenthesedSelect, PlainSelect, SetOperationList, TableStatement, Values
SelectItem¶
extends: ASTNodeAccessImpl
SelectItemVisitorAdapter¶
extends: Object implements: SelectItemVisitor
SelectVisitorAdapter¶
extends: Object implements: SelectVisitor
SetOperation¶
extends: ASTNodeAccessImpl provides: ExceptOp, IntersectOp, MinusOp, UnionOp
SetOperationList¶
extends: Select
Skip¶
extends: Object implements: Serializable
TableFunction¶
extends: Function implements: FromItem
TableStatement¶
extends: Select
Top¶
extends: ASTNodeAccessImpl implements: Serializable
UnPivot¶
extends: Object implements: Serializable
UnionOp¶
extends: SetOperation
Values¶
extends: Select implements: FromItem
Wait¶
extends: Object implements: Serializable
" WAIT <TIMEOUT>"
WithIsolation¶
extends: Object implements: Serializable
WithItem¶
extends: Object implements: Serializable
FromItem¶
implements: ASTNodeAccess provides: Import, ParenthesedFromItem, ParenthesedSelect, Select, Table, TableFunction, Values,
FromItemVisitor¶
provides: FromItemVisitorAdapter,
GroupByVisitor¶
provides:
IntoTableVisitor¶
provides: IntoTableVisitorAdapter,
OrderByVisitor¶
provides: OrderByVisitorAdapter,
PivotVisitor¶
provides: ExpressionVisitorAdapter, PivotVisitorAdapter,
SelectItemVisitor¶
provides: AddAliasesVisitor, ConnectExpressionsVisitor, ExpressionVisitorAdapter, SelectItemVisitorAdapter,
SelectVisitor¶
provides: AddAliasesVisitor, ConnectExpressionsVisitor, SelectVisitorAdapter,
statement.show¶
Modifiers¶
[EXTENDED, FULL]
SelectionMode¶
[FROM, IN]
ShowIndexStatement¶
extends: Object implements: Statement
ShowTablesStatement¶
extends: Object implements: Statement
statement.truncate¶
Truncate¶
extends: Object implements: Statement
statement.update¶
UpdateModifierPriority¶
[LOW_PRIORITY]
ParenthesedUpdate¶
extends: Update implements: ParenthesedStatement
Update¶
extends: Object implements: Statement provides: ParenthesedUpdate
UpdateSet¶
extends: Object implements: Serializable
StringBuilder builderint jreturns StringBuilderPMD.CyclomaticComplexity PMD.NPath
@Override
statement.upsert¶
UpsertType¶
[UPSERT, REPLACE, REPLACE_SET, INSERT_OR_ABORT, INSERT_OR_FAIL, INSERT_OR_IGNORE, INSERT_OR_REPLACE, INSERT_OR_ROLLBACK]
Upsert¶
extends: Object implements: Statement
util¶
AddAliasesVisitor¶
extends: Object implements: SelectVisitor, SelectItemVisitor
returns StringsetPrefix (prefix)
ConnectExpressionsVisitor¶
extends: Object implements: SelectVisitor, SelectItemVisitor
returns BinaryExpression@Override
PerformanceTest¶
extends: Object
SelectUtils¶
extends: Object
TablesNamesFinder¶
extends: Object implements: SelectVisitor, FromItemVisitor, ExpressionVisitor, SelectItemVisitor, StatementVisitor
T typereturns void@Deprecated
@Override
Initializes table names collector. Important is the usage of Column instances to find table
names. This is only allowed for expression parsing, where a better place for tablenames could not be there. For complete statements only from items are used to avoid some alias as tablenames.
boolean allowColumnProcessingreturns void@Override
visit join block
Join> joinsS contextreturns void@Override
util.cnfexpression¶
CNFConverter¶
extends: Object
this method takes an expression tree and converts that into a CNF form. Notice the 5 steps
shown above will turn into 5 different methods. For the sake of testing, I set them public. return the converted expression.
Expression expressreturns Expressionthis is the first step that rebuild the expression tree. Use the standard specified in the
above class. Traverse the original tree recursively and rebuild the tree from that.
Expression expressreturns voidThis method is used to deal with pushing not operators down. Since it needs an extra
- parameter, I will create a new method to handle this.
returns voidThis method is the helper function to push not operators down. traverse the tree thoroughly,
when we meet the not operator. We only need to consider these three operators: MultiAndOperator, MultiOrOperator, NotOperator. Handle them in a seperate way. when we finish the traverse, the expression tree will have all the not operators pushed as downwards as they could. In the method, I use two global variables: temp1 and temp2 to traverse the expression tree. Notice that temp2 will always be the parent of temp1.
int indexreturns voidThis function mainly deals with pushing not operators down. check the child. If it is not a
logic operator(and or or). stop at that point. Else use De Morgan law to push not downwards.
int indexreturns voidThis method serves as dealing with the third step. It is used to put all the adjacent same
multi operators together. BFS the tree and do it node by node. In the end we will get the tree where all the same multi operators store in the same odd level of the tree or in the same even level of the tree.
returns voidPMD.CyclomaticComplexity
First, BFS the tree and gather all the or operators and their parents into a stack. Next, pop
them out and push the and operators under the or operators upwards(if there are). Do this level by level, which means during each level we will call the gather() method to make the tree uniform. When we move out of the stack. The expression tree shall be in CNF form.
returns voidThis helper function is used to deal with pushing and up: generally, pop the top element out
of the stack, use BFS to traverse the tree and push and up. It will case the expression tree to have the and as the new root and multiple or as the children. Push them on the queue and repeat the same process until the newly generated or operator does not have any and operators in it(which means no elements will be added into the queue). when one level is finished, regroup the tree. Do this until the stack is empty, the result will be the expression in CNF form.
Mule> stackreturns voidPMD.CyclomaticComplexity
This is the final step of the CNF conversion: now we have the Expression tree that has one
multiple and expression with a list of multiple or expression as the child. So we need to convert the multiple expression back to the binary counterparts. Note the converted tree is left inclined. Also I attach a parenthesis node before the or expression that is attached to the and expression to make the generated result resembles the CNF form.
returns void
MultiAndExpression¶
extends: MultipleExpression
MultiOrExpression¶
extends: MultipleExpression
MultipleExpression¶
extends: ASTNodeAccessImpl implements: Expression provides: MultiAndExpression, MultiOrExpression
util.deparser¶
AlterDeParser¶
extends: Alter>
AlterSequenceDeParser¶
extends: AlterSequence>
AlterSessionDeParser¶
extends: AlterSession>
AlterViewDeParser¶
extends: AlterView>
CreateIndexDeParser¶
extends: CreateIndex>
CreateSequenceDeParser¶
extends: CreateSequence>
CreateSynonymDeparser¶
extends: CreateSynonym>
CreateSynonym createSynonymreturns void
CreateTableDeParser¶
extends: CreateTable>
CreateViewDeParser¶
extends: CreateView>
DeclareStatementDeParser¶
extends: DeclareStatement>
DeleteDeParser¶
extends: Delete>
Delete deletereturns voidgetExpressionVisitor () → StringBuilder>
DropDeParser¶
extends: Drop>
ExecuteDeParser¶
extends: Execute>
ExpressionDeParser¶
extends: Expression> implements: StringBuilder>
@Override
@Override
Expression statementreturns void@Override
ExpressionListDeParser¶
extends: ExpressionList
GrantDeParser¶
extends: Grant>
GroupByDeParser¶
extends: GroupByElement>
InsertDeParser¶
extends: Insert>
LimitDeparser¶
extends: Limit>
MergeDeParser¶
extends: Merge> implements: StringBuilder>
OrderByDeParser¶
extends: OrderByElement>>
StringBuilder> expressionVisitorreturns void
RefreshMaterializedViewStatementDeParser¶
extends: RefreshMaterializedViewStatement>
ResetStatementDeParser¶
extends: ResetStatement>
SelectDeParser¶
extends: PlainSelect> implements: StringBuilder>, StringBuilder>, StringBuilder>, StringBuilder>, Void>
PlainSelect plainSelectreturns voidDistinct distinctreturns voidSelectItem selectItemsreturns voidPlainSelect plainSelectOrderByElement> orderByElementsreturns void@Override
@Override
SetStatementDeParser¶
extends: SetStatement>
ShowColumnsStatementDeParser¶
extends: ShowColumnsStatement>
ShowIndexStatementDeParser¶
extends: ShowIndexStatement>
ShowStatementDeParser¶
extends: ShowStatement>
ShowTablesStatementDeparser¶
extends: ShowTablesStatement>
ShowTablesStatement statementreturns void
StatementDeParser¶
extends: Statement> implements: StringBuilder>
WithItem withItemsListS contextreturns StringBuilder@Override
Statement statementreturns void@Override
TableStatementDeParser¶
extends: TableStatement> implements: StringBuilder>
UpdateDeParser¶
extends: Update> implements: StringBuilder>
UpsertDeParser¶
extends: Upsert>
UseStatementDeParser¶
extends: UseStatement>
ValuesStatementDeParser¶
extends: Values>
util.validation¶
ParseException¶
extends: ValidationException
UnexpectedValidationException¶
extends: ValidationException
Validation¶
extends: Object
ValidationContext¶
extends: Object
ValidationError¶
extends: Object
ValidationException¶
extends: RuntimeException provides: DatabaseException, ParseException, UnexpectedValidationException
ValidationUtil¶
extends: Object
ContextKey¶
provides: AllowedTypesContext, FeatureContext, MetadataContext,
ValidationCapability¶
provides: AllowedTypesValidation, DatabaseMetaDataValidation, FeatureSetValidation,
Validator¶
provides: AbstractValidator,
util.validation.allowedtypes¶
AllowedTypesContext¶
[allowed_types, argument, allow_null]
AllowedTypesValidation¶
extends: Object implements: ValidationCapability
util.validation.feature¶
DatabaseType¶
[ANSI_SQL, ORACLE, MYSQL, SQLSERVER, MARIADB, POSTGRESQL, H2]
FeatureContext¶
[feature]
H2Version¶
[V_1_4_200]
MariaDbVersion¶
[V10_5_4, ORACLE_MODE]
MySqlVersion¶
[V8_0]
OracleVersion¶
[V19C]
PostgresqlVersion¶
[V10, V11, V12, V13, V14]
SQLVersion¶
[SQL1986, SQL1989, SQL1992, SQL1999, SQL2003, SQL2006, SQL2008, SQL2011, SQL2016, SQL2019]
SqlServerVersion¶
[V2019]
FeaturesAllowed¶
extends: Object implements: FeatureSetValidation, ModifyableFeatureSet
returns String>
FeatureSetValidation¶
implements: ValidationCapability, FeatureSet provides: DatabaseType, FeaturesAllowed, Version,
Version¶
implements: FeatureSetValidation provides: DatabaseType, H2Version, MariaDbVersion, MySqlVersion, OracleVersion, PostgresqlVersion, SQLVersion, SqlServerVersion,
util.validation.metadata¶
MetadataContext¶
[named, exists]
NamedObject¶
[database, schema, table, view, column, index, constraint, uniqueConstraint, sequence, synonym, procedure, user, role, trigger, alias]
NamesLookup¶
[UPPERCASE, LOWERCASE, NO_TRANSFORMATION]
AbstractDatabaseMetaDataCapability¶
extends: Object implements: DatabaseMetaDataValidation provides: JdbcDatabaseMetaDataCapability
Named namedNamed> fnreturns booleanBoolean> resultsNamed namereturns booleanBoolean> resultsNamed namereturns booleanBoolean> resultsNamed namereturns booleanBoolean> resultsNamed namereturns booleanBoolean> resultsNamed namereturns booleanBoolean> resultsNamed namereturns booleanBoolean> resultsNamed namereturns booleanBoolean> resultsNamed namereturns booleanBoolean> resultsNamed namereturns booleanBoolean> resultsNamed namereturns booleanNamed namereturns UnsupportedOperationException
DatabaseException¶
extends: ValidationException
JdbcDatabaseMetaDataCapability¶
extends: AbstractDatabaseMetaDataCapability
Boolean> resultsNamed namedreturns booleanPMD.CyclomaticComplexity
Boolean> resultsString fqnreturns booleanBoolean> resultsNamed namedreturns booleanBoolean> resultsNamed namedreturns booleanNamed namedString typereturns booleanPMD.CyclomaticComplexity
Split fqn by “.” and validate expected path-elements
String typeString fqnint minint maxreturns String[]String fqnString typeSQLException ereturns DatabaseException
Named¶
extends: Object
DatabaseMetaDataValidation¶
implements: ValidationCapability provides: AbstractDatabaseMetaDataCapability,
util.validation.validator¶
AbstractValidator¶
extends: Object implements: Validator
Class typereturns Ereturns ValidationException>returns ValidationContextboolean reInitreturns ValidationContextadds an error for this ,{@link ValidationCapability}
ValidationCapability capabilityValidationException errorreturns void@Override
E elementConsumer elementConsumerreturns voidList elementListSupplier validatorSupplierBiConsumer elementConsumerreturns voidExpression expressionreturns voidExpression expressionreturns voidExpression> expressionsreturns voidFromItem[] fromItemsreturns voidFromItem> fromItemsreturns voidOrderByElement> orderByElementsreturns voidFromItem fromItemreturns voidFromItem fromItemreturns voidIterates through all ,{@link ValidationCapability}, and validates the feature with
,{@link #validateFeature(ValidationCapability, Feature)}
Feature featurereturns voidIterates through all ,{@link ValidationCapability}, and validates
<ul> <li>the name with ,{@link #validateName(ValidationCapability, NamedObject, String)}</li> <li>the feature with ,{@link #validateFeature(ValidationCapability, Feature)}</li> </ul>
Feature featureNamedObject namedObjectString fqnreturns voidIterates through all ,{@link ValidationCapability}, and validates
<ul> <li>the name with ,{@link #validateName(ValidationCapability, NamedObject, String)}</li> <li>the feature with ,{@link #validateFeature(ValidationCapability, Feature)}</li> </ul>
Feature featureNamedObject namedObjectString fqnString aliasreturns voidIterates through all ,{@link ValidationCapability}, and validates for the name with
,{@link #validateName(ValidationCapability, NamedObject, String)}
NamedObject namedObjectString fqnreturns voidIterates through all ,{@link ValidationCapability}, and validates for the name with
,{@link #validateName(ValidationCapability, NamedObject, String)}
NamedObject namedObjectString fqnString aliasreturns voidValidates the feature if given ,{@link ValidationCapability}, is a ,{@link FeatureSetValidation},
and condition is <code>true</code>
ValidationCapability capabilityboolean conditionFeature featurereturns voidvalidates for the feature if given elements is not empty - see
,{@link #isNotEmpty(Collection)}
ValidationCapability capabilityList elementsFeature featurereturns voidValidates for the feature if given element is not <code>null</code>
ValidationCapability capabilityObject elementFeature featurereturns voidValidates if given ,{@link ValidationCapability}, is a ,{@link FeatureSetValidation}
ValidationCapability capabilityFeature featurereturns voidValidates if given ,{@link ValidationCapability}, is a ,{@link DatabaseMetaDataValidation}
ValidationCapability capabilityNamedObject namedObjectString fqnString aliasreturns voidValidationCapability capabilityNamedObject namedObjectString fqnreturns voidValidates if given ,{@link ValidationCapability}, is a ,{@link DatabaseMetaDataValidation}
ValidationCapability capabilityNamedObject namedObjectString fqnString aliasboolean existsNamedObject[] parentsreturns voidValidationCapability capabilityNamedObject namedObjectString fqnboolean existsNamedObject[] parentsreturns voidValidationCapability capabilityString namereturns voidValidationCapability capabilityString nameString aliasreturns voidValidationCapability capabilityString> columnNamesNamedObject[] parentsreturns voidValidationCapability capabilityString> columnNamesboolean existsNamedObject[] parentsreturns voidValidationCapability capabilityNamedObject namedObjectString nameString aliasNamedObject[] parentsreturns voidValidationCapability capabilityNamedObject namedObjectString nameNamedObject[] parentsreturns voidValidationCapability capabilityNamedObject namedObjectString nameString aliasboolean existsNamedObject[] parentsreturns voidCollection creturns booleanString creturns boolean
AlterSequenceValidator¶
extends: AlterSequence>
AlterSessionValidator¶
extends: AlterSession>
AlterValidator¶
extends: Alter>
AlterViewValidator¶
extends: AlterView>
AnalyzeValidator¶
extends: Analyze>
CreateIndexValidator¶
extends: CreateIndex>
CreateSequenceValidator¶
extends: CreateSequence>
CreateSynonymValidator¶
extends: CreateSynonym>
CreateTableValidator¶
extends: CreateTable>
CreateViewValidator¶
extends: CreateView>
DeclareStatementValidator¶
extends: DeclareStatement>
DeleteValidator¶
extends: Delete>
DropValidator¶
extends: Drop>
ExecuteValidator¶
extends: Execute>
ExpressionValidator¶
extends: Expression> implements: Void>
@Override
WindowOffset offsetreturns void@Override
ExpressionList expressionListreturns voidvisit (whenClause)
GrantValidator¶
extends: Grant>
GroupByValidator¶
extends: GroupByElement> implements: GroupByVisitor
InsertValidator¶
extends: Insert>
LimitValidator¶
extends: Limit>
MergeValidator¶
extends: Merge> implements: MergeOperationVisitor
OrderByValidator¶
extends: OrderByElement> implements: OrderByVisitor
RefreshMaterializedViewStatementValidator¶
extends: RefreshMaterializedViewStatement>
ReplaceValidator¶
extends: UpsertValidator
ResetStatementValidator¶
extends: ResetStatement>
SelectValidator¶
extends: SelectItem implements: Void>, Void>, Void>, Void>
SetStatementValidator¶
extends: SetStatement>
ShowColumnsStatementValidator¶
extends: ShowColumnsStatement>
ShowIndexStatementValidator¶
extends: ShowIndexStatement>
ShowStatementValidator¶
extends: ShowStatement>
ShowTablesStatementValidator¶
extends: ShowTablesStatement>
StatementValidator¶
extends: Statement> implements: Void>
TableStatementValidator¶
extends: TableStatement>
UpdateValidator¶
extends: Update>
UpsertValidator¶
extends: Upsert> provides: ReplaceValidator
UseStatementValidator¶
extends: UseStatement>
ValuesStatementValidator¶
extends: Values>