Top Inners Fields Constructors Methods
org.apache.derby.impl.sql.compile

pack-priv Class SQLParser

extends Object
implements SQLParserConstants
Class Inheritance
All Implemented Interfaces
org.apache.derby.impl.sql.compile.SQLParserConstants
Imports
java.math.BigDecimal, java.sql.ParameterMetaData, .Types, java.util.ArrayList, .List, .Properties, .StringTokenizer, org.apache.derby.catalog.AliasInfo, .TypeDescriptor, org.apache.derby.catalog.types.RoutineAliasInfo, org.apache.derby.shared.common.error.StandardException, org.apache.derby.shared.common.reference.Limits, .Property, .SQLState, org.apache.derby.iapi.services.context.ContextManager, org.apache.derby.iapi.services.io.FormatableProperties, org.apache.derby.shared.common.sanity.SanityManager, org.apache.derby.iapi.sql.StatementType, org.apache.derby.iapi.sql.compile.CompilerContext, .JoinStrategy, .OptimizerFactory, .OptimizerPlan, .TypeCompiler, org.apache.derby.iapi.sql.conn.Authorizer, .LanguageConnectionContext, org.apache.derby.iapi.sql.dictionary.DataDictionary, .PermDescriptor, .SchemaDescriptor, .TableDescriptor, .TriggerDescriptor, .ViewDescriptor, org.apache.derby.iapi.transaction.TransactionControl, org.apache.derby.iapi.types.DataTypeDescriptor, .DataTypeUtilities, .DataValueDescriptor, .DateTimeDataValue, .StringDataValue, .TypeId, org.apache.derby.iapi.util.IdUtil, .StringUtil, org.apache.derby.impl.sql.execute.TablePrivilegeInfo

Nested and Inner Type Summary

Modifier and TypeClass and Description
pack-priv static class
private static class

Field Summary

Modifier and TypeField and Description
private ContextManager
private CompilerContext
pack-priv static final String
private static final int
pack-priv static final String
private static final String[]
ESCAPED_SYSFUN_FUNCTIONS

List of JDBC escape functions that map directly onto a function in the SYSFUN schema.

private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int[]
JAVA_ROUTINE_CLAUSES

Clauses required for Java routines.

private final SQLParser.JJCalls[]
private int
private Vector<int[]>
private int[]
private int
private int
private int
private int
private final int[]
private static int[]
private static int[]
private static int[]
private static int[]
private static int[]
private static int[]
private static int[]
private static int[]
private static int[]
private static int[]
private static int[]
private static int[]
private static int[]
private static int[]
private static int[]
private static int[]
private Token
private int[]
private final SQLParser.LookaheadSuccess
public Token
private boolean
private Token
private boolean
private Token
private boolean
public boolean
private static final int
private Token
private boolean
private static final int
private static final int
private static final int
private static final int
private static final int
private OptimizerFactory
private static final int
private static final int
private static final int
private static final int
private Object[]
private ArrayList<ParameterNode>
private int
private static final String[]
private static final String[]
pack-priv static final String
private String
private static final String[]
private Token
public Token
public SQLParserTokenManager
private static final int
private static final int
private static final int

Constructor Summary

AccessConstructor and Description
public
public

Method Summary

Modifier and TypeMethod and Description
public final ValueNode
public final TableElementNode
public final ValueNode
additiveExpression(ValueNode farLeftOperand, int compOp)

public final int
private static Class<T>
aggClass(Token token)

Translate a token for the name of a built-in aggregate to an aggregate definition class.

private static String
aggName(Token token)

Translate a token for the name of a built-in aggregate to a String containing an aggregate name.

public final StatementNode
public final AggregateNode
aggregateExpression(String aggName, Class<T> aggClass)

private boolean

Returns:

TRUE iff the next set of tokens is the beginning of a aggregateNode()
aggregateFollows
()

Determine whether the next sequence of tokens can be the beginning of an aggregateNode()() rule.

public final int
public final char
alterTableAction(TableElementList tableElementList, int[] changeType, int[] behavior)

public final StatementNode
public final StatementNode
public final ValueNode
andExpression(ValueNode farLeftOperand)

private boolean

Returns:

TRUE iff the next set of tokens is the beginning of a another element in a PROPERTY list.
anotherPropertyFollows
()

