proguard.classfile.io
Class LibraryClassReader

java.lang.Object
  extended by proguard.classfile.util.SimplifiedVisitor
      extended by proguard.classfile.io.LibraryClassReader
All Implemented Interfaces:
ConstantVisitor, ClassVisitor, MemberVisitor

public class LibraryClassReader
extends SimplifiedVisitor
implements ClassVisitor, MemberVisitor, ConstantVisitor

This ClassVisitor fills out the LibraryClass objects that it visits with data from the given DataInput object.


Constructor Summary
LibraryClassReader(java.io.DataInput dataInput, boolean skipNonPublicClasses, boolean skipNonPublicClassMembers)
          Creates a new ProgramClassReader for reading from the given DataInput.
 
Method Summary
 void visitAnyRefConstant(Clazz clazz, RefConstant refConstant)
          Visits any type of RefConstant of the given class.
 void visitClassConstant(Clazz clazz, ClassConstant classConstant)
           
 void visitDoubleConstant(Clazz clazz, DoubleConstant doubleConstant)
           
 void visitFloatConstant(Clazz clazz, FloatConstant floatConstant)
           
 void visitIntegerConstant(Clazz clazz, IntegerConstant integerConstant)
           
 void visitLibraryClass(LibraryClass libraryClass)
           
 void visitLibraryMember(LibraryClass libraryClass, LibraryMember libraryMember)
          Visits any type of class member of the given library class.
 void visitLongConstant(Clazz clazz, LongConstant longConstant)
           
 void visitNameAndTypeConstant(Clazz clazz, NameAndTypeConstant nameAndTypeConstant)
           
 void visitProgramClass(ProgramClass libraryClass)
           
 void visitProgramMember(ProgramClass libraryClass, ProgramMember libraryMember)
          Visits any type of class member of the given program class.
 void visitStringConstant(Clazz clazz, StringConstant stringConstant)
           
 void visitUtf8Constant(Clazz clazz, Utf8Constant utf8Constant)
           
 
Methods inherited from class proguard.classfile.util.SimplifiedVisitor
visitAnnotation, visitAnnotation, visitAnnotation, visitAnnotation, visitAnnotation, visitAnnotationDefaultAttribute, visitAnnotationElementValue, visitAnyAnnotationsAttribute, visitAnyAttribute, visitAnyClass, visitAnyConstant, visitAnyElementValue, visitAnyInstruction, visitAnyMember, visitAnyMethodrefConstant, visitAnyParameterAnnotationsAttribute, visitAnyStackMapFrame, visitAnySwitchInstruction, visitAnyVerificationType, visitArrayElementValue, visitBranchInstruction, visitClassElementValue, visitCodeAttribute, visitConstantElementValue, visitConstantInstruction, visitConstantValueAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDoubleType, visitEnclosingMethodAttribute, visitEnumConstantElementValue, visitExceptionsAttribute, visitFieldrefConstant, visitFloatType, visitFullFrame, visitInnerClassesAttribute, visitIntegerType, visitInterfaceMethodrefConstant, visitLessZeroFrame, visitLibraryField, visitLibraryMethod, visitLineNumberTableAttribute, visitLocalVariableTableAttribute, visitLocalVariableTypeTableAttribute, visitLongType, visitLookUpSwitchInstruction, visitMethodrefConstant, visitMoreZeroFrame, visitNullType, visitObjectType, visitProgramField, visitProgramMethod, 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, visitSyntheticAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitTableSwitchInstruction, visitTopType, visitUninitializedThisType, visitUninitializedType, visitUnknownAttribute, 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.MemberVisitor
visitLibraryField, visitLibraryMethod, visitProgramField, visitProgramMethod
 
Methods inherited from interface proguard.classfile.constant.visitor.ConstantVisitor
visitFieldrefConstant, visitInterfaceMethodrefConstant, visitMethodrefConstant
 

Constructor Detail

LibraryClassReader

public LibraryClassReader(java.io.DataInput dataInput,
                          boolean skipNonPublicClasses,
                          boolean skipNonPublicClassMembers)
Creates a new ProgramClassReader for reading from the given DataInput.

Method Detail

visitProgramClass

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

visitLibraryClass

public void visitLibraryClass(LibraryClass libraryClass)
Specified by:
visitLibraryClass in interface ClassVisitor
Overrides:
visitLibraryClass in class SimplifiedVisitor

visitProgramMember

public void visitProgramMember(ProgramClass libraryClass,
                               ProgramMember libraryMember)
Description copied from class: SimplifiedVisitor
Visits any type of class member of the given program class.

Overrides:
visitProgramMember in class SimplifiedVisitor

visitLibraryMember

public void visitLibraryMember(LibraryClass libraryClass,
                               LibraryMember libraryMember)
Description copied from class: SimplifiedVisitor
Visits any type of class member of the given library class.

Overrides:
visitLibraryMember in class SimplifiedVisitor

visitIntegerConstant

public void visitIntegerConstant(Clazz clazz,
                                 IntegerConstant integerConstant)
Specified by:
visitIntegerConstant in interface ConstantVisitor
Overrides:
visitIntegerConstant in class SimplifiedVisitor

visitLongConstant

public void visitLongConstant(Clazz clazz,
                              LongConstant longConstant)
Specified by:
visitLongConstant in interface ConstantVisitor
Overrides:
visitLongConstant in class SimplifiedVisitor

visitFloatConstant

public void visitFloatConstant(Clazz clazz,
                               FloatConstant floatConstant)
Specified by:
visitFloatConstant in interface ConstantVisitor
Overrides:
visitFloatConstant in class SimplifiedVisitor

visitDoubleConstant

public void visitDoubleConstant(Clazz clazz,
                                DoubleConstant doubleConstant)
Specified by:
visitDoubleConstant in interface ConstantVisitor
Overrides:
visitDoubleConstant in class SimplifiedVisitor

visitStringConstant

public void visitStringConstant(Clazz clazz,
                                StringConstant stringConstant)
Specified by:
visitStringConstant in interface ConstantVisitor
Overrides:
visitStringConstant in class SimplifiedVisitor

visitUtf8Constant

public void visitUtf8Constant(Clazz clazz,
                              Utf8Constant utf8Constant)
Specified by:
visitUtf8Constant in interface ConstantVisitor
Overrides:
visitUtf8Constant in class SimplifiedVisitor

visitAnyRefConstant

public void visitAnyRefConstant(Clazz clazz,
                                RefConstant refConstant)
Description copied from class: SimplifiedVisitor
Visits any type of RefConstant of the given class.

Overrides:
visitAnyRefConstant in class SimplifiedVisitor

visitClassConstant

public void visitClassConstant(Clazz clazz,
                               ClassConstant classConstant)
Specified by:
visitClassConstant in interface ConstantVisitor
Overrides:
visitClassConstant in class SimplifiedVisitor

visitNameAndTypeConstant

public void visitNameAndTypeConstant(Clazz clazz,
                                     NameAndTypeConstant nameAndTypeConstant)
Specified by:
visitNameAndTypeConstant in interface ConstantVisitor
Overrides:
visitNameAndTypeConstant in class SimplifiedVisitor