Class RealType
java.lang.Object
org.apache.xalan.xsltc.compiler.util.Type
org.apache.xalan.xsltc.compiler.util.NumberType
org.apache.xalan.xsltc.compiler.util.RealType
- All Implemented Interfaces:
org.apache.bcel.generic.InstructionConstants,Constants
- Author:
- Jacek Ambroziak, Santiago Pericas-Geertsen
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.bcel.generic.InstructionConstants
org.apache.bcel.generic.InstructionConstants.Clinit -
Field Summary
Fields inherited from class org.apache.xalan.xsltc.compiler.util.Type
Attribute, Boolean, Comment, Element, Int, Node, NodeSet, Object, Processing_Instruction, Real, Reference, ResultTree, Root, String, Text, VoidFields 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 -
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()booleanidenticalTo(Type other) Returns true if this and other are identical types.org.apache.bcel.generic.InstructionLOAD(int slot) org.apache.bcel.generic.InstructionMUL()org.apache.bcel.generic.InstructionNEG()org.apache.bcel.generic.InstructionPOP()org.apache.bcel.generic.InstructionREM()org.apache.bcel.generic.InstructionSTORE(int slot) org.apache.bcel.generic.InstructionSUB()org.apache.bcel.generic.TypetoJCType()Returns the signature of an internal type's external representation.toString()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 (primitive) Java type into a real.voidtranslateTo(ClassGenerator classGen, MethodGenerator methodGen, Class clazz) Translates a real into the Java type denoted byclazz.voidtranslateTo(ClassGenerator classGen, MethodGenerator methodGen, BooleanType type) Expects a real on the stack and pushes a 0 if that number is 0.0 and a 1 otherwise.voidtranslateTo(ClassGenerator classGen, MethodGenerator methodGen, IntType type) Expects a real on the stack and pushes a truncated integer valuevoidtranslateTo(ClassGenerator classGen, MethodGenerator methodGen, ReferenceType type) Expects a double on the stack and pushes a boxed double.voidtranslateTo(ClassGenerator classGen, MethodGenerator methodGen, StringType type) Expects a real on the stack and pushes its string value by callingDouble.toString(double d).voidtranslateTo(ClassGenerator classGen, MethodGenerator methodGen, Type type) Translates a real into an object of internal typetype.translateToDesynthesized(ClassGenerator classGen, MethodGenerator methodGen, BooleanType type) Translates a real into a non-synthesized boolean.voidtranslateUnBox(ClassGenerator classGen, MethodGenerator methodGen) Translates an object of this type to its unboxed representation.Methods inherited from class org.apache.xalan.xsltc.compiler.util.NumberType
isNumber, isSimpleMethods inherited from class org.apache.xalan.xsltc.compiler.util.Type
GE, getClassName, GT, implementedAsMethod, LE, LT, newObjectType, newObjectType, translateToDesynthesized
-
Method Details
-
toString
Description copied from class:TypeReturns a string representation of this type. -
identicalTo
Description copied from class:TypeReturns true if this and other are identical types.- Specified by:
identicalToin classType
-
toSignature
Description copied from class:TypeReturns the signature of an internal type's external representation.- Specified by:
toSignaturein classType
-
toJCType
public org.apache.bcel.generic.Type toJCType() -
distanceTo
Description copied from class:TypeReturns the distance between two types. This measure is used to select overloaded functions/operators. This method is typically redefined by the subclasses.- Overrides:
distanceToin classType- See Also:
-
translateTo
Translates a real into an object of internal typetype. The translation to int is undefined since reals are never converted to ints. -
translateTo
Expects a real on the stack and pushes its string value by callingDouble.toString(double d). -
translateTo
Expects a real on the stack and pushes a 0 if that number is 0.0 and a 1 otherwise. -
translateTo
Expects a real on the stack and pushes a truncated integer value -
translateToDesynthesized
public FlowList translateToDesynthesized(ClassGenerator classGen, MethodGenerator methodGen, BooleanType type) Translates a real into a non-synthesized boolean. It does not push a 0 or a 1 but instead returns branchhandle list to be appended to the false list. A NaN must be converted to "false". -
translateTo
Expects a double on the stack and pushes a boxed double. Boxed double are represented by an instance ofjava.lang.Double. -
translateTo
Translates a real into the Java type denoted byclazz. Expects a real on the stack and pushes a number of the appropriate type after coercion.- Overrides:
translateToin classType
-
translateFrom
Translates an external (primitive) Java type into a real. Expects a java object on the stack and pushes a real (i.e., a double).- Overrides:
translateFromin classType
-
translateBox
Translates an object of this type to its boxed representation.- Overrides:
translateBoxin classType
-
translateUnBox
Translates an object of this type to its unboxed representation.- Overrides:
translateUnBoxin classType
-
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() -
CMP
public org.apache.bcel.generic.Instruction CMP(boolean less) -
DUP
public org.apache.bcel.generic.Instruction DUP()
-