Determine whether the next sequence of tokens can be the beginning of another element in a PROPERTY list.

public final ValueNode
public final Integer
private boolean
public final DataTypeDescriptor
public final String
public final void
asIdentity(long[] autoIncrementInfo)

public final int
public final StatementNode
public final ValueNode
public final ValueNode
public final ValueNode
public final Boolean
public final Token
public final ValueNode
private boolean
builtinAggregateFollows()

Return true if a builtin aggregate follows.

public final Token
public final Boolean
calledOnNullInput(boolean isProcedure)

public final StatementNode
public final String
public final String
public final String
public final ValueNode
public final ValueNode
public final TypeDescriptor
catalogType()

Returns a dataTypeDDL() as a catalog type, ie.

public final DataTypeDescriptor
public final ValueNode
public final int
public final void
public final int
public final ConstraintDefinitionNode
checkConstraintDefinition(TableName constraintName, String columnName)

private void
checkInternalFeature(String
Description of feature for exception.
feature
)

Check that the current mode supports internal extensions.

pack-priv void
checkRequiredRoutineClause(int[]
int array of require clauses
required
,
Object[]
the array of declared clauses.
clauses
)

Check to see if the required claues have been added to a procedure or function defintion.

private void
checkSqlStandardAccess(String
"GRANT", "REVOKE", "CREATE/DROP/SET ROLE" or CURRENT_ROLE
command
)

Utility method for checking that the underlying database uses SQL standard permission checking (GRANT/REVOKE).

private void
checkTypeLimits(int type, int length)

check if the type length is ok for the given type.

private boolean
checkVersion(int
Data Dictionary major version (DataDictionary.DD_ constant)
version
,
String
SQL Feature name, for error text.
feature
)

Utility method for checking that the underlying database has been upgraded to the required level to use this functionality.

public final void
public final ValueNode
coalesceFunction(String coalesceOrValue)

public final TableElementNode
public final TableElementNode
public final ConstraintDefinitionNode
columnConstraint(TableName constraintName, DataTypeDescriptor[] dataTypeDescriptor, String columnName)

public final void
columnConstraintDefinition(DataTypeDescriptor[] dataTypeDescriptor, TableElementList tableElementList, String columnName)

public final TableElementNode
public final ValueNode
private boolean

Returns:

TRUE iff the next set of tokens is the beginning of a columnInvocation()
columnMethodInvocationFollows
()

Determine whether the next sequence of tokens can be the beginning of a columnInvocation() rule.

public final ValueNode
public final void
public final void
public final void
public final void
public final ColumnReference
pack-priv boolean

Returns:

TRUE iff the next set of tokens names a common datatype
commonDatatypeName
(boolean
true if additonal token for NATIONAL or LONG should be checked
checkFollowingToken
)

Determine whether the next sequence of tokens represents one of the common (built-in) datatypes.

pack-priv boolean

Returns:

TRUE iff the next set of tokens names a common datatype
commonDatatypeName
(int
starting token index of the sequence
start
,
boolean
true if additonal token for NATIONAL or LONG should be checked
checkFollowingToken
)

Determine whether a sequence of tokens represents one of the common (built-in) datatypes.

public final int
public final boolean[]
public final boolean
public final TableName
public final void
public final StatementNode
public final TableOperatorNode
crossJoin(ResultSetNode leftRSN, boolean nestedInParens)

public final FromTable
currentOfClause(String correlationName)

public final ValueNode
public final Token
cycleClause(Boolean[] cycleOption)

public final DataTypeDescriptor
pack-priv boolean

Returns:

TRUE iff the next set of tokens names a datatype
dataTypeCheck
(int start)

Determine whether the next sequence of tokens represents a datatype (could be a common datatype or a schema qualified UDT name).

public final DataTypeDescriptor
public final DataTypeDescriptor
public final ValueNode
public final int
public final ValueNode
public final ValueNode
public final DataTypeDescriptor
public final ValueNode
public final ValueNode
public final char
public final void
declareTableClause(Object[] declareTableClauses)

public final ValueNode
defaultAndConstraints(DataTypeDescriptor[] typeDescriptor, TableElementList tableElementList, String columnName, long[] autoIncrementInfo)

