|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.derby.impl.sql.compile.BaseTypeCompiler
This is the base implementation of TypeCompiler
Field Summary | |
private TypeId |
correspondingTypeId
|
Fields inherited from interface org.apache.derby.iapi.sql.compile.TypeCompiler |
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 Summary | |
(package private) |
BaseTypeCompiler()
|
Method Summary | |
protected java.lang.String |
dataValueMethodName()
Return the method name to get a Derby DataValueDescriptor object of the correct type. |
void |
generateDataValue(MethodBuilder mb,
LocalField field)
Generate the code necessary to produce a SQL value based on a value. |
void |
generateNull(MethodBuilder mb)
Generate the code necessary to produce a SQL null of the appropriate type. |
java.lang.String |
getMatchingNationalCharTypeName()
Get the name of the matching national char type. |
java.lang.String |
getPrimitiveMethodName()
Get the method name for getting out the corresponding primitive Java type. |
protected int |
getStoredFormatIdFromTypeId()
Get the StoredFormatId from the corresponding TypeId. |
protected TypeCompiler |
getTypeCompiler(TypeId typeId)
Get the TypeCompiler that corresponds to the given TypeId. |
protected TypeId |
getTypeId()
Get the TypeId that corresponds to this TypeCompiler. |
protected abstract java.lang.String |
nullMethodName()
|
boolean |
numberComparable(TypeId otherType,
boolean forEquals,
ClassFactory cf)
Tell whether this numeric type can be compared to the given type. |
boolean |
numberConvertible(TypeId otherType,
boolean forDataTypeFunction)
Tell whether this numeric type can be converted to the given type. |
boolean |
numberStorable(TypeId thisType,
TypeId otherType,
ClassFactory cf)
Tell whether this numeric type can be stored into from the given type. |
DataTypeDescriptor |
resolveArithmeticOperation(DataTypeDescriptor leftType,
DataTypeDescriptor rightType,
java.lang.String operator)
Type resolution methods on binary operators |
(package private) void |
setTypeId(TypeId typeId)
Set the TypeCompiler that corresponds to the given TypeId. |
protected boolean |
userTypeStorable(TypeId thisType,
TypeId otherType,
ClassFactory cf)
Determine whether thisType is storable in otherType due to otherType being a user type. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.apache.derby.iapi.sql.compile.TypeCompiler |
comparable, compatible, convertible, getCastToCharWidth, getCorrespondingPrimitiveTypeName, interfaceName, storable |
Field Detail |
private TypeId correspondingTypeId
Constructor Detail |
BaseTypeCompiler()
Method Detail |
public java.lang.String getPrimitiveMethodName()
getPrimitiveMethodName
in interface TypeCompiler
public java.lang.String getMatchingNationalCharTypeName()
TypeCompiler
getMatchingNationalCharTypeName
in interface TypeCompiler
TypeCompiler.getMatchingNationalCharTypeName()
public DataTypeDescriptor resolveArithmeticOperation(DataTypeDescriptor leftType, DataTypeDescriptor rightType, java.lang.String operator) throws StandardException
TypeCompiler
resolveArithmeticOperation
in interface TypeCompiler
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(org.apache.derby.iapi.types.DataTypeDescriptor, org.apache.derby.iapi.types.DataTypeDescriptor, java.lang.String)
public void generateNull(MethodBuilder mb)
TypeCompiler
generateNull
in interface TypeCompiler
mb
- The method to put the expression inTypeCompiler.generateNull(org.apache.derby.iapi.services.compiler.MethodBuilder)
public void generateDataValue(MethodBuilder mb, LocalField field)
TypeCompiler
generateDataValue
in interface TypeCompiler
TypeCompiler.generateDataValue(org.apache.derby.iapi.services.compiler.MethodBuilder, org.apache.derby.iapi.services.compiler.LocalField)
protected abstract java.lang.String nullMethodName()
protected java.lang.String dataValueMethodName()
protected boolean userTypeStorable(TypeId thisType, TypeId otherType, ClassFactory cf)
thisType
- The TypeId of the value to be storedotherType
- The TypeId of the value to be stored in
public boolean numberComparable(TypeId otherType, boolean forEquals, ClassFactory cf)
otherType
- The TypeId of the other type.public boolean numberConvertible(TypeId otherType, boolean forDataTypeFunction)
otherType
- The TypeId of the other type.forDataTypeFunction
- was this called from a scalarFunction like
CHAR() or DOUBLE()public boolean numberStorable(TypeId thisType, TypeId otherType, ClassFactory cf)
thisType
- The TypeId of this typeotherType
- The TypeId of the other type.cf
- A ClassFactoryprotected TypeId getTypeId()
protected TypeCompiler getTypeCompiler(TypeId typeId)
void setTypeId(TypeId typeId)
protected int getStoredFormatIdFromTypeId()
|
Built on Mon 2007-06-04 09:58:47+0400, from revision ??? | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |