类 MethodCopier
- java.lang.Object
-
- proguard.classfile.editor.MethodCopier
-
- 所有已实现的接口:
AttributeVisitor,ClassVisitor,MemberVisitor
public class MethodCopier extends java.lang.Object implements ClassVisitor, MemberVisitor, AttributeVisitor
ThisClassVisitorcopies a method into a target class. It first checks if a method with the same name and descriptor as the method to be copied already exists in the target class. If that is indeed the case, this visitor is a no-op. This visitor optionally uses a name transformer function to apply to the original method's name before copying. If no name transformer function is provided, the original method's name is used, instead. If the method to be copied is indeed copied into the target class, this visitor passes the resulting method to an extra member visitor, if provided.
-
-
构造器概要
构造器 构造器 说明 MethodCopier(ProgramClass sourceClass, ProgramMethod sourceMethod)MethodCopier(ProgramClass sourceClass, ProgramMethod sourceMethod, StringFunction nameTransformer)MethodCopier(ProgramClass sourceClass, ProgramMethod sourceMethod, StringFunction nameTransformer, MemberVisitor extraMemberVisitor)
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 voidvisitAnyAttribute(Clazz clazz, Attribute attribute)Visits any Attribute instance.voidvisitAnyClass(Clazz clazz)Visits any Clazz instance.voidvisitAnyMember(Clazz clazz, Member member)Visits any Member instance.voidvisitCodeAttribute(Clazz clazz, Method method, CodeAttribute codeAttribute)voidvisitProgramClass(ProgramClass programClass)voidvisitProgramMethod(ProgramClass programClass, ProgramMethod programMethod)-
从类继承的方法 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.visitor.MemberVisitor
visitLibraryField, visitLibraryMember, visitLibraryMethod, visitProgramField, visitProgramMember
-
-
-
-
构造器详细资料
-
MethodCopier
public MethodCopier(ProgramClass sourceClass, ProgramMethod sourceMethod)
-
MethodCopier
public MethodCopier(ProgramClass sourceClass, ProgramMethod sourceMethod, StringFunction nameTransformer)
-
MethodCopier
public MethodCopier(ProgramClass sourceClass, ProgramMethod sourceMethod, StringFunction nameTransformer, MemberVisitor extraMemberVisitor)
-
-
方法详细资料
-
visitAnyClass
public void visitAnyClass(Clazz clazz)
从接口复制的说明:ClassVisitorVisits any Clazz instance. The more specific default implementations of this interface delegate to this method.- 指定者:
visitAnyClass在接口中ClassVisitor
-
visitProgramClass
public void visitProgramClass(ProgramClass programClass)
- 指定者:
visitProgramClass在接口中ClassVisitor
-
visitAnyMember
public void visitAnyMember(Clazz clazz, Member member)
从接口复制的说明:MemberVisitorVisits any Member instance. The more specific default implementations of this interface delegate to this method.- 指定者:
visitAnyMember在接口中MemberVisitor
-
visitProgramMethod
public void visitProgramMethod(ProgramClass programClass, ProgramMethod programMethod)
- 指定者:
visitProgramMethod在接口中MemberVisitor
-
visitAnyAttribute
public void visitAnyAttribute(Clazz clazz, Attribute attribute)
从接口复制的说明:AttributeVisitorVisits any Attribute instance. The more specific default implementations of this interface delegate to this method.- 指定者:
visitAnyAttribute在接口中AttributeVisitor
-
visitCodeAttribute
public void visitCodeAttribute(Clazz clazz, Method method, CodeAttribute codeAttribute)
- 指定者:
visitCodeAttribute在接口中AttributeVisitor
-
-