Class MethodTypeConstant

  • All Implemented Interfaces:
    java.io.Serializable, Processable

    public class MethodTypeConstant
    extends Constant
    This Constant represents a method handle constant in the constant pool.
    See Also:
    Serialized Form
    • Field Detail

      • u2descriptorIndex

        public int u2descriptorIndex
      • javaLangInvokeMethodTypeClass

        public Clazz javaLangInvokeMethodTypeClass
        An extra field pointing to the java.lang.invoke.MethodType Clazz object. This field is typically filled out by the ClassReferenceInitializer..
      • referencedClasses

        public Clazz[] referencedClasses
        An extra field pointing to the Clazz objects referenced in the descriptor string. This field is filled out by the ClassReferenceInitializer. References to primitive types are ignored.
    • Constructor Detail

      • MethodTypeConstant

        public MethodTypeConstant()
        Creates an uninitialized MethodTypeConstant.
      • MethodTypeConstant

        public MethodTypeConstant​(int u2descriptorIndex,
                                  Clazz[] referencedClasses)
        Creates a new MethodTypeConstant with the given descriptor index.
        Parameters:
        u2descriptorIndex - the index of the descriptor in the constant pool.
        referencedClasses - the classes referenced by the descriptor.
    • Method Detail

      • getDescriptorIndex

        public int getDescriptorIndex()
        Returns the descriptor index.
      • getType

        public java.lang.String getType​(Clazz clazz)
        Returns the type.
      • referencedClassesAccept

        public void referencedClassesAccept​(ClassVisitor classVisitor)
        Lets the Clazz objects referenced in the descriptor string accept the given visitor.
      • getTag

        public int getTag()
        Description copied from class: Constant
        Returns the constant pool info tag that specifies the entry type.
        Specified by:
        getTag in class Constant
      • isCategory2

        public boolean isCategory2()
        Description copied from class: Constant
        Returns whether the constant is of category 2. This means that it takes up the space of two category 1 types in the constant pool or on the stack, for instance.
        Specified by:
        isCategory2 in class Constant
      • equals

        public boolean equals​(java.lang.Object object)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object