Package proguard.classfile.editor
Class MemberRemover
java.lang.Object
proguard.classfile.editor.MemberRemover
- All Implemented Interfaces:
ClassVisitor,MemberVisitor
This visitor removes all members it visits in a
ProgramClass.
It should be used in two steps:
- In the first step, the collection step, all program members to be removed should be visited.
- In the second step, the removal step, the program class containing the program members should be visited. This will actually delete all collected members.
For example, to remove all fields in a program class:
MemberRemover remover = new MemberRemover();
programClass.fieldsAccept(remover);
programClass.accept(remover);
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidreset()Forget about all members that have been collected so far.voidvisitAnyClass(Clazz clazz) Visits any Clazz instance.voidvisitAnyMember(Clazz clazz, Member member) Visits any Member instance.voidvisitProgramClass(ProgramClass programClass) voidvisitProgramField(ProgramClass programClass, ProgramField programField) voidvisitProgramMethod(ProgramClass programClass, ProgramMethod programMethod) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface proguard.classfile.visitor.ClassVisitor
visitLibraryClassMethods inherited from interface proguard.classfile.visitor.MemberVisitor
visitLibraryField, visitLibraryMember, visitLibraryMethod, visitProgramMember
-
Constructor Details
-
MemberRemover
public MemberRemover()
-
-
Method Details
-
reset
public void reset()Forget about all members that have been collected so far. After this method, thisMemberRemoverwill become a no-op until the next time a member is collected. -
visitAnyClass
Description copied from interface:ClassVisitorVisits any Clazz instance. The more specific default implementations of this interface delegate to this method.- Specified by:
visitAnyClassin interfaceClassVisitor
-
visitProgramClass
- Specified by:
visitProgramClassin interfaceClassVisitor
-
visitAnyMember
Description copied from interface:MemberVisitorVisits any Member instance. The more specific default implementations of this interface delegate to this method.- Specified by:
visitAnyMemberin interfaceMemberVisitor
-
visitProgramField
- Specified by:
visitProgramFieldin interfaceMemberVisitor
-
visitProgramMethod
- Specified by:
visitProgramMethodin interfaceMemberVisitor
-