|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.derby.impl.sql.compile.QueryTreeNode
org.apache.derby.impl.sql.compile.JavaValueNode
org.apache.derby.impl.sql.compile.MethodCallNode
org.apache.derby.impl.sql.compile.NonStaticMethodCallNode
A NonStaticMethodCallNode is really a node to represent a (static or non-static) method call from an object (as opposed to a static method call from a class.
Field Summary | |
private boolean |
isStatic
|
(package private) JavaValueNode |
receiver
|
Fields inherited from class org.apache.derby.impl.sql.compile.MethodCallNode |
actualMethodReturnType, internalCall, javaClassName, method, methodName, methodParameterTypes, methodParms, routineInfo, signature |
Fields inherited from class org.apache.derby.impl.sql.compile.JavaValueNode |
forCallStatement, jsqlType |
Fields inherited from class org.apache.derby.impl.sql.compile.QueryTreeNode |
AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX, beginOffset, endOffset |
Constructor Summary | |
NonStaticMethodCallNode()
|
Method Summary | |
Visitable |
accept(Visitor v)
Accept a visitor, and call v.visit() on child nodes as necessary. |
JavaValueNode |
bindExpression(FromList fromList,
SubqueryList subqueryList,
java.util.Vector aggregateVector)
Bind this expression. |
boolean |
categorize(JBitSet referencedTabs,
boolean simplePredsOnly)
Categorize this predicate. |
void |
generateExpression(ExpressionClassBuilder acb,
MethodBuilder mb)
Do code generation for this method call |
protected boolean |
generateReceiver(ExpressionClassBuilder acb,
MethodBuilder mb)
Generate the expression that evaluates to the receiver. |
protected int |
getOrderableVariantType()
Return the variant type for the underlying expression. |
void |
init(java.lang.Object methodName,
java.lang.Object receiver)
Initializer for a NonStaticMethodCallNode |
void |
preprocess(int numTables,
FromList outerFromList,
SubqueryList outerSubqueryList,
PredicateList outerPredicateList)
Preprocess an expression tree. |
void |
printSubNodes(int depth)
Prints the sub-nodes of this object. |
JavaValueNode |
remapColumnReferencesToExpressions()
Remap all ColumnReferences in this tree to be clones of the underlying expression. |
Methods inherited from class org.apache.derby.impl.sql.compile.MethodCallNode |
addParms, addParms, areParametersQueryInvariant, bindParameters, generateOneParameter, generateParameters, getIsParam, getJavaClassName, getMethodName, getMethodParms, getObjectSignature, getParameterTypeName, getPrimitiveSignature, getSignature, init, resolveMethodCall, setClause, setNullParameterInfo, someParametersAreNull, throwNoMethodFound, toString |
Methods inherited from class org.apache.derby.impl.sql.compile.JavaValueNode |
castToPrimitive, checkReliability, generate, generateReceiver, getConstantValueAsObject, getJavaTypeName, getJSQLType, getPrimitiveTypeName, getReceiverExpression, isPrimitiveType, mapToTypeID, markForCallStatement, markReturnValueDiscarded, mustCastToPrimitive, returnValueDiscarded, returnValueToSQLDomain, setJavaTypeName, valueReturnedToSQLDomain |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
JavaValueNode receiver
private boolean isStatic
Constructor Detail |
public NonStaticMethodCallNode()
Method Detail |
public void init(java.lang.Object methodName, java.lang.Object receiver) throws StandardException
init
in class QueryTreeNode
methodName
- The name of the method to callreceiver
- A JavaValueNode representing the receiving object
StandardException
- Thrown on errorpublic JavaValueNode bindExpression(FromList fromList, SubqueryList subqueryList, java.util.Vector aggregateVector) 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 SubqueryNodesaggregateVector
- The aggregate vector being built as we find AggregateNodes
StandardException
- Thrown on errorValueNode.bindExpression(org.apache.derby.impl.sql.compile.FromList, org.apache.derby.impl.sql.compile.SubqueryList, java.util.Vector)
public 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 map
StandardException
- Thrown on errorprotected int getOrderableVariantType() throws StandardException
getOrderableVariantType
in class MethodCallNode
StandardException
public JavaValueNode remapColumnReferencesToExpressions() throws StandardException
remapColumnReferencesToExpressions
in class MethodCallNode
StandardException
- Thrown on errorpublic void printSubNodes(int depth)
printSubNodes
in class MethodCallNode
depth
- The depth of this node in the tree
public void 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 block
StandardException
- Thrown on errorpublic 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 into
StandardException
- Thrown on errorprotected boolean 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 into
StandardException
- Thrown on errorpublic Visitable accept(Visitor v) throws StandardException
accept
in interface Visitable
accept
in class MethodCallNode
v
- the visitor
StandardException
- on error
|
Built on Mon 2007-06-04 09:58:47+0400, from revision ??? | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |