类 HorizontalClassMerger

  • 所有已实现的接口:
    proguard.classfile.visitor.ClassPoolVisitor

    public class HorizontalClassMerger
    extends java.lang.Object
    implements proguard.classfile.visitor.ClassPoolVisitor
    This ClassPoolVisitor inlines siblings in the program classes that it visits, whenever possible.
    另请参阅:
    ClassMerger
    • 构造器概要

      构造器 
      构造器 说明
      HorizontalClassMerger​(boolean allowAccessModification, boolean mergeInterfacesAggressively, java.util.Set<java.lang.String> forbiddenClassNames)
      Creates a new HorizontalClassMerger.
      HorizontalClassMerger​(boolean allowAccessModification, boolean mergeInterfacesAggressively, java.util.Set<java.lang.String> forbiddenClassNames, proguard.classfile.visitor.ClassVisitor extraClassVisitor)
      Creates a new HorizontalClassMerger.
    • 方法概要

      所有方法 实例方法 具体方法 
      修饰符和类型 方法 说明
      boolean isCandidateForMerging​(proguard.classfile.Clazz clazz)
      Checks if a class can trivially not be used for merging (either as target or source)
      void visitClassPool​(proguard.classfile.ClassPool classPool)  
      • 从类继承的方法 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 构造器详细资料

      • HorizontalClassMerger

        public HorizontalClassMerger​(boolean allowAccessModification,
                                     boolean mergeInterfacesAggressively,
                                     java.util.Set<java.lang.String> forbiddenClassNames)
        Creates a new HorizontalClassMerger.
        参数:
        allowAccessModification - specifies whether the access modifiers of classes can be changed in order to merge them.
        mergeInterfacesAggressively - specifies whether interfaces may be merged aggressively.
        forbiddenClassNames - specifies the names of classes which are excluded from the chance of being merged
      • HorizontalClassMerger

        public HorizontalClassMerger​(boolean allowAccessModification,
                                     boolean mergeInterfacesAggressively,
                                     java.util.Set<java.lang.String> forbiddenClassNames,
                                     proguard.classfile.visitor.ClassVisitor extraClassVisitor)
        Creates a new HorizontalClassMerger.
        参数:
        allowAccessModification - specifies whether the access modifiers of classes can be changed in order to merge them.
        mergeInterfacesAggressively - specifies whether interfaces may be merged aggressively.
        forbiddenClassNames - specifies the names of classes which are excluded from the chance of being merged
        extraClassVisitor - an optional extra visitor for all merged classes.
    • 方法详细资料

      • visitClassPool

        public void visitClassPool​(proguard.classfile.ClassPool classPool)
        指定者:
        visitClassPool 在接口中 proguard.classfile.visitor.ClassPoolVisitor
      • isCandidateForMerging

        public boolean isCandidateForMerging​(proguard.classfile.Clazz clazz)
        Checks if a class can trivially not be used for merging (either as target or source)
        参数:
        clazz - the class.
        返回:
        true if the give clazz is a candidate for merging.