|
|||||||||
| Home >> All >> org >> apache >> derby >> impl >> sql >> [ compile overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
org.apache.derby.impl.sql.compile
Class UntypedNullConstantNode

java.lang.Objectorg.apache.derby.impl.sql.compile.QueryTreeNode
org.apache.derby.impl.sql.compile.ValueNode
org.apache.derby.impl.sql.compile.ConstantNode
org.apache.derby.impl.sql.compile.UntypedNullConstantNode
- All Implemented Interfaces:
- org.apache.derby.iapi.sql.compile.Visitable
- public final class UntypedNullConstantNode
- extends ConstantNode
An UntypedNullConstantNode represents a SQL NULL before it has been bound. The bind() operation will replace the UntypedNullConstantNodes with typed ConstantNodes.
| Field Summary | |
protected org.apache.derby.iapi.types.DataValueDescriptor |
value
|
| 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 | |
UntypedNullConstantNode()
Constructor for an UntypedNullConstantNode. |
|
| Method Summary | |
ValueNode |
bindExpression(FromList fromList,
SubqueryList subqueryList,
java.util.Vector aggregateVector)
Bind this expression. |
boolean |
constantExpression(PredicateList whereClause)
Return whether or not this expression tree represents a constant value. |
org.apache.derby.iapi.types.DataValueDescriptor |
convertDefaultNode(org.apache.derby.iapi.types.DataTypeDescriptor typeDescriptor)
Translate a Default node into a default value, given a type descriptor. |
(package private) void |
generateConstant(ExpressionClassBuilder acb,
org.apache.derby.iapi.services.compiler.MethodBuilder mb)
Should never be called for UntypedNullConstantNode because we shouldn't make it to generate |
void |
generateExpression(ExpressionClassBuilder acb,
org.apache.derby.iapi.services.compiler.MethodBuilder mb)
For a ConstantNode, we generate the equivalent literal value. |
ValueNode |
getClone()
Return a clone of this node. |
protected int |
getOrderableVariantType()
Return the variant type for the underlying expression. |
org.apache.derby.iapi.types.DataValueDescriptor |
getValue()
Get the value in this ConstantNode |
void |
init(java.lang.Object typeId,
java.lang.Object nullable,
java.lang.Object maximumWidth)
Initializer for non-numeric types |
boolean |
isCloneable()
Return whether or not this expression tree is cloneable. |
boolean |
isConstantExpression()
Return whether or not this expression tree represents a constant expression. |
boolean |
isNull()
Return whether or not this node represents a typed null constant. |
(package private) void |
setValue(org.apache.derby.iapi.types.DataValueDescriptor value)
Set the value in this ConstantNode. |
java.lang.String |
toString()
Convert this object to a String. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
value
protected org.apache.derby.iapi.types.DataValueDescriptor value
| Constructor Detail |
UntypedNullConstantNode
public UntypedNullConstantNode()
- Constructor for an UntypedNullConstantNode. Untyped constants
contain no state (not too surprising).
| Method Detail |
generateConstant
void generateConstant(ExpressionClassBuilder acb, org.apache.derby.iapi.services.compiler.MethodBuilder mb)
- Should never be called for UntypedNullConstantNode because
we shouldn't make it to generate
- Specified by:
generateConstantin classConstantNode
convertDefaultNode
public org.apache.derby.iapi.types.DataValueDescriptor convertDefaultNode(org.apache.derby.iapi.types.DataTypeDescriptor typeDescriptor)
- Translate a Default node into a default value, given a type descriptor.
- Overrides:
convertDefaultNodein classQueryTreeNode
bindExpression
public ValueNode bindExpression(FromList fromList, SubqueryList subqueryList, java.util.Vector aggregateVector)
- Description copied from class:
ConstantNode - Bind this expression. This means binding the sub-expressions,
as well as figuring out what the return type is for this expression.
In this case, there are no sub-expressions, and the return type
is already known, so this is just a stub.
- Overrides:
bindExpressionin classConstantNode
init
public void init(java.lang.Object typeId, java.lang.Object nullable, java.lang.Object maximumWidth) throws org.apache.derby.iapi.error.StandardException
- Initializer for non-numeric types
- Overrides:
initin classQueryTreeNode
setValue
void setValue(org.apache.derby.iapi.types.DataValueDescriptor value)
- Set the value in this ConstantNode.
getValue
public org.apache.derby.iapi.types.DataValueDescriptor getValue()
- Get the value in this ConstantNode
toString
public java.lang.String toString()
- Convert this object to a String. See comments in QueryTreeNode.java
for how this should be done for tree printing.
isCloneable
public boolean isCloneable()
- Return whether or not this expression tree is cloneable.
- Overrides:
isCloneablein classValueNode
getClone
public ValueNode getClone()
isConstantExpression
public boolean isConstantExpression()
- Return whether or not this expression tree represents a constant expression.
- Overrides:
isConstantExpressionin classValueNode
constantExpression
public boolean constantExpression(PredicateList whereClause)
- Description copied from class:
ValueNode - Return whether or not this expression tree represents a constant value.
In this case, "constant" means that it will always evaluate to the
same thing, even if it includes columns. A column is constant if it
is compared to a constant expression.
- Overrides:
constantExpressionin classValueNode
generateExpression
public void generateExpression(ExpressionClassBuilder acb, org.apache.derby.iapi.services.compiler.MethodBuilder mb) throws org.apache.derby.iapi.error.StandardException
- For a ConstantNode, we generate the equivalent literal value.
A null is generated as a Null value cast to the type of
the constant node.
The subtypes of ConstantNode generate literal expressions
for non-null values.
- Overrides:
generateExpressionin classValueNode
isNull
public boolean isNull()
- Return whether or not this node represents a typed null constant.
getOrderableVariantType
protected int getOrderableVariantType()
- Return the variant type for the underlying expression.
The variant type can be:
VARIANT - variant within a scan
(method calls and non-static field access)
SCAN_INVARIANT - invariant within a scan
(column references from outer tables)
QUERY_INVARIANT - invariant within the life of a query
VARIANT - immutable
- Overrides:
getOrderableVariantTypein classValueNode
|
|||||||||
| Home >> All >> org >> apache >> derby >> impl >> sql >> [ compile overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
JAVADOC