类 ConstantAdder
- java.lang.Object
-
- proguard.classfile.editor.ConstantAdder
-
- 所有已实现的接口:
ConstantVisitor
public class ConstantAdder extends java.lang.Object implements ConstantVisitor
ThisConstantVisitoradds all constants that it visits to the constant pool of a given target class.Bootstrap methods attributes are automatically updated for invokedynamic constants.
-
-
构造器概要
构造器 构造器 说明 ConstantAdder(ProgramClass targetClass)Creates a new ConstantAdder that will copy constants into the given target class.
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 intaddConstant(Clazz clazz, int constantIndex)Adds a copy of the specified constant in the given class and returns its index.intaddConstant(Clazz clazz, Constant constant)Adds a copy of the given constant in the given class and returns its index.intgetConstantIndex()Returns the index of the most recently created constant in the constant pool of the target class.voidvisitClassConstant(Clazz clazz, ClassConstant classConstant)voidvisitDoubleConstant(Clazz clazz, DoubleConstant doubleConstant)voidvisitDynamicConstant(Clazz clazz, DynamicConstant dynamicConstant)voidvisitFieldrefConstant(Clazz clazz, FieldrefConstant fieldrefConstant)voidvisitFloatConstant(Clazz clazz, FloatConstant floatConstant)voidvisitIntegerConstant(Clazz clazz, IntegerConstant integerConstant)voidvisitInterfaceMethodrefConstant(Clazz clazz, InterfaceMethodrefConstant interfaceMethodrefConstant)voidvisitInvokeDynamicConstant(Clazz clazz, InvokeDynamicConstant invokeDynamicConstant)voidvisitLongConstant(Clazz clazz, LongConstant longConstant)voidvisitMethodHandleConstant(Clazz clazz, MethodHandleConstant methodHandleConstant)voidvisitMethodrefConstant(Clazz clazz, MethodrefConstant methodrefConstant)voidvisitMethodTypeConstant(Clazz clazz, MethodTypeConstant methodTypeConstant)voidvisitModuleConstant(Clazz clazz, ModuleConstant moduleConstant)voidvisitNameAndTypeConstant(Clazz clazz, NameAndTypeConstant nameAndTypeConstant)voidvisitPackageConstant(Clazz clazz, PackageConstant packageConstant)voidvisitPrimitiveArrayConstant(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant)voidvisitStringConstant(Clazz clazz, StringConstant stringConstant)voidvisitUtf8Constant(Clazz clazz, Utf8Constant utf8Constant)-
从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
从接口继承的方法 proguard.classfile.constant.visitor.ConstantVisitor
visitAnyConstant, visitAnyMethodrefConstant, visitAnyRefConstant
-
-
-
-
构造器详细资料
-
ConstantAdder
public ConstantAdder(ProgramClass targetClass)
Creates a new ConstantAdder that will copy constants into the given target class.
-
-
方法详细资料
-
addConstant
public int addConstant(Clazz clazz, int constantIndex)
Adds a copy of the specified constant in the given class and returns its index. If the specified index is 0, the returned value is 0 too.
-
addConstant
public int addConstant(Clazz clazz, Constant constant)
Adds a copy of the given constant in the given class and returns its index.
-
getConstantIndex
public int getConstantIndex()
Returns the index of the most recently created constant in the constant pool of the target class.
-
visitIntegerConstant
public void visitIntegerConstant(Clazz clazz, IntegerConstant integerConstant)
- 指定者:
visitIntegerConstant在接口中ConstantVisitor
-
visitLongConstant
public void visitLongConstant(Clazz clazz, LongConstant longConstant)
- 指定者:
visitLongConstant在接口中ConstantVisitor
-
visitFloatConstant
public void visitFloatConstant(Clazz clazz, FloatConstant floatConstant)
- 指定者:
visitFloatConstant在接口中ConstantVisitor
-
visitDoubleConstant
public void visitDoubleConstant(Clazz clazz, DoubleConstant doubleConstant)
- 指定者:
visitDoubleConstant在接口中ConstantVisitor
-
visitPrimitiveArrayConstant
public void visitPrimitiveArrayConstant(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant)
- 指定者:
visitPrimitiveArrayConstant在接口中ConstantVisitor
-
visitStringConstant
public void visitStringConstant(Clazz clazz, StringConstant stringConstant)
- 指定者:
visitStringConstant在接口中ConstantVisitor
-
visitUtf8Constant
public void visitUtf8Constant(Clazz clazz, Utf8Constant utf8Constant)
- 指定者:
visitUtf8Constant在接口中ConstantVisitor
-
visitDynamicConstant
public void visitDynamicConstant(Clazz clazz, DynamicConstant dynamicConstant)
- 指定者:
visitDynamicConstant在接口中ConstantVisitor
-
visitInvokeDynamicConstant
public void visitInvokeDynamicConstant(Clazz clazz, InvokeDynamicConstant invokeDynamicConstant)
- 指定者:
visitInvokeDynamicConstant在接口中ConstantVisitor
-
visitMethodHandleConstant
public void visitMethodHandleConstant(Clazz clazz, MethodHandleConstant methodHandleConstant)
- 指定者:
visitMethodHandleConstant在接口中ConstantVisitor
-
visitModuleConstant
public void visitModuleConstant(Clazz clazz, ModuleConstant moduleConstant)
- 指定者:
visitModuleConstant在接口中ConstantVisitor
-
visitPackageConstant
public void visitPackageConstant(Clazz clazz, PackageConstant packageConstant)
- 指定者:
visitPackageConstant在接口中ConstantVisitor
-
visitFieldrefConstant
public void visitFieldrefConstant(Clazz clazz, FieldrefConstant fieldrefConstant)
- 指定者:
visitFieldrefConstant在接口中ConstantVisitor
-
visitInterfaceMethodrefConstant
public void visitInterfaceMethodrefConstant(Clazz clazz, InterfaceMethodrefConstant interfaceMethodrefConstant)
-
visitMethodrefConstant
public void visitMethodrefConstant(Clazz clazz, MethodrefConstant methodrefConstant)
- 指定者:
visitMethodrefConstant在接口中ConstantVisitor
-
visitClassConstant
public void visitClassConstant(Clazz clazz, ClassConstant classConstant)
- 指定者:
visitClassConstant在接口中ConstantVisitor
-
visitMethodTypeConstant
public void visitMethodTypeConstant(Clazz clazz, MethodTypeConstant methodTypeConstant)
- 指定者:
visitMethodTypeConstant在接口中ConstantVisitor
-
visitNameAndTypeConstant
public void visitNameAndTypeConstant(Clazz clazz, NameAndTypeConstant nameAndTypeConstant)
- 指定者:
visitNameAndTypeConstant在接口中ConstantVisitor
-
-