1 21 package proguard.classfile.visitor; 22 23 import proguard.classfile.*; 24 25 26 33 public class ClassMemberVisitor implements MemberVisitor 34 { 35 private ClassVisitor classVisitor; 36 37 private Clazz lastVisitedClass; 38 39 40 public ClassMemberVisitor(ClassVisitor classVisitor) 41 { 42 this.classVisitor = classVisitor; 43 } 44 45 46 public void visitProgramField(ProgramClass programClass, ProgramField programField) 47 { 48 if (!programClass.equals(lastVisitedClass)) 49 { 50 classVisitor.visitProgramClass(programClass); 51 52 lastVisitedClass = programClass; 53 } 54 } 55 56 57 public void visitProgramMethod(ProgramClass programClass, ProgramMethod programMethod) 58 { 59 if (!programClass.equals(lastVisitedClass)) 60 { 61 classVisitor.visitProgramClass(programClass); 62 63 lastVisitedClass = programClass; 64 } 65 } 66 67 68 public void visitLibraryField(LibraryClass libraryClass, LibraryField libraryField) 69 { 70 if (!libraryClass.equals(lastVisitedClass)) 71 { 72 classVisitor.visitLibraryClass(libraryClass); 73 74 lastVisitedClass = libraryClass; 75 } 76 } 77 78 79 public void visitLibraryMethod(LibraryClass libraryClass, LibraryMethod libraryMethod) 80 { 81 if (!libraryClass.equals(lastVisitedClass)) 82 { 83 classVisitor.visitLibraryClass(libraryClass); 84 85 lastVisitedClass = libraryClass; 86 } 87 } 88 } 89 | Popular Tags |