public final ValueNode
defaultClause(long[] autoIncrementInfo, String columnName)

public final ValueNode
public final ValueNode
defaultOption(Token beginToken, long[] autoIncrementInfo, String columnName)

public final boolean
public final StatementNode
public final int
public final int
public final String
private boolean

Returns:

TRUE iff the next token is derby-properties
derbyPropertiesListFollows
()

Determine whether the next token is the beginning of a propertyList().

public final ResultColumn
public final ResultColumnList
public final SubqueryNode
public final void
public final ValueNode
private boolean
distinctUDAFollows()

Return true if the following tokens are the start of a distinct user defined aggregate invocation.

public final DataTypeDescriptor
pack-priv StatementNode
dropAliasNode(TableName aliasName, char type)

Create a node for the drop alias/procedure call.

public final StatementNode
public final StatementNode
dropColumnDefinition(TableName tableName, TableElementList tableElementList, int[] changeType, int[] behavior)

public final void
private boolean

Returns:

TRUE iff the next token is DROP
dropFollows
()

Determine whether the next token is a DROP

public final StatementNode
public final StatementNode
public final StatementNode
public final StatementNode
public final StatementNode
public final StatementNode
public final TableElementNode
public final StatementNode
dropTableConstraintDefinitionCore(TableName tableName, TableElementList tableElementList, int[] changeType, int[] behavior)

public final StatementNode
public final StatementNode
public final StatementNode
public final void
public final ParameterNode
public final Boolean
public final void
public final ValueNode
public final ValueNode
public final ValueNode
private boolean

Returns:

TRUE iff the next set of tokens is the beginning of a escapedValueFunction()
escapedValueFunctionFollows
()

Determine whether the next sequence of tokens can be the beginning of a escapedValueFunction().

public final Long
public final DataTypeDescriptor
public final long
public final DataTypeDescriptor
public final StatementNode
public final SubqueryNode
public final ValueNode
private void
forbidNextValueFor()

Prevent NEXT VALUE FOR clauses when we get to the bind() phase.

public final int
forBitData(int charType)

public final int
public final void
public final void
public final FromList
public final void
private boolean

Returns:

TRUE iff the next set of tokens is the beginning of a FROM newInvocation().
fromNewInvocationFollows
()

Determine whether the next sequence of tokens can be the beginning of a FROM newInvocation().

public final StatementNode
functionDefinition()

CREATE FUNCTION functionElements contains the description of the function.

public final void
public final Object[]
functionParameterList(Object[] functionElements)

public final TypeDescriptor
public final void
public final TypeDescriptor
public final AggregateNode
public final ValueNode
public final ValueNode
generatedAlways(long[] autoIncrementInfo)

public final ValueNode
generatedByDefault(long[] autoIncrementInfo)

public final ValueNode
generatedColumnOption(long[] autoIncrementInfo)

public ParseException
public final ValueNode
private final CompilerContext
private final ContextManager
pack-priv StatementNode

Returns:

A CreateAliasNode matching the given parameters
getCreateAliasNode
(TableName
The name of the alias
aliasName
,
Object
TableName for target, or the full path/method name
targetName
,
Object
Information specific to the type of alias being created.
aliasSpecificInfo
,
char
The type of alias to create
aliasType
)

Get one of the several types of create alias nodes.

private DataTypeDescriptor
getDataTypeServices(int type, int precision, int scale, int length)

private StatementNode
getDeleteNode(FromTable fromTable, TableName tableName, ValueNode whereClause)

Get a DELETE node given the pieces.

private String
getEscapedSYSFUN(String name)

Convert a JDBC escaped function name to a function name in the SYSFUN schema.

private DataTypeDescriptor
private ValueNode
getJdbcIntervalNode(int intervalType)

private LanguageConnectionContext
public final Token
pack-priv NumericConstantNode
getNumericNode(String
the string containing the number
num
,
boolean
accept only integers (not decimal)
intsOnly
)

Translate a String containing a number into the appropriate type of Numeric node.

private final OptimizerFactory

Returns:

The OptimizerFactory for this database.
getOptimizerFactory
()

Get the OptimizerFactory for this database.

pack-priv ValueNode
getSubstringNode(ValueNode stringValue, ValueNode startPosition, ValueNode length)

