|
ProGuard | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectproguard.classfile.util.ClassFileInitializer
This ClassFileVisitor initializes the references and the class hierarchy of all class files it visits.
Visited class files are added to the subclass list of their superclasses and interfaces. These subclass lists make it more convenient to travel down the class hierarchy.
All class constant pool entries get direct references to the corresponding classes. These references make it more convenient to travel up and across the class hierarchy.
All field and method reference constant pool entries get direct references to the corresponding classes, fields, and methods.
All name and type constant pool entries get a list of direct references to the classes listed in the type.
Visited library class files get direct references to their superclasses and interfaces, replacing the superclass names and interface names. The direct references are equivalent to the names, but they are more efficient to work with.
This visitor optionally prints warnings if some items can't be found, and
notes on the usage of (SomeClass)Class.forName(variable).newInstance().
| Constructor Summary | |
ClassFileInitializer(ClassPool programClassPool,
ClassPool libraryClassPool)
Creates a new ClassFileInitializer that initializes the hierarchy of all visited class files, printing warnings if some classes can't be found. |
|
ClassFileInitializer(ClassPool programClassPool,
ClassPool libraryClassPool,
boolean warn,
boolean note)
Creates a new ClassFileInitializer that initializes the hierarchy of all visited class files, optionally printing warnings if some classes can't be found. |
|
| Method Summary | |
int |
getHierarchyWarningCount()
Returns the number of warnings printed about unresolved references to superclasses or interfaces. |
int |
getNoteCount()
Returns the number of notes printed about occurrences of ' (SomeClass)Class.forName(variable).newInstance()'. |
int |
getReferenceWarningCount()
Returns the number of warnings printed about unresolved references to class members in program class files. |
void |
visitClassCpInfo(ClassFile classFile,
ClassCpInfo classCpInfo)
|
void |
visitCodeAttrInfo(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo)
|
void |
visitConstantValueAttrInfo(ClassFile classFile,
FieldInfo fieldInfo,
ConstantValueAttrInfo constantValueAttrInfo)
|
void |
visitDeprecatedAttrInfo(ClassFile classFile,
DeprecatedAttrInfo deprecatedAttrInfo)
|
void |
visitDoubleCpInfo(ClassFile classFile,
DoubleCpInfo doubleCpInfo)
|
void |
visitExceptionsAttrInfo(ClassFile classFile,
MethodInfo methodInfo,
ExceptionsAttrInfo exceptionsAttrInfo)
|
void |
visitFieldrefCpInfo(ClassFile classFile,
FieldrefCpInfo fieldrefCpInfo)
|
void |
visitFloatCpInfo(ClassFile classFile,
FloatCpInfo floatCpInfo)
|
void |
visitInnerClassesAttrInfo(ClassFile classFile,
InnerClassesAttrInfo innerClassesAttrInfo)
|
void |
visitIntegerCpInfo(ClassFile classFile,
IntegerCpInfo integerCpInfo)
|
void |
visitInterfaceMethodrefCpInfo(ClassFile classFile,
InterfaceMethodrefCpInfo interfaceMethodrefCpInfo)
|
void |
visitLibraryClassFile(LibraryClassFile libraryClassFile)
|
void |
visitLibraryFieldInfo(LibraryClassFile libraryClassFile,
LibraryFieldInfo libraryFieldInfo)
|
void |
visitLibraryMethodInfo(LibraryClassFile libraryClassFile,
LibraryMethodInfo libraryMethodInfo)
|
void |
visitLineNumberTableAttrInfo(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
LineNumberTableAttrInfo lineNumberTableAttrInfo)
|
void |
visitLocalVariableTableAttrInfo(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
LocalVariableTableAttrInfo localVariableTableAttrInfo)
|
void |
visitLongCpInfo(ClassFile classFile,
LongCpInfo longCpInfo)
|
void |
visitMethodrefCpInfo(ClassFile classFile,
MethodrefCpInfo methodrefCpInfo)
|
void |
visitNameAndTypeCpInfo(ClassFile classFile,
NameAndTypeCpInfo nameAndTypeCpInfo)
|
void |
visitProgramClassFile(ProgramClassFile programClassFile)
|
void |
visitProgramFieldInfo(ProgramClassFile programClassFile,
ProgramFieldInfo programFieldInfo)
|
void |
visitProgramMethodInfo(ProgramClassFile programClassFile,
ProgramMethodInfo programMethodInfo)
|
void |
visitSignatureAttrInfo(ClassFile classFile,
SignatureAttrInfo signatureAttrInfo)
|
void |
visitSourceDirAttrInfo(ClassFile classFile,
SourceDirAttrInfo sourceDirAttrInfo)
|
void |
visitSourceFileAttrInfo(ClassFile classFile,
SourceFileAttrInfo sourceFileAttrInfo)
|
void |
visitStringCpInfo(ClassFile classFile,
StringCpInfo stringCpInfo)
|
void |
visitSyntheticAttrInfo(ClassFile classFile,
SyntheticAttrInfo syntheticAttrInfo)
|
void |
visitUnknownAttrInfo(ClassFile classFile,
UnknownAttrInfo unknownAttrInfo)
|
void |
visitUtf8CpInfo(ClassFile classFile,
Utf8CpInfo utf8CpInfo)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public ClassFileInitializer(ClassPool programClassPool,
ClassPool libraryClassPool)
public ClassFileInitializer(ClassPool programClassPool,
ClassPool libraryClassPool,
boolean warn,
boolean note)
| Method Detail |
public int getHierarchyWarningCount()
public int getReferenceWarningCount()
public int getNoteCount()
(SomeClass)Class.forName(variable).newInstance()'.
public void visitProgramClassFile(ProgramClassFile programClassFile)
visitProgramClassFile in interface ClassFileVisitorpublic void visitLibraryClassFile(LibraryClassFile libraryClassFile)
visitLibraryClassFile in interface ClassFileVisitor
public void visitProgramFieldInfo(ProgramClassFile programClassFile,
ProgramFieldInfo programFieldInfo)
visitProgramFieldInfo in interface MemberInfoVisitor
public void visitProgramMethodInfo(ProgramClassFile programClassFile,
ProgramMethodInfo programMethodInfo)
visitProgramMethodInfo in interface MemberInfoVisitor
public void visitLibraryFieldInfo(LibraryClassFile libraryClassFile,
LibraryFieldInfo libraryFieldInfo)
visitLibraryFieldInfo in interface MemberInfoVisitor
public void visitLibraryMethodInfo(LibraryClassFile libraryClassFile,
LibraryMethodInfo libraryMethodInfo)
visitLibraryMethodInfo in interface MemberInfoVisitor
public void visitIntegerCpInfo(ClassFile classFile,
IntegerCpInfo integerCpInfo)
visitIntegerCpInfo in interface CpInfoVisitor
public void visitLongCpInfo(ClassFile classFile,
LongCpInfo longCpInfo)
visitLongCpInfo in interface CpInfoVisitor
public void visitFloatCpInfo(ClassFile classFile,
FloatCpInfo floatCpInfo)
visitFloatCpInfo in interface CpInfoVisitor
public void visitDoubleCpInfo(ClassFile classFile,
DoubleCpInfo doubleCpInfo)
visitDoubleCpInfo in interface CpInfoVisitor
public void visitStringCpInfo(ClassFile classFile,
StringCpInfo stringCpInfo)
visitStringCpInfo in interface CpInfoVisitor
public void visitUtf8CpInfo(ClassFile classFile,
Utf8CpInfo utf8CpInfo)
visitUtf8CpInfo in interface CpInfoVisitor
public void visitFieldrefCpInfo(ClassFile classFile,
FieldrefCpInfo fieldrefCpInfo)
visitFieldrefCpInfo in interface CpInfoVisitor
public void visitInterfaceMethodrefCpInfo(ClassFile classFile,
InterfaceMethodrefCpInfo interfaceMethodrefCpInfo)
visitInterfaceMethodrefCpInfo in interface CpInfoVisitor
public void visitMethodrefCpInfo(ClassFile classFile,
MethodrefCpInfo methodrefCpInfo)
visitMethodrefCpInfo in interface CpInfoVisitor
public void visitClassCpInfo(ClassFile classFile,
ClassCpInfo classCpInfo)
visitClassCpInfo in interface CpInfoVisitor
public void visitNameAndTypeCpInfo(ClassFile classFile,
NameAndTypeCpInfo nameAndTypeCpInfo)
visitNameAndTypeCpInfo in interface CpInfoVisitor
public void visitUnknownAttrInfo(ClassFile classFile,
UnknownAttrInfo unknownAttrInfo)
visitUnknownAttrInfo in interface AttrInfoVisitor
public void visitInnerClassesAttrInfo(ClassFile classFile,
InnerClassesAttrInfo innerClassesAttrInfo)
visitInnerClassesAttrInfo in interface AttrInfoVisitor
public void visitConstantValueAttrInfo(ClassFile classFile,
FieldInfo fieldInfo,
ConstantValueAttrInfo constantValueAttrInfo)
visitConstantValueAttrInfo in interface AttrInfoVisitor
public void visitExceptionsAttrInfo(ClassFile classFile,
MethodInfo methodInfo,
ExceptionsAttrInfo exceptionsAttrInfo)
visitExceptionsAttrInfo in interface AttrInfoVisitor
public void visitLineNumberTableAttrInfo(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
LineNumberTableAttrInfo lineNumberTableAttrInfo)
visitLineNumberTableAttrInfo in interface AttrInfoVisitor
public void visitLocalVariableTableAttrInfo(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
LocalVariableTableAttrInfo localVariableTableAttrInfo)
visitLocalVariableTableAttrInfo in interface AttrInfoVisitor
public void visitSourceFileAttrInfo(ClassFile classFile,
SourceFileAttrInfo sourceFileAttrInfo)
visitSourceFileAttrInfo in interface AttrInfoVisitor
public void visitSourceDirAttrInfo(ClassFile classFile,
SourceDirAttrInfo sourceDirAttrInfo)
visitSourceDirAttrInfo in interface AttrInfoVisitor
public void visitDeprecatedAttrInfo(ClassFile classFile,
DeprecatedAttrInfo deprecatedAttrInfo)
visitDeprecatedAttrInfo in interface AttrInfoVisitor
public void visitSyntheticAttrInfo(ClassFile classFile,
SyntheticAttrInfo syntheticAttrInfo)
visitSyntheticAttrInfo in interface AttrInfoVisitor
public void visitSignatureAttrInfo(ClassFile classFile,
SignatureAttrInfo signatureAttrInfo)
visitSignatureAttrInfo in interface AttrInfoVisitor
public void visitCodeAttrInfo(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo)
visitCodeAttrInfo in interface AttrInfoVisitor
|
ProGuard | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||