类 WrapperClassUseSimplifier

  • 所有已实现的接口:
    proguard.classfile.attribute.visitor.AttributeVisitor, proguard.classfile.constant.visitor.ConstantVisitor, proguard.classfile.instruction.visitor.InstructionVisitor, proguard.classfile.visitor.ClassVisitor

    public class WrapperClassUseSimplifier
    extends java.lang.Object
    implements proguard.classfile.attribute.visitor.AttributeVisitor, proguard.classfile.instruction.visitor.InstructionVisitor, proguard.classfile.constant.visitor.ConstantVisitor, proguard.classfile.visitor.ClassVisitor
    This AttributeVisitor simplifies the use of retargeted wrapper classes in the code attributes that it visits. More specifically, it replaces "new Wrapper(targetClass)" by "targetClass", and "wrapper.field" by "wrapper". You still need to retarget all class references, replacing references to the wrapper class by references to the target class.
    另请参阅:
    WrapperClassMarker, ClassMerger, RetargetedClassFilter, TargetClassChanger
    • 构造器概要

      构造器 
      构造器 说明
      WrapperClassUseSimplifier()
      Creates a new WrapperClassUseSimplifier.
      WrapperClassUseSimplifier​(proguard.classfile.instruction.visitor.InstructionVisitor extraInstructionVisitor)
      Creates a new WrapperClassUseSimplifier.
    • 方法概要

      所有方法 实例方法 具体方法 
      修饰符和类型 方法 说明
      void visitAnyAttribute​(proguard.classfile.Clazz clazz, proguard.classfile.attribute.Attribute attribute)  
      void visitAnyClass​(proguard.classfile.Clazz clazz)  
      void visitAnyConstant​(proguard.classfile.Clazz clazz, proguard.classfile.constant.Constant constant)  
      void visitAnyInstruction​(proguard.classfile.Clazz clazz, proguard.classfile.Method method, proguard.classfile.attribute.CodeAttribute codeAttribute, int offset, proguard.classfile.instruction.Instruction instruction)  
      void visitClassConstant​(proguard.classfile.Clazz clazz, proguard.classfile.constant.ClassConstant classConstant)  
      void visitCodeAttribute​(proguard.classfile.Clazz clazz, proguard.classfile.Method method, proguard.classfile.attribute.CodeAttribute codeAttribute)  
      void visitConstantInstruction​(proguard.classfile.Clazz clazz, proguard.classfile.Method method, proguard.classfile.attribute.CodeAttribute codeAttribute, int offset, proguard.classfile.instruction.ConstantInstruction constantInstruction)  
      void visitFieldrefConstant​(proguard.classfile.Clazz clazz, proguard.classfile.constant.FieldrefConstant fieldrefConstant)  
      void visitMethodrefConstant​(proguard.classfile.Clazz clazz, proguard.classfile.constant.MethodrefConstant methodrefConstant)  
      void visitProgramClass​(proguard.classfile.ProgramClass programClass)  
      • 从类继承的方法 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • 从接口继承的方法 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, visitUnknownAttribute
      • 从接口继承的方法 proguard.classfile.visitor.ClassVisitor

        visitLibraryClass
      • 从接口继承的方法 proguard.classfile.constant.visitor.ConstantVisitor

        visitAnyMethodrefConstant, visitAnyRefConstant, visitDoubleConstant, visitDynamicConstant, visitFloatConstant, visitIntegerConstant, visitInterfaceMethodrefConstant, visitInvokeDynamicConstant, visitLongConstant, visitMethodHandleConstant, visitMethodTypeConstant, visitModuleConstant, visitNameAndTypeConstant, visitPackageConstant, visitPrimitiveArrayConstant, visitStringConstant, visitUtf8Constant
      • 从接口继承的方法 proguard.classfile.instruction.visitor.InstructionVisitor

        visitAnySwitchInstruction, visitBranchInstruction, visitLookUpSwitchInstruction, visitSimpleInstruction, visitTableSwitchInstruction, visitVariableInstruction
    • 构造器详细资料

      • WrapperClassUseSimplifier

        public WrapperClassUseSimplifier()
        Creates a new WrapperClassUseSimplifier.
      • WrapperClassUseSimplifier

        public WrapperClassUseSimplifier​(proguard.classfile.instruction.visitor.InstructionVisitor extraInstructionVisitor)
        Creates a new WrapperClassUseSimplifier.
        参数:
        extraInstructionVisitor - an optional extra visitor for all simplified instructions.
    • 方法详细资料

      • visitAnyAttribute

        public void visitAnyAttribute​(proguard.classfile.Clazz clazz,
                                      proguard.classfile.attribute.Attribute attribute)
        指定者:
        visitAnyAttribute 在接口中 proguard.classfile.attribute.visitor.AttributeVisitor
      • visitCodeAttribute

        public void visitCodeAttribute​(proguard.classfile.Clazz clazz,
                                       proguard.classfile.Method method,
                                       proguard.classfile.attribute.CodeAttribute codeAttribute)
        指定者:
        visitCodeAttribute 在接口中 proguard.classfile.attribute.visitor.AttributeVisitor
      • visitAnyInstruction

        public void visitAnyInstruction​(proguard.classfile.Clazz clazz,
                                        proguard.classfile.Method method,
                                        proguard.classfile.attribute.CodeAttribute codeAttribute,
                                        int offset,
                                        proguard.classfile.instruction.Instruction instruction)
        指定者:
        visitAnyInstruction 在接口中 proguard.classfile.instruction.visitor.InstructionVisitor
      • visitConstantInstruction

        public void visitConstantInstruction​(proguard.classfile.Clazz clazz,
                                             proguard.classfile.Method method,
                                             proguard.classfile.attribute.CodeAttribute codeAttribute,
                                             int offset,
                                             proguard.classfile.instruction.ConstantInstruction constantInstruction)
        指定者:
        visitConstantInstruction 在接口中 proguard.classfile.instruction.visitor.InstructionVisitor
      • visitAnyConstant

        public void visitAnyConstant​(proguard.classfile.Clazz clazz,
                                     proguard.classfile.constant.Constant constant)
        指定者:
        visitAnyConstant 在接口中 proguard.classfile.constant.visitor.ConstantVisitor
      • visitFieldrefConstant

        public void visitFieldrefConstant​(proguard.classfile.Clazz clazz,
                                          proguard.classfile.constant.FieldrefConstant fieldrefConstant)
        指定者:
        visitFieldrefConstant 在接口中 proguard.classfile.constant.visitor.ConstantVisitor
      • visitMethodrefConstant

        public void visitMethodrefConstant​(proguard.classfile.Clazz clazz,
                                           proguard.classfile.constant.MethodrefConstant methodrefConstant)
        指定者:
        visitMethodrefConstant 在接口中 proguard.classfile.constant.visitor.ConstantVisitor
      • visitClassConstant

        public void visitClassConstant​(proguard.classfile.Clazz clazz,
                                       proguard.classfile.constant.ClassConstant classConstant)
        指定者:
        visitClassConstant 在接口中 proguard.classfile.constant.visitor.ConstantVisitor
      • visitAnyClass

        public void visitAnyClass​(proguard.classfile.Clazz clazz)
        指定者:
        visitAnyClass 在接口中 proguard.classfile.visitor.ClassVisitor
      • visitProgramClass

        public void visitProgramClass​(proguard.classfile.ProgramClass programClass)
        指定者:
        visitProgramClass 在接口中 proguard.classfile.visitor.ClassVisitor