class IsNode extends BinaryLogicalOperatorNode
| Modifier and Type | Field and Description |
|---|---|
private boolean |
notMe |
shortCircuitValueAND, BinaryArgTypes, BinaryMethodNames, BinaryOperators, BinaryResultTypes, CONCATENATE, DIVIDE, EQ, GE, GT, K_BASE, K_XMLEXISTS, K_XMLQUERY, kind, LE, leftInterfaceType, leftOperand, LIKE, LT, methodName, MINUS, NE, operator, OR, PLUS, receiver, resultInterfaceType, rightInterfaceType, rightOperand, TIMEStransformedAUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_CYCLE, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX| Constructor and Description |
|---|
IsNode(ValueNode leftOperand,
ValueNode rightOperand,
boolean notMe,
ContextManager cm)
Constructor for an IsNode
|
| Modifier and Type | Method and Description |
|---|---|
(package private) ValueNode |
bindExpression(FromList fromList,
SubqueryList subqueryList,
java.util.List<AggregateNode> aggregates)
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.
|
(package private) void |
generateExpression(ExpressionClassBuilder acb,
MethodBuilder mb)
Do code generation for this logical binary operator.
|
ValueNode |
putAndsOnTop()
Do the 1st step in putting child expressions into conjunctive normal
form.
|
boolean |
verifyChangeToCNF()
Verify that changeToCNF() did its job correctly.
|
boolean |
verifyPutAndsOnTop()
Verify that putAndsOnTop() did its job correctly.
|
resolveLogicalBinaryOperator, verifyEliminateNotsacceptChildren, bindXMLQuery, categorize, constantExpression, genSQLJavaSQLTree, getLeftOperand, getOrderableVariantType, getReceiverInterfaceName, getRightOperand, isConstantExpression, isEquivalent, isSameNodeKind, preprocess, printSubNodes, remapColumnReferencesToExpressions, setLeftOperand, setLeftRightInterfaceType, setMethodName, setOperator, setRightOperand, toStringpushSqlXmlUtilbindExpression, checkIsBoolean, checkTopPredicatesForEqualsConditions, copyFields, evaluateConstantExpressions, genEqualsFalseTree, generate, genIsNullTree, getClone, getColumnName, getConstantValueAsObject, getDataValueFactory, getSchemaName, getSourceResultColumn, getTableName, getTablesReferenced, getTransformed, getTypeCompiler, getTypeId, getTypeServices, isBinaryEqualsOperatorNode, isBooleanFalse, isBooleanTrue, isCloneable, isInListProbeNode, isParameterNode, isRelationalOperator, optimizableEqualityNode, requiresTypeFromContext, selectivity, setCollationInfo, setCollationInfo, setCollationUsingCompilationSchema, setCollationUsingCompilationSchema, setNullability, setTransformed, setType, setType, setType, updatableByCursoraccept, 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, verifyClassExistIsNode(ValueNode leftOperand, ValueNode rightOperand, boolean notMe, ContextManager cm)
leftOperand - The left operand of the ISrightOperand - The right operand of the ISnotMe - Whether to reverse the sense of this node.cm - The context managerValueNode bindExpression(FromList fromList, SubqueryList subqueryList, java.util.List<AggregateNode> aggregates) throws StandardException
bindExpression in class BinaryLogicalOperatorNodefromList - The query's FROM listsubqueryList - The subquery list being built as we find SubqueryNodesaggregates - The aggregate list being built as we find AggregateNodesStandardException - 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 generateExpression(ExpressionClassBuilder acb, MethodBuilder mb) throws StandardException
generateExpression in class BinaryLogicalOperatorNodeacb - The ExpressionClassBuilder for the class we're generatingmb - the method the expression will go intoStandardException - Thrown on errorApache Derby V10.14 Internals - Copyright © 2004,2018 The Apache Software Foundation. All Rights Reserved.