Get a substring node from - the string - the start position - the length

public final Token
getToken(int index)

private ValueNode
getTrimOperatorNode(Integer
one of Leading, Trailing or Both.
trimSpec
,
ValueNode
the character to trim. Can be null in which case it defaults to ' '.
trimChar
,
ValueNode
expression to be trimmed.
trimSource
,
ContextManager cm)

Generate a trim operator node

private StatementNode
getUpdateNode(FromTable fromTable, TableName tableName, ResultColumnList setClause, ValueNode whereClause)

Get an UPDATE node given the pieces.

public final StatementNode
public final void
public final List<String>
public final StatementNode
public final GroupByList
public final void
public final GroupByList
private static boolean
public final ValueNode
public final ValueNode
public final String
identifier(int id_length_limit, boolean checkLength)

public final void
identityColumnOption(long[] autoIncrementInfo, Object[] optionalClauses)

public final void
public final void
public final StatementNode
public final void
public final boolean
private void
initStatement(String statementSQLText, Object[] paramDefaults)

pack-priv void
initUnnamedParameterList()

Initializes the list of unnamed parameters, i.e., "?" parameters Usually, this routine just gets an empty list for the unnamed parameters.

public final Integer
public final StatementNode
public final ValueNode
public final ResultColumnList
public final StatementNode
public final StatementNode
public final String
internalIdentifier(int id_length_limit, boolean checkLength)

public final ResultSetNode
public final NumericConstantNode
public final ValueNode
inValueList(ValueNode leftOperand)

private boolean

Returns:

TRUE iff the current token names a built-in alias
isBuiltInAlias
()

Determine whether the current token represents one of the built-in aliases.

private static boolean
isDATETIME(int val)

public final int
public final int
public final int
public final int
pack-priv boolean
public final ValueNode
private boolean
public final String
pack-priv boolean

Returns:

TRUE iff the next set of tokens is the java class name
javaClassFollows
()

Determine whether the next sequence of tokens is a class name

public final String
public final String
public final String
javaDSLNameExtender(String dotSeparatedList)

public final DataTypeDescriptor
javaType(TableName[] udtName)

public final ValueNode
public final void
private final boolean
jj_2_1(int xla)

private final boolean
jj_2_10(int xla)

private final boolean
jj_2_11(int xla)

private final boolean
jj_2_12(int xla)

private final boolean
jj_2_13(int xla)

private final boolean
jj_2_14(int xla)

private final boolean
jj_2_15(int xla)

private final boolean
jj_2_16(int xla)

private final boolean
jj_2_17(int xla)

private final boolean
jj_2_18(int xla)

private final boolean
jj_2_19(int xla)

private final boolean
jj_2_2(int xla)

private final boolean
jj_2_20(int xla)

private final boolean
jj_2_21(int xla)

private final boolean
jj_2_22(int xla)

private final boolean
jj_2_23(int xla)

private final boolean
jj_2_24(int xla)

private final boolean
jj_2_25(int xla)

private final boolean
jj_2_26(int xla)

private final boolean
jj_2_27(int xla)

private final boolean
jj_2_28(int xla)

private final boolean
jj_2_29(int xla)

private final boolean
jj_2_3(int xla)

private final boolean
jj_2_30(int xla)

private final boolean
jj_2_31(int xla)

private final boolean
jj_2_32(int xla)

private final boolean
jj_2_33(int xla)

private final boolean
jj_2_34(int xla)

private final boolean
jj_2_35(int xla)

private final boolean
jj_2_36(int xla)

private final boolean
jj_2_37(int xla)

private final boolean
jj_2_38(int xla)

private final boolean
jj_2_39(int xla)

private final boolean
jj_2_4(int xla)

private final boolean
jj_2_40(int xla)

private final boolean
jj_2_41(int xla)

private final boolean
jj_2_42(int xla)

private final boolean
jj_2_43(int xla)

private final boolean
jj_2_44(int xla)

private final boolean
jj_2_45(int xla)

private final boolean
jj_2_46(int xla)

private final boolean
jj_2_47(int xla)

private final boolean
jj_2_48(int xla)

private final boolean
jj_2_49(int xla)

private final boolean
jj_2_5(int xla)

private final boolean
jj_2_50(int xla)

private final boolean
jj_2_51(int xla)

private final boolean
jj_2_52(int xla)

private final boolean
jj_2_53(int xla)

private final boolean
jj_2_54(int xla)

private final boolean
jj_2_55(int xla)

private final boolean
jj_2_56(int xla)

private final boolean
jj_2_57(int xla)

private final boolean
jj_2_58(int xla)

private final boolean
jj_2_59(int xla)

private final boolean
jj_2_6(int xla)

private final boolean
jj_2_60(int xla)

private final boolean
jj_2_61(int xla)

private final boolean
jj_2_62(int xla)

private final boolean
jj_2_63(int xla)

private final boolean
jj_2_64(int xla)

private final boolean
jj_2_65(int xla)

private final boolean
jj_2_66(int xla)

private final boolean
jj_2_67(int xla)

private final boolean
jj_2_68(int xla)

private final boolean
jj_2_69(int xla)

private final boolean
jj_2_7(int xla)

private final boolean
jj_2_70(int xla)

private final boolean
jj_2_71(int xla)

private final boolean
jj_2_72(int xla)

private final boolean
jj_2_73(int xla)

private final boolean
jj_2_74(int xla)

private final boolean
jj_2_75(int xla)

private final boolean
jj_2_76(int xla)

private final boolean
jj_2_77(int xla)

private final boolean
jj_2_78(int xla)

private final boolean
jj_2_79(int xla)

private final boolean
jj_2_8(int xla)

private final boolean
jj_2_80(int xla)

private final boolean
jj_2_81(int xla)

private final boolean
jj_2_82(int xla)

private final boolean
jj_2_83(int xla)

private final boolean
jj_2_84(int xla)

private final boolean
jj_2_85(int xla)

private final boolean
jj_2_86(int xla)

private final boolean
jj_2_87(int xla)

private final boolean
jj_2_88(int xla)

private final boolean
jj_2_89(int xla)

private final boolean
jj_2_9(int xla)

private final boolean
jj_2_90(int xla)

private final boolean
jj_2_91(int xla)

private final boolean
jj_2_92(int xla)

private final boolean
jj_2_93(int xla)

private final boolean
jj_2_94(int xla)

private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private final boolean
private void
jj_add_error_token(int kind, int pos)

private final Token
jj_consume_token(int kind)

private static void
private static void
private static void
private static void
private static void
private static void
private static void
private static void
private static void
private static void
private static void
private static void
private static void
private static void
private static void
private static void
private final void
private final void
jj_save(int index, int xla)

private final boolean
jj_scan_token(int kind)

public final ValueNode
public final TableOperatorNode
joinedTableExpression(ResultSetNode leftRSN, boolean nestedInParens)

private boolean

Returns:

TRUE iff the next set of tokens is the beginning of a joinedTableExpression().
joinedTableExpressionFollows
()

Determine whether the next sequence of tokens can be the beginning of a joinedTableExpression().

public final Object[]
public final JoinStrategy
public final int
public final int
public final int
public final int
public final int
public final ValueNode
public final DataTypeDescriptor
public final char
public final boolean
public final int
public final StatementNode
public final DataTypeDescriptor
public final DataTypeDescriptor
pack-priv ParameterNode

Returns:

new unnamed parameter.
makeParameterNode
()

Makes a new unnamed ParameterNode and chains it onto parameterList.

public final void
public final QueryTreeNodeVector<MatchingClauseNode>
public final StatementNode
public final void
public final MethodCallNode
public final void
methodParameter(List<ValueNode> parameterList)

private boolean

Returns:

TRUE iff the next set of tokens is the beginning of a aggregateNode()
miscBuiltinFollows
()

Determine whether the next sequence of tokens can be the beginning of a miscBuiltins().

public final ValueNode
public final ValueNode
miscBuiltinsCore(boolean isJDBCEscape)

public final ValueNode
public final ValueNode
multiplicativeExpression(ValueNode farLeftOperand, int additiveOperator)

public final int
pack-priv ValueNode
multOp(ValueNode leftOperand, ValueNode rightOperand, int multiplicativeOperator)

public final ResultColumnList
public final DataTypeDescriptor
public final TableOperatorNode
naturalJoin(ResultSetNode leftRSN, boolean nestedInParens)

