| Modifier and Type | Field and Description |
|---|---|
| private static final String | |
| pack-priv static final int | |
| pack-priv static final int | |
| pack-priv final int | kind
Hides org. |
| private static final String |
| Access | Constructor and Description |
|---|---|
| pack-priv | UnaryDateTimestampOperatorNode(ValueNode
The operand of the function operand, int The kind of the result, Date or Timestamp. kind, ContextManager context manager cm)
|
| Modifier and Type | Method and Description |
|---|---|
| pack-priv ValueNode | Returns: The new top of the expression tree.The FROM list for the query this
expression is in, for binding columns. 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. Called by UnaryOperatorNode.bindExpression. |
| 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 operator. |
| private void | |
| 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. |
| DATE_METHOD_NAME | back to summary |
|---|---|
| private static final String DATE_METHOD_NAME | |
| K_DATE | back to summary |
|---|---|
| pack-priv static final int K_DATE | |
| K_TIMESTAMP | back to summary |
|---|---|
| pack-priv static final int K_TIMESTAMP | |
| kind | back to summary |
|---|---|
| pack-priv final int kind Hides org. This class is used to hold logically different objects for
space efficiency. | |
| TIMESTAMP_METHOD_NAME | back to summary |
|---|---|
| private static final String TIMESTAMP_METHOD_NAME | |
| UnaryDateTimestampOperatorNode | back to summary |
|---|---|
pack-priv UnaryDateTimestampOperatorNode(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. Called by UnaryOperatorNode.bindExpression. If the operand is a constant then evaluate the function at compile time. Otherwise, if the operand input type is the same as the output type then discard this node altogether. If the function is "date" and the input is a timestamp then change this node to a cast.
| |
| generateExpression | back to summary |
|---|---|
| pack-priv void generateExpression(ExpressionClassBuilder acb, MethodBuilder mb) throws StandardException Overrides org. Do code generation for this unary operator.
| |
| invalidOperandType | back to summary |
|---|---|
| private void invalidOperandType() throws StandardException | |
| 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 | |