public abstract class UnaryComparisonOperatorNode extends UnaryOperatorNode
methodName, operand, operator, receiverInterfaceType, resultInterfaceType, UnaryArgTypes, UnaryMethodNames, UnaryOperators, UnaryResultTypes, XMLPARSE_OP, XMLSERIALIZE_OP
transformed
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX
Constructor and Description |
---|
UnaryComparisonOperatorNode() |
Modifier and Type | Method and Description |
---|---|
void |
bindComparisonOperator()
Set the type info for this node.
|
ValueNode |
bindExpression(FromList fromList,
SubqueryList subqueryList,
java.util.List aggregateVector)
Bind this comparison operator.
|
(package private) ValueNode |
eliminateNots(boolean underNotNode)
Eliminate NotNodes in the current query block.
|
void |
generateAbsoluteColumnId(MethodBuilder mb,
Optimizable optTable) |
void |
generateExpressionOperand(Optimizable optTable,
int columnPosition,
ExpressionClassBuilder acb,
MethodBuilder mb) |
void |
generateOrderedNulls(MethodBuilder mb) |
void |
generateQualMethod(ExpressionClassBuilder acb,
MethodBuilder mb,
Optimizable optTable) |
void |
generateRelativeColumnId(MethodBuilder mb,
Optimizable optTable) |
private int |
getAbsoluteColumnPosition(Optimizable optTable)
Get the absolute 0-based column position of the ColumnReference from
the conglomerate for this Optimizable.
|
ColumnReference |
getColumnOperand(Optimizable optTable) |
ColumnReference |
getColumnOperand(Optimizable optTable,
int columnPosition) |
ValueNode |
getExpressionOperand(int tableNumber,
int columnNumber,
FromTable ft) |
(package private) abstract UnaryOperatorNode |
getNegation(ValueNode operand)
Negate the comparison.
|
ValueNode |
getOperand(ColumnReference cRef,
int refSetSize,
boolean otherSide) |
int |
getOrderableVariantType(Optimizable optTable) |
int |
getStartOperator(Optimizable optTable) |
int |
getStopOperator(Optimizable optTable) |
boolean |
isQualifier(Optimizable optTable,
boolean forPush) |
boolean |
orderedNulls() |
boolean |
selfComparison(ColumnReference cr) |
acceptChildren, addXmlOpMethodParams, bindOperand, bindParameter, categorize, constantExpression, generateExpression, getOperand, getOperatorString, getOrderableVariantType, getParameterOperand, getReceiverInterfaceName, init, init, isConstantExpression, isEquivalent, preprocess, printSubNodes, remapColumnReferencesToExpressions, setMethodName, setOperator, toString
pushSqlXmlUtil
bindExpression, changeToCNF, checkIsBoolean, checkTopPredicatesForEqualsConditions, copyFields, evaluateConstantExpressions, genEqualsFalseTree, generate, generateFilter, genIsNullTree, genSQLJavaSQLTree, getClone, getColumnName, getConstantValueAsObject, getDataValueFactory, getSchemaName, getSourceResultColumn, getTableName, getTablesReferenced, getTransformed, getTypeCompiler, getTypeId, getTypeServices, init, isBinaryEqualsOperatorNode, isBooleanFalse, isBooleanTrue, isCloneable, isInListProbeNode, isParameterNode, isRelationalOperator, isSameNodeType, optimizableEqualityNode, putAndsOnTop, requiresTypeFromContext, selectivity, setCollationInfo, setCollationInfo, setCollationUsingCompilationSchema, setCollationUsingCompilationSchema, setNullability, setTransformed, setType, setType, setType, updatableByCursor, verifyChangeToCNF, verifyEliminateNots, verifyPutAndsOnTop
accept, bindOffsetFetch, bindRowMultiSet, bindUserCatalogType, bindUserType, checkReliability, checkReliability, convertDefaultNode, createTypeDependency, debugFlush, debugPrint, disablePrivilegeCollection, formatNodeString, foundString, generateAuthorizeCheck, getBeginOffset, getClassFactory, getCompilerContext, getContextManager, getCursorInfo, getDataDictionary, getDependencyManager, getEndOffset, getExecutionFactory, getGenericConstantActionFactory, getIntProperty, getLanguageConnectionContext, getNodeFactory, getNodeType, getNullNode, getParameterTypes, getSchemaDescriptor, getSchemaDescriptor, getStatementType, getTableDescriptor, getTypeCompiler, init, init, init, init, init, init, init, init, init, init, init, isAtomic, isInstanceOf, isPrivilegeCollectionRequired, isSessionSchema, isSessionSchema, makeConstantAction, makeTableName, makeTableName, nodeHeader, orReliability, parseStatement, printLabel, referencesSessionSchema, resolveTableToSynonym, setBeginOffset, setContextManager, setEndOffset, setNodeType, setRefActionInfo, stackPrint, treePrint, treePrint, verifyClassExist
public ValueNode bindExpression(FromList fromList, SubqueryList subqueryList, java.util.List aggregateVector) throws StandardException
bindExpression
in class UnaryOperatorNode
fromList
- The query's FROM listsubqueryList
- The subquery list being built as we find SubqueryNodesaggregateVector
- The aggregate vector being built as we find AggregateNodesStandardException
- Thrown on errorpublic void bindComparisonOperator() throws StandardException
StandardException
- Thrown on errorValueNode eliminateNots(boolean underNotNode) throws StandardException
eliminateNots
in class ValueNode
underNotNode
- Whether or not we are under a NotNode.StandardException
- Thrown on errorabstract UnaryOperatorNode getNegation(ValueNode operand) throws StandardException
operand
- The operand of the comparison operatorStandardException
- Thrown on errorpublic ColumnReference getColumnOperand(Optimizable optTable, int columnPosition)
public ColumnReference getColumnOperand(Optimizable optTable)
public ValueNode getOperand(ColumnReference cRef, int refSetSize, boolean otherSide)
public boolean selfComparison(ColumnReference cr)
public ValueNode getExpressionOperand(int tableNumber, int columnNumber, FromTable ft)
public void generateExpressionOperand(Optimizable optTable, int columnPosition, ExpressionClassBuilder acb, MethodBuilder mb) throws StandardException
public int getStartOperator(Optimizable optTable)
public int getStopOperator(Optimizable optTable)
public void generateOrderedNulls(MethodBuilder mb)
public void generateQualMethod(ExpressionClassBuilder acb, MethodBuilder mb, Optimizable optTable) throws StandardException
public void generateAbsoluteColumnId(MethodBuilder mb, Optimizable optTable)
public void generateRelativeColumnId(MethodBuilder mb, Optimizable optTable)
private int getAbsoluteColumnPosition(Optimizable optTable)
optTable
- The Optimizablepublic boolean orderedNulls()
RelationalOperator.orderedNulls()
public boolean isQualifier(Optimizable optTable, boolean forPush)
public int getOrderableVariantType(Optimizable optTable) throws StandardException
StandardException
- thrown on errorRelationalOperator.getOrderableVariantType(org.apache.derby.iapi.sql.compile.Optimizable)
Apache Derby V10.10 Internals - Copyright © 2004,2014 The Apache Software Foundation. All Rights Reserved.