public final JavaToSQLValueNode
private boolean

Returns:

TRUE iff the next set of tokens is the beginning of a newInvocation().
newInvocationFollows
(int
Token to look for new at
startToken
)

Determine whether the next sequence of tokens can be the beginning of a newInvocation().

private JoinNode

Returns:

a new join node
newJoinNode
(ResultSetNode
the left side of the join
leftRSN
,
ResultSetNode
the right side of the join
rightRSN
,
ValueNode
the ON clause, or null if there is no ON clause
onClause
,
ResultColumnList
the USING clause, or null if there is no USING clause
usingClause
,
int
the type of the join (one of the constants INNERJOIN, LEFTOUTERJOIN or RIGHTOUTERJOIN in JoinNode)
joinType
)

Construct a new join node.

public final ValueNode
nextValueExpression()

Next value from a sequence object

public final ResultSetNode
public final ResultSetNode
nonJoinQueryTerm(ResultSetNode leftSide, int operatorType)

public final String
public final int
public final ValueNode
public final ValueNode
private static String
public final void
public final ValueNode
public final DataTypeDescriptor
public final ValueNode
public final DataTypeDescriptor
public final ValueNode
public final ValueNode
public final boolean
public final Boolean
public final OptimizerPlan
public final OptimizerPlan
public final OptimizerPlan
public final OptimizerPlan
public final Object[]
public final Object[]
public final OrderByList
public final void
public final ValueNode
orExpression(ValueNode farLeftOperand)

public final int
public final WindowNode
public final Short
parameterStyle(boolean isTableFunction)

public final List<TypeDescriptor>
public final int
public final ValueNode
public final StatementNode
public final CursorNode
preparableSelectStatement(boolean checkParams)

public final StatementNode
public final StatementNode
public final ValueNode
public final ValueNode
public final ValueNode
public final ResultColumnList
public final StatementNode
proceduralStatement(Token[] tokenHolder)

public final StatementNode
procedureDefinition()

CREATE PROCEDURE procedureElements contains the description of the procedure.

public final void
public final Object[]
procedureParameterList(Object[] procedureElements)

public final Properties
propertyList(boolean propertiesUseAllowed)

public final TableOperatorNode
qualifiedJoin(ResultSetNode leftRSN, boolean nestedInParens)

public final TableName
qualifiedName(int id_length_limit)

public final int
quantifier(int opType)

public final ResultSetNode
queryExpression(ResultSetNode leftSide, int operatorType)

public final ResultSetNode
public final TableName
public final TableName
public final ConstraintDefinitionNode
public final void
referentialTriggeredAction(int[] refActions)

public void
public void
public final ValueNode
public final ValueNode
public final ValueNode
private boolean

Returns:

TRUE iff the next set of tokens is the beginning of a remainingPredicate()
remainingPredicateFollows
()

Determine whether the next sequence of tokens can be the beginning of a remainingPredicate() rule.

public final StatementNode
public final StatementNode
public final StatementNode
public final String
public final StatementNode
public final StatementNode
public final void
public final StatementNode
public final List<String>
public final StatementNode
public final RoutineDesignator
public final void
routineElement(boolean isProcedure, boolean isTableFunction, Object[] routineElements)

public final ValueNode
public final StatementNode
public final ValueNode
public final StatementNode
public final boolean
public final Boolean
public final ResultSetNode
public final void
public final void
private boolean

Returns:

TRUE iff the next set of tokens is the beginning of a subquery.
rowValueConstructorListFollows
()

Determine whether the next sequence of tokens can be the beginning of a rowValueConstructorList.

public final StatementNode
public final void
savepointStatementClause(Object[] savepointStatementClauses)

public final int
public final StatementNode
public final ValueNode

Returns:

a ValueNode representing the search condition
SearchCondition
(String
a fragment of an SQL statement, representing a search condition
sqlFragment
)

Parse a search condition.

public final ConditionalNode
private boolean

Returns:

true if it is an offsetClause.
seeingOffsetClause
()

Determine if we are seeing an offsetClause or the identifier OFFSET (Derby does not make it a reserved word).

public final void
public final ResultColumnList
public final void
public final StatementNode
public final void
sequenceGeneratorOption(Object[] optionalClauses)

