## org.apache.xalan.xsltc.compiler.util
Class ReferenceType

    java.lang.Object
      |
      +--org.apache.xalan.xsltc.compiler.util.Type
            |
            +--org.apache.xalan.xsltc.compiler.util.ReferenceType

public final class ReferenceType
extends Type

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, Void`

Method Summary
`boolean` `identicalTo(Type other)`
`org.apache.bcel.generic.Instruction` `LOAD(int slot)`
`org.apache.bcel.generic.Instruction` `STORE(int slot)`
`org.apache.bcel.generic.Type` `toJCType()`
`java.lang.String` `toSignature()`
`java.lang.String` `toString()`
`void` `translateBox(ClassGenerator classGen, MethodGenerator methodGen)` Translates an object of this type to its boxed representation.
`void` `translateFrom(ClassGenerator classGen, MethodGenerator methodGen, java.lang.Class clazz)` Translates an external Java type into a reference.
`void` `translateTo(ClassGenerator classGen, MethodGenerator methodGen, BooleanType type)` Translates a reference to an object of internal type `type`.
`void` `translateTo(ClassGenerator classGen, MethodGenerator methodGen, java.lang.Class clazz)` Translates a reference into the Java type denoted by `clazz`.
`void` `translateTo(ClassGenerator classGen, MethodGenerator methodGen, NodeSetType type)` Casts a reference into a NodeIterator.
`void` `translateTo(ClassGenerator classGen, MethodGenerator methodGen, NodeType type)` Casts a reference into a Node.
`void` `translateTo(ClassGenerator classGen, MethodGenerator methodGen, ObjectType type)` Subsume reference into ObjectType.
`void` `translateTo(ClassGenerator classGen, MethodGenerator methodGen, RealType type)` Translates a reference into an object of internal type `type`.
`void` `translateTo(ClassGenerator classGen, MethodGenerator methodGen, ResultTreeType type)` Casts a reference into a ResultTree.
`void` `translateTo(ClassGenerator classGen, MethodGenerator methodGen, StringType type)` Translates reference into object of internal type `type`.
`void` `translateTo(ClassGenerator classGen, MethodGenerator methodGen, Type type)` Translates a reference to an object of internal type `type`.
`FlowList` `translateToDesynthesized(ClassGenerator classGen, MethodGenerator methodGen, BooleanType type)` Expects a reference on the stack and translates it to a non-synthesized boolean.
`void` `translateUnBox(ClassGenerator classGen, MethodGenerator methodGen)` Translates an object of this type to its unboxed representation.

Methods inherited from class org.apache.xalan.xsltc.compiler.util.Type
`ADD, CMP, distanceTo, DIV, DUP, GE, getClassName, GT, implementedAsMethod, isNumber, isSimple, LE, LT, MUL, NEG, newObjectType, newObjectType, POP, REM, SUB, translateToDesynthesized`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Method Detail

### toString

    public java.lang.String toString()

  Overrides:
    toString in class Type

### identicalTo

    public boolean identicalTo(Type other)

  Overrides:
    identicalTo in class Type

### toSignature

    public java.lang.String toSignature()

  Overrides:
    toSignature in class Type

### toJCType

    public org.apache.bcel.generic.Type toJCType()

  Overrides:
    toJCType in class Type

### translateTo

    public void translateTo(ClassGenerator classGen,
                            MethodGenerator methodGen,
                            Type type)

  Translates a reference to an object of internal type `type`. The translation to int is undefined since references are always converted to reals in arithmetic expressions.
  Overrides:
    translateTo in class Type
  See Also:
    `Type.translateTo(org.apache.xalan.xsltc.compiler.util.ClassGenerator, org.apache.xalan.xsltc.compiler.util.MethodGenerator, org.apache.xalan.xsltc.compiler.util.Type)`

### translateTo

    public void translateTo(ClassGenerator classGen,
                            MethodGenerator methodGen,
                            StringType type)

  Translates reference into object of internal type `type`.
  See Also:
    `Type.translateTo(org.apache.xalan.xsltc.compiler.util.ClassGenerator, org.apache.xalan.xsltc.compiler.util.MethodGenerator, org.apache.xalan.xsltc.compiler.util.Type)`

### translateTo

    public void translateTo(ClassGenerator classGen,
                            MethodGenerator methodGen,
                            RealType type)

  Translates a reference into an object of internal type `type`.
  See Also:
    `Type.translateTo(org.apache.xalan.xsltc.compiler.util.ClassGenerator, org.apache.xalan.xsltc.compiler.util.MethodGenerator, org.apache.xalan.xsltc.compiler.util.Type)`

### translateTo

    public void translateTo(ClassGenerator classGen,
                            MethodGenerator methodGen,
                            BooleanType type)

  Translates a reference to an object of internal type `type`.
  See Also:
    `Type.translateTo(org.apache.xalan.xsltc.compiler.util.ClassGenerator, org.apache.xalan.xsltc.compiler.util.MethodGenerator, org.apache.xalan.xsltc.compiler.util.Type)`

### translateTo

    public void translateTo(ClassGenerator classGen,
                            MethodGenerator methodGen,
                            NodeSetType type)

  Casts a reference into a NodeIterator.
  See Also:
    `Type.translateTo(org.apache.xalan.xsltc.compiler.util.ClassGenerator, org.apache.xalan.xsltc.compiler.util.MethodGenerator, org.apache.xalan.xsltc.compiler.util.Type)`

### translateTo

    public void translateTo(ClassGenerator classGen,
                            MethodGenerator methodGen,
                            NodeType type)

  Casts a reference into a Node.
  See Also:
    `Type.translateTo(org.apache.xalan.xsltc.compiler.util.ClassGenerator, org.apache.xalan.xsltc.compiler.util.MethodGenerator, org.apache.xalan.xsltc.compiler.util.Type)`

### translateTo

    public void translateTo(ClassGenerator classGen,
                            MethodGenerator methodGen,
                            ResultTreeType type)

  Casts a reference into a ResultTree.
  See Also:
    `Type.translateTo(org.apache.xalan.xsltc.compiler.util.ClassGenerator, org.apache.xalan.xsltc.compiler.util.MethodGenerator, org.apache.xalan.xsltc.compiler.util.Type)`

### translateTo

    public void translateTo(ClassGenerator classGen,
                            MethodGenerator methodGen,
                            ObjectType type)

  Subsume reference into ObjectType.
  See Also:
    `Type.translateTo(org.apache.xalan.xsltc.compiler.util.ClassGenerator, org.apache.xalan.xsltc.compiler.util.MethodGenerator, org.apache.xalan.xsltc.compiler.util.Type)`

### translateTo

    public void translateTo(ClassGenerator classGen,
                            MethodGenerator methodGen,
                            java.lang.Class clazz)

  Translates a reference into the Java type denoted by `clazz`.
  Overrides:
    translateTo in class Type

### translateFrom

    public void translateFrom(ClassGenerator classGen,
                              MethodGenerator methodGen,
                              java.lang.Class clazz)

  Translates an external Java type into a reference. Only conversion allowed is from java.lang.Object.
  Overrides:
    translateFrom in class Type

### translateToDesynthesized

    public FlowList translateToDesynthesized(ClassGenerator classGen,
                                             MethodGenerator methodGen,
                                             BooleanType type)

  Expects a reference on the stack and translates it to 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.
  Overrides:
    translateToDesynthesized in class Type
  See Also:
    `Type.translateToDesynthesized(org.apache.xalan.xsltc.compiler.util.ClassGenerator, org.apache.xalan.xsltc.compiler.util.MethodGenerator, org.apache.xalan.xsltc.compiler.util.Type)`

### translateBox

    public void translateBox(ClassGenerator classGen,
                             MethodGenerator methodGen)

  Translates an object of this type to its boxed representation.
  Overrides:
    translateBox in class Type

### translateUnBox

    public void translateUnBox(ClassGenerator classGen,
                               MethodGenerator methodGen)

  Translates an object of this type to its unboxed representation.
  Overrides:
    translateUnBox in class Type

### LOAD

    public org.apache.bcel.generic.Instruction LOAD(int slot)

  Overrides:
    LOAD in class Type

### STORE

    public org.apache.bcel.generic.Instruction STORE(int slot)

  Overrides:
    STORE in class Type

Copyright © 2006 Apache XML Project. All Rights Reserved.