org.apache.derby.impl.sql.compile
Class LengthOperatorNode

java.lang.Object
  extended byorg.apache.derby.impl.sql.compile.QueryTreeNode
      extended byorg.apache.derby.impl.sql.compile.ValueNode
          extended byorg.apache.derby.impl.sql.compile.UnaryOperatorNode
              extended byorg.apache.derby.impl.sql.compile.LengthOperatorNode
All Implemented Interfaces:
Visitable

public final class LengthOperatorNode
extends UnaryOperatorNode

This node represents a unary XXX_length operator

Author:
Jeff Lichtman

Field Summary
private  int parameterType
           
private  int parameterWidth
           
 
Fields inherited from class org.apache.derby.impl.sql.compile.UnaryOperatorNode
IS_NULL, methodName, NOT, operand, operator, UNARY_MINUS, UNARY_PLUS
 
Fields inherited from class org.apache.derby.impl.sql.compile.ValueNode
clause, dataTypeServices, IN_HAVING_CLAUSE, IN_SELECT_LIST, IN_UNKNOWN_CLAUSE, IN_WHERE_CLAUSE, transformed
 
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
LengthOperatorNode()
           
 
Method Summary
 ValueNode bindExpression(FromList fromList, SubqueryList subqueryList, java.util.Vector aggregateVector)
          Bind this operator
(package private)  void bindParameter()
          Bind a ?
 java.lang.String getReceiverInterfaceName()
          This is a length operator node.
 void setNodeType(int nodeType)
          Set the node type for this node.
 
Methods inherited from class org.apache.derby.impl.sql.compile.UnaryOperatorNode
accept, bindUnaryOperator, categorize, constantExpression, generateExpression, getOperand, getOperatorString, getOrderableVariantType, init, init, isConstantExpression, preprocess, printSubNodes, remapColumnReferencesToExpressions, setClause, setMethodName, setOperator, toString
 
Methods inherited from class org.apache.derby.impl.sql.compile.ValueNode
bindExpression, changeToCNF, checkIsBoolean, checkReliability, checkReliability, checkTopPredicatesForEqualsConditions, copyFields, eliminateNots, genEqualsFalseTree, generate, generateFilter, genIsNullTree, genSQLJavaSQLTree, getClause, getClone, getColumnName, getConstantValueAsObject, getDataValueFactory, getSchemaName, getSourceResultColumn, getTableName, getTablesReferenced, getTransformed, getTypeCompiler, getTypeId, getTypeServices, init, isBinaryEqualsOperatorNode, isBooleanFalse, isBooleanTrue, isCloneable, isParameterNode, isRelationalOperator, optimizableEqualityNode, putAndsOnTop, selectivity, setDescriptor, setTransformed, setType, verifyChangeToCNF, verifyEliminateNots, verifyPutAndsOnTop
 
Methods inherited from class org.apache.derby.impl.sql.compile.QueryTreeNode
bind, convertDefaultNode, debugFlush, debugPrint, executeSchemaName, executeStatementName, formatNodeString, foundString, generate, generateAuthorizeCheck, getBeginOffset, getClassFactory, getCompilerContext, getContextManager, getCursorInfo, getDataDictionary, getDependencyManager, getEndOffset, getExecutionFactory, getGenericConstantActionFactory, getIntProperty, getLanguageConnectionContext, getNodeFactory, getNodeType, getNullNode, getParameterTypes, getRowEstimate, getSchemaDescriptor, getSchemaDescriptor, getSPSName, getStatementType, getTableDescriptor, getTypeCompiler, init, init, init, init, init, init, init, init, init, init, init, isAtomic, isInstanceOf, isSessionSchema, isSessionSchema, makeConstantAction, makeResultDescription, makeTableName, needsSavepoint, nodeHeader, optimize, parseQueryText, printLabel, referencesSessionSchema, setBeginOffset, setContextManager, setEndOffset, setRefActionInfo, treePrint, treePrint, verifyClassExist
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

parameterType

private int parameterType

parameterWidth

private int parameterWidth
Constructor Detail

LengthOperatorNode

public LengthOperatorNode()
Method Detail

setNodeType

public void setNodeType(int nodeType)
Description copied from class: QueryTreeNode
Set the node type for this node.

Overrides:
setNodeType in class QueryTreeNode
Parameters:
nodeType - The node type.
Returns:
Nothing.

bindExpression

public ValueNode bindExpression(FromList fromList,
                                SubqueryList subqueryList,
                                java.util.Vector aggregateVector)
                         throws StandardException
Bind this operator

Overrides:
bindExpression in class UnaryOperatorNode
Parameters:
fromList - The query's FROM list
subqueryList - The subquery list being built as we find SubqueryNodes
aggregateVector - The aggregate vector being built as we find AggregateNodes
Returns:
The new top of the expression tree.
Throws:
StandardException - Thrown on error

bindParameter

void bindParameter()
             throws StandardException
Bind a ? parameter operand of the XXX_length function.

Overrides:
bindParameter in class UnaryOperatorNode
Returns:
Nothing
Throws:
StandardException - Thrown on error

getReceiverInterfaceName

public java.lang.String getReceiverInterfaceName()
This is a length operator node. Overrides this method in UnaryOperatorNode for code generation purposes.

Overrides:
getReceiverInterfaceName in class UnaryOperatorNode


Apache Derby V10.0 Engine Documentation - Copyright © 1997,2004 The Apache Software Foundation or its licensors, as applicable.