public final StatementNode
public final void
public final ResultColumnList
pack-priv final void
public final StatementNode
public final void
public final TransactionStatementNode
public final StatementNode
public final boolean
public final StatementNode
public final StatementNode
public final void
public final StatementNode
public final StatementNode
private void
setUpAndLinkParameters()

Set up and like the parameters to the descriptors.

public final String
sign()

public final ConditionalNode
public final ResultSetNode
public final ValueNode
public final void
simpleWhenClause(ValueNode caseOperand, ValueNodeList whenList, ValueNodeList thenElseList)

public final void
some()

public final OrderByColumn
public final void
public final OrderByList
public final StatementNode
public final StatementNode
public final StatementNode
public final void
public final StatementNode
Statement(String statementSQLText, Object[] paramDefaults)

public final StatementNode
StatementPart(Token[] tokenHolder)

public final ValueNode
public final ValueNode
public final ValueNode
public final ValueNode
public final MethodCallNode
staticMethodName(String javaClassName)

public final Long
public final String
public final CharConstantNode
public final SubqueryNode
subquery(int subqueryType, ValueNode leftOperand)

private boolean

Returns:

TRUE iff the next set of tokens is the beginning of a subquery.
subqueryFollows
()

Determine whether the next sequence of tokens can be the beginning of a subquery.

public final StatementNode
public final void
tableAction(TablePrivilegesNode tablePrivilegesNode)

public final TablePrivilegesNode
public final ResultColumnList
public final ConstraintDefinitionNode
tableConstraint(TableName constraintName)

public final TableElementNode
public final StatementNode
public final void
tableElement(TableElementList tableElementList)

public final TableElementList
public final SelectNode
public final FromTable
public final StatementNode
public final boolean
public final PrivilegeNode
public final FromTable
tableReference(boolean nestedInParens)

public final FromTable
tableReferenceTypes(boolean nestedInParens)

public final StatementNode
public final SubqueryNode
tableSubquery(int subqueryType, ValueNode leftOperand)

public final ResultSetNode
public final ResultSetNode
public final QueryTreeNode
public final ValueNode
public final ValueNode
public final ValueNode
public final TransactionStatementNode
public final StatementNode
public final int
public final List<TriggerReferencingStruct>
public final void
public final ValueNode
public final Integer
public final StatementNode
public final StatementNode
udtDefinition()

CREATE TYPE

public final int
public final ValueNode
unaryExpression(ValueNode farLeftOperand, int multiplicativeOperator)

public final ResultSetNode
public final Boolean
public final ResultColumnList
public final ConstraintDefinitionNode
public final int
public final StatementNode
public final int
public final int
public final ValueNode
updateSource(String columnName)

public final StatementNode
public final Integer
public final StatementNode
public final StatementNode
public final ValueNode
public final ValueNode
public final ValueNode
public final ValueNode
private static void
public final ResultColumnList
public final StatementNode
viewDefinition(Token beginToken)

public final JavaToSQLValueNode
public final ValueNode
whenOperand(ValueNode caseOperand)

public final ValueNode
public final void
public final ValueNode
whereClause(Token beginToken)

public final long
public final WindowList
public final WindowList
private boolean

Returns:

TRUE iff the next set of tokens is the beginning of a window or aggregate function
windowOrAggregateFunctionFollows
()

Determine whether the next sequence of tokens can be the beginning of a window or aggregate function.

public final ValueNode
pack-priv TableElementNode

Returns:

the new node constructed
wrapAlterColumnDefaultValue
(ValueNode
the new default value node
defaultNode
,
String
the name of the column to be altered
columnName
,
long[]
autoincrement information collected, if any.
autoIncrementInfo
)

Construct a TableElementNode of type C_NodeTypes.MODIFY_COLUMN_DEFAULT_NODE.

public final void
public final ValueNode
public final ValueNode
public final short
public final boolean
public final ValueNode
xmlQueryValue(boolean existsOnly)

public final DataTypeDescriptor
public final ValueNode
public final DataTypeDescriptor
public final short
public final short
public final void
xqVariable(ValueNode[] xmlVal)

xqVariable Parse an XML query variable.

public final ValueNode
xqVarList()

xqVarList Parse a list of XML query variables, which can include at most one XML value to be used as the "context item" for the query.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait