Top Description Fields Constructors Methods
org.apache.derby.impl.sql.compile

public final Class DB2LengthOperatorNode

extends UnaryOperatorNode
Class Inheritance
Imports
java.lang.reflect.Modifier, java.sql.Types, java.util.List, org.apache.derby.shared.common.error.StandardException, org.apache.derby.shared.common.reference.ClassName, .SQLState, org.apache.derby.iapi.services.classfile.VMOpcode, org.apache.derby.iapi.services.compiler.LocalField, .MethodBuilder, org.apache.derby.iapi.services.context.ContextManager, org.apache.derby.iapi.types.DataTypeDescriptor, .TypeId

This node represents a unary DB2 compatible length operator

Field Summary

Inherited from org.apache.derby.impl.sql.compile.UnaryOperatorNode:
K_BASEK_XMLPARSEK_XMLSERIALIZEkindmethodNameoperandoperatorreceiverInterfaceTyperesultInterfaceTypeUnaryArgTypesUnaryMethodNamesUnaryOperatorsUnaryResultTypes

Constructor Summary

AccessConstructor and Description
pack-priv
DB2LengthOperatorNode(ValueNode
The operand of the node
operand
,
ContextManager
context manager
cm
)

Method Summary

Modifier and TypeMethod and Description
pack-priv ValueNode

Returns:

The new top of the expression tree.
bindExpression
(FromList
The query's FROM list
fromList
,
SubqueryList
The subquery list being built as we find SubqueryNodes
subqueryList
,
List<AggregateNode>
The aggregate list being built as we find AggregateNodes
aggregates
)

Overrides org.apache.derby.impl.sql.compile.UnaryOperatorNode.bindExpression.

Bind this operator

pack-priv void
generateExpression(ExpressionClassBuilder
The ExpressionClassBuilder for the class we're generating
acb
,
MethodBuilder
The method the expression will go into
mb
)

Overrides org.apache.derby.impl.sql.compile.UnaryOperatorNode.generateExpression.

Do code generation for this unary operator.

private int
private int
pack-priv String
Inherited from org.apache.derby.impl.sql.compile.UnaryOperatorNode:
acceptChildrenaddXmlOpMethodParamsbindOperandbindParametercategorizeconstantExpressiongetOperandgetOperatorStringgetOrderableVariantTypegetParameterOperandisConstantExpressionisEquivalentisSameNodeKindpreprocessprintSubNodesremapColumnReferencesToExpressionssetMethodNamesetOperatortoString

Constructor Detail

DB2LengthOperatorNodeback to summary
pack-priv DB2LengthOperatorNode(ValueNode operand, ContextManager cm) throws StandardException
Parameters
operand:ValueNode

The operand of the node

cm:ContextManager

context manager

Method Detail

bindExpressionback to summary
pack-priv ValueNode bindExpression(FromList fromList, SubqueryList subqueryList, List<AggregateNode> aggregates) throws StandardException

Overrides org.apache.derby.impl.sql.compile.UnaryOperatorNode.bindExpression.

Bind this operator

Parameters
fromList:FromList

The query's FROM list

subqueryList:SubqueryList

The subquery list being built as we find SubqueryNodes

aggregates:List<AggregateNode>

The aggregate list being built as we find AggregateNodes

Returns:ValueNode

The new top of the expression tree.

Annotations
@Override
Exceptions
StandardException:
Thrown on error
generateExpressionback to summary
pack-priv void generateExpression(ExpressionClassBuilder acb, MethodBuilder mb) throws StandardException

Overrides org.apache.derby.impl.sql.compile.UnaryOperatorNode.generateExpression.

Do code generation for this unary operator.

Parameters
acb:ExpressionClassBuilder

The ExpressionClassBuilder for the class we're generating

mb:MethodBuilder

The method the expression will go into

Annotations
@Override
Exceptions
StandardException:
Thrown on error
getConstantLengthback to summary
private int getConstantLength() throws StandardException
getConstantNodeLengthback to summary
private int getConstantNodeLength() throws StandardException
getReceiverInterfaceNameback to summary
pack-priv String getReceiverInterfaceName()

Overrides org.apache.derby.impl.sql.compile.UnaryOperatorNode.getReceiverInterfaceName.

This is a length operator node. Overrides this method in UnaryOperatorNode for code generation purposes.

Annotations
@Override