类 ClassMerger
- java.lang.Object
-
- proguard.optimize.peephole.ClassMerger
-
- 所有已实现的接口:
proguard.classfile.constant.visitor.ConstantVisitor,proguard.classfile.visitor.ClassVisitor
public class ClassMerger extends java.lang.Object implements proguard.classfile.visitor.ClassVisitor, proguard.classfile.constant.visitor.ConstantVisitorThis ClassVisitor inlines the classes that it visits in a given target class, whenever possible.- 另请参阅:
RetargetedInnerClassAttributeRemover,TargetClassChanger,ClassReferenceFixer,MemberReferenceFixer,AccessFixer
-
-
构造器概要
构造器 构造器 说明 ClassMerger(proguard.classfile.ProgramClass targetClass, boolean allowAccessModification, boolean mergeInterfacesAggressively, boolean mergeWrapperClasses)Creates a new ClassMerger that will merge classes into the given target class.ClassMerger(proguard.classfile.ProgramClass targetClass, boolean allowAccessModification, boolean mergeInterfacesAggressively, boolean mergeWrapperClasses, proguard.classfile.visitor.ClassVisitor extraClassVisitor)Creates a new ClassMerger that will merge classes into the given target class.
-
方法概要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 说明 static proguard.classfile.ClazzgetTargetClass(proguard.classfile.Clazz clazz)booleanisMergeable(proguard.classfile.ProgramClass programClass)static booleanisNestHostOrMember(proguard.classfile.Clazz clazz)static voidsetTargetClass(proguard.classfile.Clazz clazz, proguard.classfile.Clazz targetClass)voidvisitAnyClass(proguard.classfile.Clazz clazz)voidvisitProgramClass(proguard.classfile.ProgramClass programClass)-
从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
从接口继承的方法 proguard.classfile.constant.visitor.ConstantVisitor
visitAnyConstant, visitAnyMethodrefConstant, visitAnyRefConstant, visitClassConstant, visitDoubleConstant, visitDynamicConstant, visitFieldrefConstant, visitFloatConstant, visitIntegerConstant, visitInterfaceMethodrefConstant, visitInvokeDynamicConstant, visitLongConstant, visitMethodHandleConstant, visitMethodrefConstant, visitMethodTypeConstant, visitModuleConstant, visitNameAndTypeConstant, visitPackageConstant, visitPrimitiveArrayConstant, visitStringConstant, visitUtf8Constant
-
-
-
-
构造器详细资料
-
ClassMerger
public ClassMerger(proguard.classfile.ProgramClass targetClass, boolean allowAccessModification, boolean mergeInterfacesAggressively, boolean mergeWrapperClasses)Creates a new ClassMerger that will merge classes into the given target class.- 参数:
targetClass- the class into which all visited classes will be merged.allowAccessModification- specifies whether the access modifiers of classes can be changed in order to merge them.mergeInterfacesAggressively- specifies whether interfaces may be merged aggressively.
-
ClassMerger
public ClassMerger(proguard.classfile.ProgramClass targetClass, boolean allowAccessModification, boolean mergeInterfacesAggressively, boolean mergeWrapperClasses, proguard.classfile.visitor.ClassVisitor extraClassVisitor)Creates a new ClassMerger that will merge classes into the given target class.- 参数:
targetClass- the class into which all visited classes will be merged.allowAccessModification- specifies whether the access modifiers of classes can be changed in order to merge them.mergeInterfacesAggressively- specifies whether interfaces may be merged aggressively.extraClassVisitor- an optional extra visitor for all merged classes.
-
-
方法详细资料
-
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
-
isMergeable
public boolean isMergeable(proguard.classfile.ProgramClass programClass)
-
isNestHostOrMember
public static boolean isNestHostOrMember(proguard.classfile.Clazz clazz)
-
setTargetClass
public static void setTargetClass(proguard.classfile.Clazz clazz, proguard.classfile.Clazz targetClass)
-
getTargetClass
public static proguard.classfile.Clazz getTargetClass(proguard.classfile.Clazz clazz)
-
-