public class DateTypeCompiler extends BaseTypeCompiler
correspondingTypeId
AVG_OP, BOOLEAN_MAXWIDTH_AS_CHAR, DEFAULT_DECIMAL_PRECISION, DEFAULT_DECIMAL_SCALE, DIVIDE_OP, DOUBLE_MAXWIDTH_AS_CHAR, INT_MAXWIDTH_AS_CHAR, LONGINT_MAXWIDTH_AS_CHAR, MAX_DECIMAL_PRECISION_SCALE, MINUS_OP, MOD_OP, PLUS_OP, REAL_MAXWIDTH_AS_CHAR, SMALLINT_MAXWIDTH_AS_CHAR, SUM_OP, TIMES_OP, TINYINT_MAXWIDTH_AS_CHAR
Constructor and Description |
---|
DateTypeCompiler() |
Modifier and Type | Method and Description |
---|---|
boolean |
compatible(TypeId otherType)
Tell whether this type (date) is compatible with the given type.
|
boolean |
convertible(TypeId otherType,
boolean forDataTypeFunction)
User types are convertible to other user types only if
(for now) they are the same type and are being used to
implement some JDBC type.
|
int |
getCastToCharWidth(DataTypeDescriptor dts)
Return the maximum width for this data type when cast to a char type.
|
java.lang.String |
getCorrespondingPrimitiveTypeName()
Get the name of the corresponding Java type.
|
java.lang.String |
interfaceName()
Get the name of the interface for this type.
|
(package private) java.lang.String |
nullMethodName()
Return the method name to get a Derby DataValueDescriptor
object of the correct type set to SQL NULL.
|
DataTypeDescriptor |
resolveArithmeticOperation(DataTypeDescriptor leftType,
DataTypeDescriptor rightType,
java.lang.String operator)
Type resolution methods on binary operators
|
boolean |
storable(TypeId otherType,
ClassFactory cf)
User types are storable into other user types that they
are assignable to.
|
dataValueMethodName, generateDataValue, generateNull, getPrimitiveMethodName, getStoredFormatIdFromTypeId, getTypeCompiler, getTypeId, numberConvertible, numberStorable, pushCollationForDataValue, setTypeId, userTypeStorable
public boolean convertible(TypeId otherType, boolean forDataTypeFunction)
otherType
- The CompilationType of the other type to compare
this type toforDataTypeFunction
- true if this is a type function that
requires more liberal behavior (e.g DOUBLE can convert a char but
you cannot cast a CHAR to double.TypeCompiler.convertible(com.splicemachine.db.iapi.types.TypeId, boolean)
public boolean compatible(TypeId otherType)
otherType
- The TypeId of the other type.public boolean storable(TypeId otherType, ClassFactory cf)
otherType
- the type of the instance to store into this type.cf
- A ClassFactorypublic java.lang.String interfaceName()
TypeCompiler
TypeCompiler.interfaceName()
public java.lang.String getCorrespondingPrimitiveTypeName()
TypeCompiler
TypeCompiler.getCorrespondingPrimitiveTypeName()
public int getCastToCharWidth(DataTypeDescriptor dts)
TypeCompiler
dts
- The associated DataTypeDescriptor for this TypeId.TypeCompiler.getCastToCharWidth(com.splicemachine.db.iapi.types.DataTypeDescriptor)
java.lang.String nullMethodName()
BaseTypeCompiler
nullMethodName
in class BaseTypeCompiler
public DataTypeDescriptor resolveArithmeticOperation(DataTypeDescriptor leftType, DataTypeDescriptor rightType, java.lang.String operator) throws StandardException
TypeCompiler
resolveArithmeticOperation
in interface TypeCompiler
resolveArithmeticOperation
in class BaseTypeCompiler
leftType
- The type of the left parameterrightType
- The type of the right parameteroperator
- The name of the operator (e.g. "+").StandardException
- Thrown on errorTypeCompiler.resolveArithmeticOperation(com.splicemachine.db.iapi.types.DataTypeDescriptor, com.splicemachine.db.iapi.types.DataTypeDescriptor, java.lang.String)