Package proguard.classfile.constant
Class MethodTypeConstant
- java.lang.Object
-
- proguard.util.SimpleProcessable
-
- proguard.classfile.constant.Constant
-
- proguard.classfile.constant.MethodTypeConstant
-
- All Implemented Interfaces:
java.io.Serializable
,Processable
public class MethodTypeConstant extends Constant
ThisConstant
represents a method handle constant in the constant pool.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description Clazz
javaLangInvokeMethodTypeClass
An extra field pointing to the java.lang.invoke.MethodType Clazz object.Clazz[]
referencedClasses
An extra field pointing to the Clazz objects referenced in the descriptor string.int
u2descriptorIndex
-
Fields inherited from class proguard.classfile.constant.Constant
CLASS, DOUBLE, DYNAMIC, FIELDREF, FLOAT, INTEGER, INTERFACE_METHODREF, INVOKE_DYNAMIC, LONG, METHOD_HANDLE, METHOD_TYPE, METHODREF, MODULE, NAME_AND_TYPE, PACKAGE, PRIMITIVE_ARRAY, STRING, UTF8
-
Fields inherited from class proguard.util.SimpleProcessable
processingFlags, processingInfo
-
-
Constructor Summary
Constructors Constructor Description MethodTypeConstant()
Creates an uninitialized MethodTypeConstant.MethodTypeConstant(int u2descriptorIndex, Clazz[] referencedClasses)
Creates a new MethodTypeConstant with the given descriptor index.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(Clazz clazz, ConstantVisitor constantVisitor)
Accepts the given visitor.boolean
equals(java.lang.Object object)
int
getDescriptorIndex()
Returns the descriptor index.int
getTag()
Returns the constant pool info tag that specifies the entry type.java.lang.String
getType(Clazz clazz)
Returns the type.int
hashCode()
boolean
isCategory2()
Returns whether the constant is of category 2.void
referencedClassesAccept(ClassVisitor classVisitor)
Lets the Clazz objects referenced in the descriptor string accept the given visitor.java.lang.String
toString()
-
Methods inherited from class proguard.util.SimpleProcessable
addProcessingFlags, getProcessingFlags, getProcessingInfo, hasProcessingFlags, removeProcessingFlags, setProcessingFlags, setProcessingInfo
-
-
-
-
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
. References to primitive types are ignored.ClassReferenceInitializer
-
-
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.
-
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 classConstant
-
accept
public void accept(Clazz clazz, ConstantVisitor constantVisitor)
Description copied from class:Constant
Accepts the given visitor.
-
equals
public boolean equals(java.lang.Object object)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-