Class StackMapType

  • All Implemented Interfaces:
    java.lang.Cloneable

    public final class StackMapType
    extends java.lang.Object
    implements java.lang.Cloneable
    This class represents the type of a local variable or item on stack used in the StackMap entries.
    See Also:
    StackMapEntry, StackMap, Const
    • Constructor Detail

      • StackMapType

        public StackMapType​(byte type,
                            int index,
                            ConstantPool constant_pool)
        Parameters:
        type - type tag as defined in the Constants interface
        index - index to constant pool, or byte code offset
    • Method Detail

      • setType

        public void setType​(byte t)
      • getType

        public byte getType()
      • setIndex

        public void setIndex​(int t)
      • getIndex

        public int getIndex()
        Returns:
        index to constant pool if type == ITEM_Object, or offset in byte code, if type == ITEM_NewObject, and -1 otherwise
      • dump

        public void dump​(java.io.DataOutputStream file)
                  throws java.io.IOException
        Dump type entries to file.
        Parameters:
        file - Output file stream
        Throws:
        java.io.IOException
      • hasIndex

        public boolean hasIndex()
        Returns:
        true, if type is either ITEM_Object or ITEM_NewObject
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
        Returns:
        String representation
      • copy

        public StackMapType copy()
        Returns:
        deep copy of this object
      • getConstantPool

        public ConstantPool getConstantPool()
        Returns:
        Constant pool used by this object.
      • setConstantPool

        public void setConstantPool​(ConstantPool constantPool)
        Parameters:
        constantPool - Constant pool to be used for this object.