proguard.shrink
Class UsagePrinter

java.lang.Object
  extended by proguard.classfile.util.SimplifiedVisitor
      extended by proguard.shrink.UsagePrinter
All Implemented Interfaces:
ClassVisitor, MemberVisitor

public class UsagePrinter
extends SimplifiedVisitor
implements ClassVisitor, MemberVisitor

This ClassVisitor prints out the classes and class members that have been marked as being used (or not used).

See Also:
UsageMarker

Constructor Summary
UsagePrinter(proguard.shrink.UsageMarker usageMarker, boolean printUnusedItems)
          Creates a new UsagePrinter that prints to System.out.
UsagePrinter(proguard.shrink.UsageMarker usageMarker, boolean printUnusedItems, java.io.PrintStream printStream)
          Creates a new UsagePrinter that prints to the given stream.
 
Method Summary
 void visitProgramClass(ProgramClass programClass)
           
 void visitProgramField(ProgramClass programClass, ProgramField programField)
           
 void visitProgramMethod(ProgramClass programClass, ProgramMethod programMethod)
           
 
Methods inherited from class proguard.classfile.util.SimplifiedVisitor
visitAnnotation, visitAnnotation, visitAnnotation, visitAnnotation, visitAnnotation, visitAnnotationDefaultAttribute, visitAnnotationElementValue, visitAnyAnnotationsAttribute, visitAnyAttribute, visitAnyClass, visitAnyConstant, visitAnyElementValue, visitAnyInstruction, visitAnyMember, visitAnyMethodrefConstant, visitAnyParameterAnnotationsAttribute, visitAnyRefConstant, visitAnyStackMapFrame, visitAnySwitchInstruction, visitAnyVerificationType, visitArrayElementValue, visitBranchInstruction, visitClassConstant, visitClassElementValue, visitCodeAttribute, visitConstantElementValue, visitConstantInstruction, visitConstantValueAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDoubleConstant, visitDoubleType, visitEnclosingMethodAttribute, visitEnumConstantElementValue, visitExceptionsAttribute, visitFieldrefConstant, visitFloatConstant, visitFloatType, visitFullFrame, visitInnerClassesAttribute, visitIntegerConstant, visitIntegerType, visitInterfaceMethodrefConstant, visitLessZeroFrame, visitLibraryClass, visitLibraryField, visitLibraryMember, visitLibraryMethod, visitLineNumberTableAttribute, visitLocalVariableTableAttribute, visitLocalVariableTypeTableAttribute, visitLongConstant, visitLongType, visitLookUpSwitchInstruction, visitMethodrefConstant, visitMoreZeroFrame, visitNameAndTypeConstant, visitNullType, visitObjectType, visitProgramMember, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleParameterAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleParameterAnnotationsAttribute, visitSameOneFrame, visitSameZeroFrame, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSimpleInstruction, visitSourceDirAttribute, visitSourceFileAttribute, visitStackDoubleType, visitStackFloatType, visitStackIntegerType, visitStackLongType, visitStackMapAttribute, visitStackMapTableAttribute, visitStackNullType, visitStackObjectType, visitStackTopType, visitStackUninitializedThisType, visitStackUninitializedType, visitStringConstant, visitSyntheticAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitTableSwitchInstruction, visitTopType, visitUninitializedThisType, visitUninitializedType, visitUnknownAttribute, visitUtf8Constant, visitVariableInstruction, visitVariablesDoubleType, visitVariablesFloatType, visitVariablesIntegerType, visitVariablesLongType, visitVariablesNullType, visitVariablesObjectType, visitVariablesTopType, visitVariablesUninitializedThisType, visitVariablesUninitializedType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface proguard.classfile.visitor.ClassVisitor
visitLibraryClass
 
Methods inherited from interface proguard.classfile.visitor.MemberVisitor
visitLibraryField, visitLibraryMethod
 

Constructor Detail

UsagePrinter

public UsagePrinter(proguard.shrink.UsageMarker usageMarker,
                    boolean printUnusedItems)
Creates a new UsagePrinter that prints to System.out.

Parameters:
usageMarker - the usage marker that was used to mark the classes and class members.
printUnusedItems - a flag that indicates whether only unused items should be printed, or alternatively, only used items.

UsagePrinter

public UsagePrinter(proguard.shrink.UsageMarker usageMarker,
                    boolean printUnusedItems,
                    java.io.PrintStream printStream)
Creates a new UsagePrinter that prints to the given stream.

Parameters:
usageMarker - the usage marker that was used to mark the classes and class members.
printUnusedItems - a flag that indicates whether only unused items should be printed, or alternatively, only used items.
printStream - the stream to which to print.
Method Detail

visitProgramClass

public void visitProgramClass(ProgramClass programClass)
Specified by:
visitProgramClass in interface ClassVisitor
Overrides:
visitProgramClass in class SimplifiedVisitor

visitProgramField

public void visitProgramField(ProgramClass programClass,
                              ProgramField programField)
Specified by:
visitProgramField in interface MemberVisitor
Overrides:
visitProgramField in class SimplifiedVisitor

visitProgramMethod

public void visitProgramMethod(ProgramClass programClass,
                               ProgramMethod programMethod)
Specified by:
visitProgramMethod in interface MemberVisitor
Overrides:
visitProgramMethod in class SimplifiedVisitor