public class AndNode extends BinaryLogicalOperatorNode
shortCircuitValueAND, BinaryArgTypes, BinaryMethodNames, BinaryOperators, BinaryResultTypes, CONCATENATE, DIVIDE, EQ, GE, GT, LE, leftInterfaceType, leftOperand, LIKE, LT, methodName, MINUS, NE, operator, operatorType, OR, PLUS, receiver, resultInterfaceType, rightInterfaceType, rightOperand, TIMES, XMLEXISTS_OP, XMLQUERY_OPtransformedAUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX| Constructor and Description |
|---|
AndNode() |
| Modifier and Type | Method and Description |
|---|---|
ValueNode |
bindExpression(FromList fromList,
SubqueryList subqueryList,
java.util.List aggregateVector)
Bind this logical operator.
|
ValueNode |
changeToCNF(boolean underTopAndNode)
Finish putting an expression into conjunctive normal
form.
|
(package private) ValueNode |
eliminateNots(boolean underNotNode)
Eliminate NotNodes in the current query block.
|
void |
init(java.lang.Object leftOperand,
java.lang.Object rightOperand)
Initializer for an AndNode
|
(package private) void |
postBindFixup()
Do bind() by hand for an AndNode that was generated after bind(),
eg by putAndsOnTop().
|
ValueNode |
preprocess(int numTables,
FromList outerFromList,
SubqueryList outerSubqueryList,
PredicateList outerPredicateList)
Preprocess an expression tree.
|
ValueNode |
putAndsOnTop()
Do the 1st step in putting an expression into conjunctive normal
form.
|
boolean |
verifyChangeToCNF()
Verify that changeToCNF() did its job correctly.
|
boolean |
verifyPutAndsOnTop()
Verify that putAndsOnTop() did its job correctly.
|
generateExpression, init, resolveLogicalBinaryOperator, verifyEliminateNotsacceptChildren, bindXMLQuery, categorize, constantExpression, genSQLJavaSQLTree, getLeftOperand, getOrderableVariantType, getReceiverInterfaceName, getRightOperand, init, init, isConstantExpression, isEquivalent, printSubNodes, remapColumnReferencesToExpressions, setLeftOperand, setLeftRightInterfaceType, setMethodName, setOperator, setRightOperand, toStringpushSqlXmlUtilbindExpression, checkIsBoolean, checkTopPredicatesForEqualsConditions, copyFields, evaluateConstantExpressions, genEqualsFalseTree, generate, generateFilter, genIsNullTree, getClone, getColumnName, getConstantValueAsObject, getDataValueFactory, getSchemaName, getSourceResultColumn, getTableName, getTablesReferenced, getTransformed, getTypeCompiler, getTypeId, getTypeServices, init, isBinaryEqualsOperatorNode, isBooleanFalse, isBooleanTrue, isCloneable, isInListProbeNode, isParameterNode, isRelationalOperator, isSameNodeType, optimizableEqualityNode, requiresTypeFromContext, selectivity, setCollationInfo, setCollationInfo, setCollationUsingCompilationSchema, setCollationUsingCompilationSchema, setNullability, setTransformed, setType, setType, setType, updatableByCursoraccept, 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, isAtomic, isInstanceOf, isPrivilegeCollectionRequired, isSessionSchema, isSessionSchema, makeConstantAction, makeTableName, makeTableName, nodeHeader, orReliability, parseStatement, printLabel, referencesSessionSchema, resolveTableToSynonym, setBeginOffset, setContextManager, setEndOffset, setNodeType, setRefActionInfo, stackPrint, treePrint, treePrint, verifyClassExistpublic void init(java.lang.Object leftOperand,
java.lang.Object rightOperand)
init in interface Nodeinit in class QueryTreeNodeleftOperand - The left operand of the ANDrightOperand - The right operand of the ANDpublic ValueNode bindExpression(FromList fromList, SubqueryList subqueryList, java.util.List aggregateVector) throws StandardException
bindExpression in class BinaryLogicalOperatorNodefromList - 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 ValueNode preprocess(int numTables, FromList outerFromList, SubqueryList outerSubqueryList, PredicateList outerPredicateList) throws StandardException
preprocess in class BinaryOperatorNodenumTables - 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 eliminateNots(boolean underNotNode) throws StandardException
eliminateNots in class ValueNodeunderNotNode - Whether or not we are under a NotNode.StandardException - Thrown on errorpublic ValueNode putAndsOnTop() throws StandardException
putAndsOnTop in class ValueNodeStandardException - Thrown on errorpublic boolean verifyPutAndsOnTop()
verifyPutAndsOnTop in class ValueNodepublic ValueNode changeToCNF(boolean underTopAndNode) throws StandardException
changeToCNF in class ValueNodeunderTopAndNode - Whether or not we are under a top level AndNode.StandardException - Thrown on errorpublic boolean verifyChangeToCNF()
verifyChangeToCNF in class ValueNodevoid postBindFixup()
throws StandardException
StandardException - Thrown on errorApache Derby V10.10 Internals - Copyright © 2004,2014 The Apache Software Foundation. All Rights Reserved.