Package proguard.classfile.util
Class PrimitiveArrayConstantReplacer
java.lang.Object
proguard.classfile.util.PrimitiveArrayConstantReplacer
- All Implemented Interfaces:
AttributeVisitor,ConstantVisitor,PrimitiveArrayConstantElementVisitor,InstructionVisitor,ClassVisitor
public class PrimitiveArrayConstantReplacer
extends Object
implements ClassVisitor, AttributeVisitor, InstructionVisitor, ConstantVisitor, PrimitiveArrayConstantElementVisitor
This
ClassVisitor replaces all instances of PrimitiveArrayConstant by Java
bytecode compliant array store instructions.- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidvisitAnyAttribute(Clazz clazz, Attribute attribute) Visits any Attribute instance.voidvisitAnyClass(Clazz clazz) Visits any Clazz instance.voidvisitAnyConstant(Clazz clazz, Constant constant) Visits any Constant instance.voidvisitAnyInstruction(Clazz clazz, Method method, CodeAttribute codeAttribute, int offset, Instruction instruction) Visits any Instruction instance.voidvisitBooleanArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, boolean value) voidvisitByteArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, byte value) voidvisitCharArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, char value) voidvisitCodeAttribute(Clazz clazz, Method method, CodeAttribute codeAttribute) voidvisitConstantInstruction(Clazz clazz, Method method, CodeAttribute codeAttribute, int offset, ConstantInstruction constantInstruction) voidvisitDoubleArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, double value) voidvisitFloatArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, float value) voidvisitIntArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, int value) voidvisitLongArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, long value) voidvisitPrimitiveArrayConstant(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant) voidvisitProgramClass(ProgramClass programClass) voidvisitShortArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, short value) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface proguard.classfile.attribute.visitor.AttributeVisitor
visitAnnotationDefaultAttribute, visitAnyAnnotationsAttribute, visitAnyParameterAnnotationsAttribute, visitAnyTypeAnnotationsAttribute, visitBootstrapMethodsAttribute, visitConstantValueAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitEnclosingMethodAttribute, visitExceptionsAttribute, visitInnerClassesAttribute, visitLineNumberTableAttribute, visitLocalVariableTableAttribute, visitLocalVariableTypeTableAttribute, visitMethodParametersAttribute, visitModuleAttribute, visitModuleMainClassAttribute, visitModulePackagesAttribute, visitNestHostAttribute, visitNestMembersAttribute, visitPermittedSubclassesAttribute, visitRecordAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleParameterAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeInvisibleTypeAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleParameterAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitRuntimeVisibleTypeAnnotationsAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSourceDebugExtensionAttribute, visitSourceDirAttribute, visitSourceFileAttribute, visitStackMapAttribute, visitStackMapTableAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitUnknownAttributeMethods inherited from interface proguard.classfile.visitor.ClassVisitor
visitLibraryClassMethods inherited from interface proguard.classfile.constant.visitor.ConstantVisitor
visitAnyMethodrefConstant, visitAnyRefConstant, visitClassConstant, visitDoubleConstant, visitDynamicConstant, visitFieldrefConstant, visitFloatConstant, visitIntegerConstant, visitInterfaceMethodrefConstant, visitInvokeDynamicConstant, visitLongConstant, visitMethodHandleConstant, visitMethodrefConstant, visitMethodTypeConstant, visitModuleConstant, visitNameAndTypeConstant, visitPackageConstant, visitStringConstant, visitUtf8ConstantMethods inherited from interface proguard.classfile.instruction.visitor.InstructionVisitor
visitAnySwitchInstruction, visitBranchInstruction, visitLookUpSwitchInstruction, visitSimpleInstruction, visitTableSwitchInstruction, visitVariableInstructionMethods inherited from interface proguard.classfile.constant.visitor.PrimitiveArrayConstantElementVisitor
visitAnyPrimitiveArrayConstantElement
-
Constructor Details
-
PrimitiveArrayConstantReplacer
public PrimitiveArrayConstantReplacer()
-
-
Method Details
-
visitAnyClass
Description copied from interface:ClassVisitorVisits any Clazz instance. The more specific default implementations of this interface delegate to this method.- Specified by:
visitAnyClassin interfaceClassVisitor
-
visitProgramClass
- Specified by:
visitProgramClassin interfaceClassVisitor
-
visitAnyAttribute
Description copied from interface:AttributeVisitorVisits any Attribute instance. The more specific default implementations of this interface delegate to this method.- Specified by:
visitAnyAttributein interfaceAttributeVisitor
-
visitCodeAttribute
- Specified by:
visitCodeAttributein interfaceAttributeVisitor
-
visitAnyInstruction
public void visitAnyInstruction(Clazz clazz, Method method, CodeAttribute codeAttribute, int offset, Instruction instruction) Description copied from interface:InstructionVisitorVisits any Instruction instance. The more specific default implementations of this interface delegate to this method.- Specified by:
visitAnyInstructionin interfaceInstructionVisitor
-
visitConstantInstruction
public void visitConstantInstruction(Clazz clazz, Method method, CodeAttribute codeAttribute, int offset, ConstantInstruction constantInstruction) - Specified by:
visitConstantInstructionin interfaceInstructionVisitor
-
visitAnyConstant
Description copied from interface:ConstantVisitorVisits any Constant instance. The more specific default implementations of this interface delegate to this method.- Specified by:
visitAnyConstantin interfaceConstantVisitor
-
visitPrimitiveArrayConstant
- Specified by:
visitPrimitiveArrayConstantin interfaceConstantVisitor
-
visitBooleanArrayConstantElement
public void visitBooleanArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, boolean value) - Specified by:
visitBooleanArrayConstantElementin interfacePrimitiveArrayConstantElementVisitor
-
visitByteArrayConstantElement
public void visitByteArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, byte value) - Specified by:
visitByteArrayConstantElementin interfacePrimitiveArrayConstantElementVisitor
-
visitCharArrayConstantElement
public void visitCharArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, char value) - Specified by:
visitCharArrayConstantElementin interfacePrimitiveArrayConstantElementVisitor
-
visitShortArrayConstantElement
public void visitShortArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, short value) - Specified by:
visitShortArrayConstantElementin interfacePrimitiveArrayConstantElementVisitor
-
visitIntArrayConstantElement
public void visitIntArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, int value) - Specified by:
visitIntArrayConstantElementin interfacePrimitiveArrayConstantElementVisitor
-
visitFloatArrayConstantElement
public void visitFloatArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, float value) - Specified by:
visitFloatArrayConstantElementin interfacePrimitiveArrayConstantElementVisitor
-
visitLongArrayConstantElement
public void visitLongArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, long value) - Specified by:
visitLongArrayConstantElementin interfacePrimitiveArrayConstantElementVisitor
-
visitDoubleArrayConstantElement
public void visitDoubleArrayConstantElement(Clazz clazz, PrimitiveArrayConstant primitiveArrayConstant, int index, double value) - Specified by:
visitDoubleArrayConstantElementin interfacePrimitiveArrayConstantElementVisitor
-