Package proguard.classfile.constant
Class DynamicConstant
- java.lang.Object
-
- proguard.util.SimpleProcessable
-
- proguard.classfile.constant.Constant
-
- proguard.classfile.constant.DynamicConstant
-
- All Implemented Interfaces:
java.io.Serializable,Processable
public class DynamicConstant extends Constant
ThisConstantrepresents a dynamic constant in the constant pool.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description Clazz[]referencedClassesAn extra field pointing to the Clazz objects referenced in the descriptor string.intu2bootstrapMethodAttributeIndexintu2nameAndTypeIndex-
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 DynamicConstant()Creates an uninitialized InvokeDynamicConstant.DynamicConstant(int u2bootstrapMethodAttributeIndex, int u2nameAndTypeIndex, Clazz[] referencedClasses)Creates a new InvokeDynamicConstant with the given bootstrap method and name-and-type indices.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(Clazz clazz, ConstantVisitor constantVisitor)Accepts the given visitor.voidbootstrapMethodHandleAccept(Clazz clazz, ConstantVisitor constantVisitor)Lets the bootstrap method handle constant accept the given visitor.booleanequals(java.lang.Object object)intgetBootstrapMethodAttributeIndex()Returns the index of the bootstrap method in the bootstrap methods attribute of the class.java.lang.StringgetName(Clazz clazz)Returns the method name.intgetNameAndTypeIndex()Returns the name-and-type index.intgetTag()Returns the constant pool info tag that specifies the entry type.java.lang.StringgetType(Clazz clazz)Returns the method type.inthashCode()booleanisCategory2()Returns whether the constant is of category 2.voidreferencedClassesAccept(ClassVisitor classVisitor)Lets the Clazz objects referenced in the descriptor string accept the given visitor.java.lang.StringtoString()-
Methods inherited from class proguard.util.SimpleProcessable
addProcessingFlags, getProcessingFlags, getProcessingInfo, hasProcessingFlags, removeProcessingFlags, setProcessingFlags, setProcessingInfo
-
-
-
-
Field Detail
-
u2bootstrapMethodAttributeIndex
public int u2bootstrapMethodAttributeIndex
-
u2nameAndTypeIndex
public int u2nameAndTypeIndex
-
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
-
DynamicConstant
public DynamicConstant()
Creates an uninitialized InvokeDynamicConstant.
-
DynamicConstant
public DynamicConstant(int u2bootstrapMethodAttributeIndex, int u2nameAndTypeIndex, Clazz[] referencedClasses)Creates a new InvokeDynamicConstant with the given bootstrap method and name-and-type indices.- Parameters:
u2bootstrapMethodAttributeIndex- the index of the bootstrap method entry in the bootstrap methods attribute.u2nameAndTypeIndex- the index of the name and type entry in the constant pool.referencedClasses- the classes referenced by the type.
-
-
Method Detail
-
getBootstrapMethodAttributeIndex
public int getBootstrapMethodAttributeIndex()
Returns the index of the bootstrap method in the bootstrap methods attribute of the class.
-
getNameAndTypeIndex
public int getNameAndTypeIndex()
Returns the name-and-type index.
-
getName
public java.lang.String getName(Clazz clazz)
Returns the method name.
-
getType
public java.lang.String getType(Clazz clazz)
Returns the method type.
-
referencedClassesAccept
public void referencedClassesAccept(ClassVisitor classVisitor)
Lets the Clazz objects referenced in the descriptor string accept the given visitor.
-
bootstrapMethodHandleAccept
public void bootstrapMethodHandleAccept(Clazz clazz, ConstantVisitor constantVisitor)
Lets the bootstrap method handle constant accept the given visitor.
-
getTag
public int getTag()
Description copied from class:ConstantReturns the constant pool info tag that specifies the entry type.
-
isCategory2
public boolean isCategory2()
Description copied from class:ConstantReturns 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:
isCategory2in classConstant
-
accept
public void accept(Clazz clazz, ConstantVisitor constantVisitor)
Description copied from class:ConstantAccepts the given visitor.
-
equals
public boolean equals(java.lang.Object object)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-