ProGuard

proguard.optimize
Class SideEffectMethodMarker

java.lang.Object
  extended byproguard.optimize.SideEffectMethodMarker
All Implemented Interfaces:
AttrInfoVisitor, ClassFileVisitor, ClassPoolVisitor, MemberInfoVisitor

public class SideEffectMethodMarker
extends Object
implements ClassPoolVisitor, ClassFileVisitor, MemberInfoVisitor, AttrInfoVisitor

This ClassPoolVisitor marks all methods that have side effects.

See Also:
WriteOnlyFieldMarker, NoSideEffectMethodMarker

Constructor Summary
SideEffectMethodMarker()
           
 
Method Summary
static boolean hasSideEffects(VisitorAccepter visitorAccepter)
           
static void markAsSideEffects(VisitorAccepter visitorAccepter)
           
 void visitClassPool(ClassPool classPool)
           
 void visitCodeAttrInfo(ClassFile classFile, MethodInfo methodInfo, CodeAttrInfo codeAttrInfo)
           
 void visitConstantValueAttrInfo(ClassFile classFile, FieldInfo fieldInfo, ConstantValueAttrInfo constantValueAttrInfo)
           
 void visitDeprecatedAttrInfo(ClassFile classFile, DeprecatedAttrInfo deprecatedAttrInfo)
           
 void visitExceptionsAttrInfo(ClassFile classFile, MethodInfo methodInfo, ExceptionsAttrInfo exceptionsAttrInfo)
           
 void visitInnerClassesAttrInfo(ClassFile classFile, InnerClassesAttrInfo innerClassesAttrInfo)
           
 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 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 visitSyntheticAttrInfo(ClassFile classFile, SyntheticAttrInfo syntheticAttrInfo)
           
 void visitUnknownAttrInfo(ClassFile classFile, UnknownAttrInfo unknownAttrInfo)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SideEffectMethodMarker

public SideEffectMethodMarker()
Method Detail

visitClassPool

public void visitClassPool(ClassPool classPool)
Specified by:
visitClassPool in interface ClassPoolVisitor

visitProgramClassFile

public void visitProgramClassFile(ProgramClassFile programClassFile)
Specified by:
visitProgramClassFile in interface ClassFileVisitor

visitLibraryClassFile

public void visitLibraryClassFile(LibraryClassFile libraryClassFile)
Specified by:
visitLibraryClassFile in interface ClassFileVisitor

visitProgramFieldInfo

public void visitProgramFieldInfo(ProgramClassFile programClassFile,
                                  ProgramFieldInfo programFieldInfo)
Specified by:
visitProgramFieldInfo in interface MemberInfoVisitor

visitProgramMethodInfo

public void visitProgramMethodInfo(ProgramClassFile programClassFile,
                                   ProgramMethodInfo programMethodInfo)
Specified by:
visitProgramMethodInfo in interface MemberInfoVisitor

visitLibraryFieldInfo

public void visitLibraryFieldInfo(LibraryClassFile libraryClassFile,
                                  LibraryFieldInfo libraryFieldInfo)
Specified by:
visitLibraryFieldInfo in interface MemberInfoVisitor

visitLibraryMethodInfo

public void visitLibraryMethodInfo(LibraryClassFile libraryClassFile,
                                   LibraryMethodInfo libraryMethodInfo)
Specified by:
visitLibraryMethodInfo in interface MemberInfoVisitor

visitUnknownAttrInfo

public void visitUnknownAttrInfo(ClassFile classFile,
                                 UnknownAttrInfo unknownAttrInfo)
Specified by:
visitUnknownAttrInfo in interface AttrInfoVisitor

visitInnerClassesAttrInfo

public void visitInnerClassesAttrInfo(ClassFile classFile,
                                      InnerClassesAttrInfo innerClassesAttrInfo)
Specified by:
visitInnerClassesAttrInfo in interface AttrInfoVisitor

visitConstantValueAttrInfo

public void visitConstantValueAttrInfo(ClassFile classFile,
                                       FieldInfo fieldInfo,
                                       ConstantValueAttrInfo constantValueAttrInfo)
Specified by:
visitConstantValueAttrInfo in interface AttrInfoVisitor

visitExceptionsAttrInfo

public void visitExceptionsAttrInfo(ClassFile classFile,
                                    MethodInfo methodInfo,
                                    ExceptionsAttrInfo exceptionsAttrInfo)
Specified by:
visitExceptionsAttrInfo in interface AttrInfoVisitor

visitLineNumberTableAttrInfo

public void visitLineNumberTableAttrInfo(ClassFile classFile,
                                         MethodInfo methodInfo,
                                         CodeAttrInfo codeAttrInfo,
                                         LineNumberTableAttrInfo lineNumberTableAttrInfo)
Specified by:
visitLineNumberTableAttrInfo in interface AttrInfoVisitor

visitLocalVariableTableAttrInfo

public void visitLocalVariableTableAttrInfo(ClassFile classFile,
                                            MethodInfo methodInfo,
                                            CodeAttrInfo codeAttrInfo,
                                            LocalVariableTableAttrInfo localVariableTableAttrInfo)
Specified by:
visitLocalVariableTableAttrInfo in interface AttrInfoVisitor

visitSourceFileAttrInfo

public void visitSourceFileAttrInfo(ClassFile classFile,
                                    SourceFileAttrInfo sourceFileAttrInfo)
Specified by:
visitSourceFileAttrInfo in interface AttrInfoVisitor

visitSourceDirAttrInfo

public void visitSourceDirAttrInfo(ClassFile classFile,
                                   SourceDirAttrInfo sourceDirAttrInfo)
Specified by:
visitSourceDirAttrInfo in interface AttrInfoVisitor

visitDeprecatedAttrInfo

public void visitDeprecatedAttrInfo(ClassFile classFile,
                                    DeprecatedAttrInfo deprecatedAttrInfo)
Specified by:
visitDeprecatedAttrInfo in interface AttrInfoVisitor

visitSyntheticAttrInfo

public void visitSyntheticAttrInfo(ClassFile classFile,
                                   SyntheticAttrInfo syntheticAttrInfo)
Specified by:
visitSyntheticAttrInfo in interface AttrInfoVisitor

visitSignatureAttrInfo

public void visitSignatureAttrInfo(ClassFile classFile,
                                   SignatureAttrInfo signatureAttrInfo)
Specified by:
visitSignatureAttrInfo in interface AttrInfoVisitor

visitCodeAttrInfo

public void visitCodeAttrInfo(ClassFile classFile,
                              MethodInfo methodInfo,
                              CodeAttrInfo codeAttrInfo)
Specified by:
visitCodeAttrInfo in interface AttrInfoVisitor

markAsSideEffects

public static void markAsSideEffects(VisitorAccepter visitorAccepter)

hasSideEffects

public static boolean hasSideEffects(VisitorAccepter visitorAccepter)

ProGuard