Class Type
java.lang.Object
org.apache.xalan.xsltc.compiler.util.Type
- All Implemented Interfaces:
org.apache.bcel.generic.InstructionConstants,Constants
- Direct Known Subclasses:
BooleanType,MethodType,NodeSetType,NodeType,NumberType,ObjectType,ReferenceType,ResultTreeType,StringType,VoidType
- Author:
- Jacek Ambroziak, Santiago Pericas-Geertsen, Morten Jorgensen
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.bcel.generic.InstructionConstants
org.apache.bcel.generic.InstructionConstants.Clinit -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Typestatic final Typestatic final Typestatic final Typestatic final Typestatic final Typestatic final Typestatic final Typestatic final Typestatic final Typestatic final Typestatic final Typestatic final Typestatic final Typestatic final Typestatic final TypeFields inherited from interface org.apache.xalan.xsltc.compiler.Constants
ABSOLUTE_ITERATOR, ACC_FINAL, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_SUPER, ADD_ATTRIBUTE, ADD_ATTRIBUTE_SIG, ADD_ITERATOR, ADD_ITERATOR_SIG, ADD_PARAMETER, ADD_PARAMETER_SIG, APPLY_TEMPLATES, ATTR_SET_SIG, ATTRIBUTE_LIST_FIELD, ATTRIBUTE_LIST_IMPL_CLASS, ATTRIBUTE_LIST_IMPL_SIG, ATTRIBUTES_SIG, BASIS_LIBRARY_CLASS, BOOLEAN_CLASS, BOOLEAN_VALUE, BOOLEAN_VALUE_SIG, CACHED_NODE_LIST_ITERATOR_CLASS, CHARACTERS, CHARACTERS_SIG, CHARACTERSW, CHARACTERSW_SIG, CLEAR_ATTRIBUTES, CLEAR_ATTRIBUTES_SIG, COLLATOR_CLASS, COLLATOR_SIG, COMPILER_PACKAGE, CURRENT_NODE_LIST_FILTER, CURRENT_NODE_LIST_FILTER_SIG, CURRENT_NODE_LIST_ITERATOR, CURRENT_NODE_LIST_ITERATOR_SIG, DEFAULT_NODE_COUNTER, DEFAULT_NODE_COUNTER_SIG, DOCUMENT_PNAME, DOM_ADAPTER_CLASS, DOM_ADAPTER_SIG, DOM_FIELD, DOM_IMPL, DOM_IMPL_CLASS, DOM_IMPL_SIG, DOM_INTF, DOM_INTF_SIG, DOM_PNAME, DOUBLE_CLASS, DOUBLE_SIG, DOUBLE_VALUE, DOUBLE_VALUE_SIG, DUP_FILTERED_ITERATOR, EMPTYATTR_FIELD, EMPTYSTRING, ERROR, EXPAND_STYLESHEET_QNAME_REF, EXPAND_STYLESHEET_QNAME_SIG, FALLBACK_CLASS, FATAL, FILTER_INTERFACE, FILTER_INTERFACE_SIG, FILTER_ITERATOR, FILTER_STEP_ITERATOR, FORMAT_SYMBOLS_FIELD, GET_ATTRIBUTE_VALUE, GET_ATTRIBUTE_VALUE_SIG, GET_CHILDREN, GET_CHILDREN_SIG, GET_ELEMENT_VALUE, GET_ELEMENT_VALUE_SIG, GET_ITERATOR_SIG, GET_NODE_NAME, GET_NODE_NAME_SIG, GET_NODE_TYPE, GET_NODE_TYPE_SIG, GET_NODE_VALUE, GET_NODE_VALUE_ITERATOR, GET_NODE_VALUE_ITERATOR_SIG, GET_NODE_VALUE_SIG, GET_PARAMETER, GET_PARAMETER_SIG, GET_PARENT, GET_PARENT_SIG, GET_TYPED_CHILDREN, GET_TYPED_CHILDREN_SIG, GET_UNPARSED_ENTITY_URI, GET_UNPARSED_ENTITY_URI_SIG, HAS_ATTRIBUTE, HAS_ATTRIBUTE_SIG, HASIDCALL_INDEX, HASIDCALL_INDEX_SIG, INT_VALUE, INT_VALUE_SIG, INTEGER_CLASS, INTEGER_SIG, INTERNAL, INVOKE_METHOD, ITERATOR_FIELD_SIG, ITERATOR_PNAME, KEY_INDEX_CLASS, KEY_INDEX_ITERATOR_SIG, KEY_INDEX_SIG, LAST_INDEX, LOAD_DOCUMENT_CLASS, LOCALE_CLASS, LOCALE_SIG, LOOKUP_STYLESHEET_QNAME_NS_REF, LOOKUP_STYLESHEET_QNAME_NS_SIG, MAKE_NODE, MAKE_NODE_LIST, MAKE_NODE_LIST_SIG, MAKE_NODE_LIST_SIG2, MAKE_NODE_SIG, MAKE_NODE_SIG2, MATCHING_ITERATOR, MATH_CLASS, MULTI_DOM_CLASS, MULTI_DOM_SIG, NAMES_INDEX, NAMES_INDEX_SIG, NAMESPACE_FEATURE, NAMESPACE_INDEX, NAMESPACE_INDEX_SIG, NEXT, NEXT_SIG, NEXTID, NODE, NODE_COUNTER, NODE_COUNTER_SIG, NODE_FIELD, NODE_FIELD_SIG, NODE_ITERATOR, NODE_ITERATOR_BASE, NODE_ITERATOR_SIG, NODE_PNAME, NODE_SIG, NODE_SORT_FACTORY, NODE_SORT_FACTORY_SIG, NODE_SORT_RECORD, NODE_SORT_RECORD_SIG, NS_ANCESTORS_INDEX_SIG, NTH_ITERATOR_CLASS, OBJECT_CLASS, OBJECT_SIG, ORDER_ITERATOR, ORDER_ITERATOR_SIG, OUTPUT_BASE, OUTPUT_HANDLER, OUTPUT_HANDLER_SIG, POP_PARAM_FRAME, POP_PARAM_FRAME_SIG, POSITION_INDEX, PREFIX_URIS_ARRAY_SIG, PREFIX_URIS_IDX_SIG, PUSH_PARAM_FRAME, PUSH_PARAM_FRAME_SIG, REDIRECT_URI, RESET, RESET_SIG, RTF_INITIAL_SIZE, RUNTIME_NODE_CLASS, RUNTIME_PACKAGE, SAX_IMPL, SAX_IMPL_CLASS, SAX_IMPL_SIG, SET_START_NODE, SET_START_NODE_SIG, SINGLETON_ITERATOR, SORT_ITERATOR, SORT_ITERATOR_SIG, STATIC_CHAR_DATA_FIELD, STATIC_CHAR_DATA_FIELD_SIG, STATIC_NAMES_ARRAY_FIELD, STATIC_NAMESPACE_ARRAY_FIELD, STATIC_NS_ANCESTORS_ARRAY_FIELD, STATIC_PREFIX_URIS_ARRAY_FIELD, STATIC_PREFIX_URIS_IDX_ARRAY_FIELD, STATIC_TYPES_ARRAY_FIELD, STATIC_URIS_ARRAY_FIELD, STEP_ITERATOR_CLASS, STREAM_XML_OUTPUT, STRING, STRING_BUFFER_CLASS, STRING_BUFFER_SIG, STRING_CLASS, STRING_SIG, STRING_TO_INT, STRING_TO_INT_SIG, STRING_TO_REAL, STRING_TO_REAL_SIG, STRING_VALUE_HANDLER, STRING_VALUE_HANDLER_SIG, STRING_WRITER, STRIP_SPACE, STRIP_SPACE_INTF, STRIP_SPACE_PARAMS, STRIP_SPACE_SIG, TRANSLET_CLASS, TRANSLET_FIELD, TRANSLET_FIELD_SIG, TRANSLET_INTF, TRANSLET_INTF_SIG, TRANSLET_OUTPUT_BASE, TRANSLET_OUTPUT_INTERFACE, TRANSLET_OUTPUT_PNAME, TRANSLET_OUTPUT_SIG, TRANSLET_PNAME, TRANSLET_SIG, TRANSLET_URI, TRANSLET_VERSION_INDEX, TRANSLET_VERSION_INDEX_SIG, TYPES_INDEX, TYPES_INDEX_SIG, UNION_ITERATOR_CLASS, UNION_ITERATOR_SIG, UNSUPPORTED, URIS_INDEX, URIS_INDEX_SIG, WARNING, WRITER_SIG, XHTML_URI, XMLNS_PREFIX, XMLNS_STRING, XMLNS_URI, XSLT_PACKAGE, XSLT_URIFields inherited from interface org.apache.bcel.generic.InstructionConstants
AALOAD, AASTORE, ACONST_NULL, ALOAD_0, ALOAD_1, ALOAD_2, ARETURN, ARRAYLENGTH, ASTORE_0, ASTORE_1, ASTORE_2, ATHROW, BALOAD, BASTORE, bla, CALOAD, CASTORE, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DMUL, DNEG, DREM, DRETURN, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FMUL, FNEG, FREM, FRETURN, FSUB, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, ILOAD_0, ILOAD_1, ILOAD_2, IMUL, INEG, INSTRUCTIONS, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE_0, ISTORE_1, ISTORE_2, ISUB, IUSHR, IXOR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDIV, LMUL, LNEG, LOR, LREM, LRETURN, LSHL, LSHR, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, NOP, POP, POP2, RETURN, SALOAD, SASTORE, SWAP, THIS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.bcel.generic.InstructionADD()org.apache.bcel.generic.InstructionCMP(boolean less) intdistanceTo(Type type) Returns the distance between two types.org.apache.bcel.generic.InstructionDIV()org.apache.bcel.generic.InstructionDUP()org.apache.bcel.generic.BranchInstructionGE(boolean tozero) Returns the class name of an internal type's external representation.org.apache.bcel.generic.BranchInstructionGT(boolean tozero) abstract booleanidenticalTo(Type other) Returns true if this and other are identical types.booleanReturns true if this type has no object representaion.booleanisNumber()Returns true if this type is a numeric type.booleanisSimple()Returns true if this type is a simple type.org.apache.bcel.generic.BranchInstructionLE(boolean tozero) org.apache.bcel.generic.InstructionLOAD(int slot) org.apache.bcel.generic.BranchInstructionLT(boolean tozero) org.apache.bcel.generic.InstructionMUL()org.apache.bcel.generic.InstructionNEG()static TypenewObjectType(Class clazz) Factory method to instantiate object types.static TypenewObjectType(String javaClassName) Factory method to instantiate object types.org.apache.bcel.generic.InstructionPOP()org.apache.bcel.generic.InstructionREM()org.apache.bcel.generic.InstructionSTORE(int slot) org.apache.bcel.generic.InstructionSUB()abstract org.apache.bcel.generic.TypetoJCType()abstract StringReturns the signature of an internal type's external representation.abstract StringtoString()Returns a string representation of this type.voidtranslateBox(ClassGenerator classGen, MethodGenerator methodGen) Translates an object of this type to its boxed representation.voidtranslateFrom(ClassGenerator classGen, MethodGenerator methodGen, Class clazz) Translates an external (Java) type denoted byclazzto an object of this type.voidtranslateTo(ClassGenerator classGen, MethodGenerator methodGen, Class clazz) Translates an object of this type to the external (Java) type denoted byclazz.voidtranslateTo(ClassGenerator classGen, MethodGenerator methodGen, Type type) Translates an object of this type to an object of typetype.translateToDesynthesized(ClassGenerator classGen, MethodGenerator methodGen, BooleanType type) Translates an object of this type to an non-synthesized boolean.translateToDesynthesized(ClassGenerator classGen, MethodGenerator methodGen, Type type) Translates object of this type to an object of typetype.voidtranslateUnBox(ClassGenerator classGen, MethodGenerator methodGen) Translates an object of this type to its unboxed representation.
-
Field Details
-
Int
-
Real
-
Boolean
-
NodeSet
-
String
-
ResultTree
-
Reference
-
Void
-
Object
-
Node
-
Root
-
Element
-
Attribute
-
Text
-
Comment
-
Processing_Instruction
-
-
Constructor Details
-
Type
public Type()
-
-
Method Details
-
newObjectType
Factory method to instantiate object types. Returns a pre-defined instance for "java.lang.Object" and "java.lang.String". -
newObjectType
Factory method to instantiate object types. Returns a pre-defined instance for java.lang.Object.class and java.lang.String.class. -
toString
Returns a string representation of this type. -
identicalTo
Returns true if this and other are identical types. -
isNumber
public boolean isNumber()Returns true if this type is a numeric type. Redefined in NumberType. -
implementedAsMethod
public boolean implementedAsMethod()Returns true if this type has no object representaion. Redefined in ResultTreeType. -
isSimple
public boolean isSimple()Returns true if this type is a simple type. Redefined in NumberType, BooleanType and StringType. -
toJCType
public abstract org.apache.bcel.generic.Type toJCType() -
distanceTo
Returns the distance between two types. This measure is used to select overloaded functions/operators. This method is typically redefined by the subclasses. -
toSignature
Returns the signature of an internal type's external representation. -
translateTo
Translates an object of this type to an object of typetype. Expects an object of the former type and pushes an object of the latter. -
translateToDesynthesized
public FlowList translateToDesynthesized(ClassGenerator classGen, MethodGenerator methodGen, Type type) Translates object of this type to an object of typetype. Expects an object of the former type and pushes an object of the latter if not boolean. If typetypeis boolean then a branchhandle list (to be appended to the false list) is returned. -
translateToDesynthesized
public FlowList translateToDesynthesized(ClassGenerator classGen, MethodGenerator methodGen, BooleanType type) Translates an object of this type to an non-synthesized boolean. It does not push a 0 or a 1 but instead returns branchhandle list to be appended to the false list. -
translateTo
Translates an object of this type to the external (Java) type denoted byclazz. This method is used to translate parameters when external functions are called. -
translateFrom
Translates an external (Java) type denoted byclazzto an object of this type. This method is used to translate return values when external functions are called. -
translateBox
Translates an object of this type to its boxed representation. -
translateUnBox
Translates an object of this type to its unboxed representation. -
getClassName
Returns the class name of an internal type's external representation. -
ADD
public org.apache.bcel.generic.Instruction ADD() -
SUB
public org.apache.bcel.generic.Instruction SUB() -
MUL
public org.apache.bcel.generic.Instruction MUL() -
DIV
public org.apache.bcel.generic.Instruction DIV() -
REM
public org.apache.bcel.generic.Instruction REM() -
NEG
public org.apache.bcel.generic.Instruction NEG() -
LOAD
public org.apache.bcel.generic.Instruction LOAD(int slot) -
STORE
public org.apache.bcel.generic.Instruction STORE(int slot) -
POP
public org.apache.bcel.generic.Instruction POP() -
GT
public org.apache.bcel.generic.BranchInstruction GT(boolean tozero) -
GE
public org.apache.bcel.generic.BranchInstruction GE(boolean tozero) -
LT
public org.apache.bcel.generic.BranchInstruction LT(boolean tozero) -
LE
public org.apache.bcel.generic.BranchInstruction LE(boolean tozero) -
CMP
public org.apache.bcel.generic.Instruction CMP(boolean less) -
DUP
public org.apache.bcel.generic.Instruction DUP()
-