| Modifier and Type | Field and Description |
|---|---|
| pack-priv static final int | |
| pack-priv static final int | |
| pack-priv static final int | |
| pack-priv static final int | |
| pack-priv final int | kind
Hides org. |
| private static final String[] | |
| private static final String[] |
| Access | Constructor and Description |
|---|---|
| pack-priv | UnaryArithmeticOperatorNode(ValueNode
The operand of the node operand, int unary operator identity kind, ContextManager context manager cm)
|
| Modifier and Type | Method and Description |
|---|---|
| pack-priv ValueNode | Returns: The new top of the expression tree.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. Bind this operator |
| pack-priv void | bindParameter()
Overrides org. For SQRT and ABS the parameter becomes a DOUBLE. |
| private void | |
| private void | |
| 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. Do code generation for this unary plus operator |
| public boolean | |
| pack-priv boolean | isSameNodeKind(ValueNode
The other value node whose kind we want to compare with. o)Overrides org. Some node classes represent several logical node types (to reduce footprint), which we call kinds. |
| public boolean | requiresTypeFromContext()
Overrides org. Unary + and - require their type to be set if they wrap another node (e.g. a parameter) that requires type from its context. |
| pack-priv void | setType(DataTypeDescriptor
The DataTypeServices to set in this
ValueNode descriptor)Overrides org. We are overwriting this method here because for -?/+?, we now know the type of these dynamic parameters and hence we can do the parameter binding. |
| K_ABS | back to summary |
|---|---|
| pack-priv static final int K_ABS | |
| K_MINUS | back to summary |
|---|---|
| pack-priv static final int K_MINUS | |
| K_PLUS | back to summary |
|---|---|
| pack-priv static final int K_PLUS | |
| K_SQRT | back to summary |
|---|---|
| pack-priv static final int K_SQRT | |
| kind | back to summary |
|---|---|
| pack-priv final int kind Hides org. This class is used to hold logically different objects for
space efficiency. | |
| UNARY_METHODS | back to summary |
|---|---|
| private static final String[] UNARY_METHODS | |
| UNARY_OPERATORS | back to summary |
|---|---|
| private static final String[] UNARY_OPERATORS | |
| UnaryArithmeticOperatorNode | back to summary |
|---|---|
pack-priv UnaryArithmeticOperatorNode(ValueNode operand, int kind, ContextManager cm) throws StandardException
| |
| bindExpression | back to summary |
|---|---|
| pack-priv ValueNode bindExpression(FromList fromList, SubqueryList subqueryList, List<AggregateNode> aggregates) throws StandardException Overrides org. Bind this operator
| |
| bindParameter | back to summary |
|---|---|
| pack-priv void bindParameter() throws StandardException Overrides org. For SQRT and ABS the parameter becomes a DOUBLE. For unary + and - no change is made to the underlying node. Once this node's type is set using setType, then the underlying node will have its type set.
| |
| bindSQRTABS | back to summary |
|---|---|
| private void bindSQRTABS() throws StandardException Bind SQRT or ABS
| |
| checkOperandIsNumeric | back to summary |
|---|---|
| private void checkOperandIsNumeric(TypeId operandType) throws StandardException Only called for Unary +/-. | |
| generateExpression | back to summary |
|---|---|
| pack-priv void generateExpression(ExpressionClassBuilder acb, MethodBuilder mb) throws StandardException Overrides org. Do code generation for this unary plus operator
| |
| isParameterNode | back to summary |
|---|---|
| public boolean isParameterNode() Overrides org. A +? or a -? is considered a parameter.
| |
| isSameNodeKind | back to summary |
|---|---|
| pack-priv boolean isSameNodeKind(ValueNode o) Overrides org. Doc from org. Some node classes represent several logical node types (to reduce
footprint), which we call kinds.
This means that implementations of | |
| requiresTypeFromContext | back to summary |
|---|---|
| public boolean requiresTypeFromContext() Overrides org. Unary + and - require their type to be set if they wrap another node (e.g. a parameter) that requires type from its context.
| |
| setType | back to summary |
|---|---|
| pack-priv void setType(DataTypeDescriptor descriptor) throws StandardException Overrides org. We are overwriting this method here because for -?/+?, we now know the type of these dynamic parameters and hence we can do the parameter binding. The setType method will call the binding code after setting the type of the parameter
| |