proguard.classfile.visitor
Class MemberAccessFilter

java.lang.Object
  extended by proguard.classfile.visitor.MemberAccessFilter
All Implemented Interfaces:
MemberVisitor

public class MemberAccessFilter
extends java.lang.Object
implements MemberVisitor

This MemberVisitor delegates its visits to another given MemberVisitor, but only when the visited member has the proper access flags.

If conflicting access flags (public/private/protected) are specified, having one of them set will be considered sufficient.

See Also:
ClassConstants

Constructor Summary
MemberAccessFilter(int requiredSetAccessFlags, int requiredUnsetAccessFlags, MemberVisitor memberVisitor)
          Creates a new MemberAccessFilter.
 
Method Summary
 void visitLibraryField(LibraryClass libraryClass, LibraryField libraryField)
           
 void visitLibraryMethod(LibraryClass libraryClass, LibraryMethod libraryMethod)
           
 void visitProgramField(ProgramClass programClass, ProgramField programField)
           
 void visitProgramMethod(ProgramClass programClass, ProgramMethod programMethod)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MemberAccessFilter

public MemberAccessFilter(int requiredSetAccessFlags,
                          int requiredUnsetAccessFlags,
                          MemberVisitor memberVisitor)
Creates a new MemberAccessFilter.

Parameters:
requiredSetAccessFlags - the class access flags that should be set.
requiredUnsetAccessFlags - the class access flags that should be unset.
memberVisitor - the MemberVisitor to which visits will be delegated.
Method Detail

visitProgramField

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

visitProgramMethod

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

visitLibraryField

public void visitLibraryField(LibraryClass libraryClass,
                              LibraryField libraryField)
Specified by:
visitLibraryField in interface MemberVisitor

visitLibraryMethod

public void visitLibraryMethod(LibraryClass libraryClass,
                               LibraryMethod libraryMethod)
Specified by:
visitLibraryMethod in interface MemberVisitor