Visitable
class NonStaticMethodCallNode extends MethodCallNode
Modifier and Type | Field | Description |
---|---|---|
private boolean |
isStatic |
|
(package private) JavaValueNode |
receiver |
forCallStatement, jsqlType
actualMethodReturnType, internalCall, javaClassName, method, methodName, methodParameterTypes, methodParms, routineInfo, signature
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_CYCLE, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX
Constructor | Description |
---|---|
NonStaticMethodCallNode(java.lang.String methodName,
ValueNode receiver,
ContextManager cm) |
Constructor for a NonStaticMethodCallNode
|
Modifier and Type | Method | Description |
---|---|---|
(package private) void |
acceptChildren(Visitor v) |
Accept the visitor for all visitable children of this node.
|
(package private) JavaValueNode |
bindExpression(FromList fromList,
SubqueryList subqueryList,
java.util.List<AggregateNode> aggregates) |
Bind this expression.
|
(package private) boolean |
categorize(JBitSet referencedTabs,
boolean simplePredsOnly) |
Categorize this predicate.
|
(package private) void |
generateExpression(ExpressionClassBuilder acb,
MethodBuilder mb) |
Do code generation for this method call
|
(package private) boolean |
generateReceiver(ExpressionClassBuilder acb,
MethodBuilder mb) |
Generate the expression that evaluates to the receiver.
|
(package private) int |
getOrderableVariantType() |
Return the variant type for the underlying expression.
|
(package private) void |
preprocess(int numTables,
FromList outerFromList,
SubqueryList outerSubqueryList,
PredicateList outerPredicateList) |
Preprocess an expression tree.
|
(package private) void |
printSubNodes(int depth) |
Prints the sub-nodes of this object.
|
(package private) JavaValueNode |
remapColumnReferencesToExpressions() |
Remap all ColumnReferences in this tree to be clones of the
underlying expression.
|
castToPrimitive, checkReliability, generate, generateReceiver, getCollationType, getConstantValueAsObject, getJavaTypeName, getJSQLType, getPrimitiveTypeName, getReceiverExpression, isPrimitiveType, mapToTypeID, markForCallStatement, markReturnValueDiscarded, mustCastToPrimitive, returnValueDiscarded, returnValueToSQLDomain, setCollationType, setJavaTypeName, valueReturnedToSQLDomain
addParms, areParametersQueryInvariant, bindParameters, generateOneParameter, generateParameters, getCorrelationTables, getDataType, getFirstVarargIdx, getFullName, getIsParam, getJavaClassName, getMethodName, getMethodParameterClasses, getMethodParms, getObjectSignature, getObjectTypeName, getParameterTypeName, getPrimitiveSignature, getResolvedMethod, getRoutineArgIdx, getRoutineArgIdx, getRoutineInfo, hasVarargs, isVararg, resolveMethodCall, setNullParameterInfo, someParametersAreNull, stripOneArrayLevel, throwNoMethodFound, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
accept, addTag, addUDTUsagePriv, addUDTUsagePriv, bindOffsetFetch, bindRowMultiSet, bindUserCatalogType, bindUserType, checkReliability, checkReliability, convertDefaultNode, copyTagsFrom, createTypeDependency, debugFlush, debugPrint, disablePrivilegeCollection, formatNodeString, generateAuthorizeCheck, getBeginOffset, getClassFactory, getCompilerContext, getContext, getContextManager, getDataDictionary, getDependencyManager, getEndOffset, getExecutionFactory, getGenericConstantActionFactory, getIntProperty, getLanguageConnectionContext, getLongProperty, getNullNode, getOffsetOrderedNodes, getOptimizerFactory, getOptimizerTracer, getParameterTypes, getSchemaDescriptor, getSchemaDescriptor, getStatementType, getTableDescriptor, getTypeCompiler, getUDTDesc, isAtomic, isPrivilegeCollectionRequired, isSessionSchema, isSessionSchema, makeConstantAction, makeTableName, makeTableName, nodeHeader, optimizerTracingIsOn, orReliability, parseSearchCondition, parseStatement, printLabel, referencesSessionSchema, resolveTableToSynonym, setBeginOffset, setEndOffset, setRefActionInfo, stackPrint, taggedWith, treePrint, treePrint, verifyClassExist
JavaValueNode receiver
private boolean isStatic
NonStaticMethodCallNode(java.lang.String methodName, ValueNode receiver, ContextManager cm) throws StandardException
methodName
- The name of the method to callreceiver
- A JavaValueNode representing the receiving objectcm
- The context managerStandardException
- Thrown on errorJavaValueNode bindExpression(FromList fromList, SubqueryList subqueryList, java.util.List<AggregateNode> aggregates) throws StandardException
bindExpression
in class JavaValueNode
fromList
- The FROM list for the query this
expression is in, for binding columns.subqueryList
- The subquery list being built as we find SubqueryNodesaggregates
- The aggregate list being built as we find AggregateNodesStandardException
- Thrown on errorValueNode.bindExpression(org.apache.derby.impl.sql.compile.FromList, org.apache.derby.impl.sql.compile.SubqueryList, java.util.List<org.apache.derby.impl.sql.compile.AggregateNode>)
boolean categorize(JBitSet referencedTabs, boolean simplePredsOnly) throws StandardException
categorize
in class MethodCallNode
referencedTabs
- JBitSet with bit map of referenced FromTablessimplePredsOnly
- Whether or not to consider method
calls, field references and conditional nodes
when building bit mapStandardException
- Thrown on errorValueNode.categorize(org.apache.derby.iapi.util.JBitSet, boolean)
int getOrderableVariantType() throws StandardException
getOrderableVariantType
in class MethodCallNode
StandardException
JavaValueNode remapColumnReferencesToExpressions() throws StandardException
remapColumnReferencesToExpressions
in class MethodCallNode
StandardException
- Thrown on errorValueNode.remapColumnReferencesToExpressions()
void printSubNodes(int depth)
printSubNodes
in class MethodCallNode
depth
- The depth of this node in the treevoid preprocess(int numTables, FromList outerFromList, SubqueryList outerSubqueryList, PredicateList outerPredicateList) throws StandardException
preprocess
in class MethodCallNode
numTables
- Number of tables in the DML StatementouterFromList
- FromList from outer query blockouterSubqueryList
- SubqueryList from outer query blockouterPredicateList
- PredicateList from outer query blockStandardException
- Thrown on errorValueNode.preprocess(int, org.apache.derby.impl.sql.compile.FromList, org.apache.derby.impl.sql.compile.SubqueryList, org.apache.derby.impl.sql.compile.PredicateList)
void generateExpression(ExpressionClassBuilder acb, MethodBuilder mb) throws StandardException
generateExpression
in class JavaValueNode
acb
- The ExpressionClassBuilder for the class we're generatingmb
- The method the expression will go intoStandardException
- Thrown on errorboolean generateReceiver(ExpressionClassBuilder acb, MethodBuilder mb) throws StandardException
generateReceiver
in class JavaValueNode
acb
- The ExpressionClassBuilder for the class being builtmb
- The method the expression will go intoStandardException
- Thrown on errorvoid acceptChildren(Visitor v) throws StandardException
acceptChildren
in class MethodCallNode
v
- the visitorStandardException
- on errorApache Derby V10.14 Internals - Copyright © 2004,2018 The Apache Software Foundation. All Rights Reserved.