1 21 package proguard.classfile.visitor; 22 23 import proguard.classfile.util.SimplifiedVisitor; 24 import proguard.classfile.constant.visitor.ConstantVisitor; 25 import proguard.classfile.constant.*; 26 import proguard.classfile.attribute.annotation.*; 27 import proguard.classfile.attribute.annotation.visitor.ElementValueVisitor; 28 import proguard.classfile.attribute.*; 29 import proguard.classfile.*; 30 31 37 public class ReferencedMemberVisitor 38 extends SimplifiedVisitor 39 implements ConstantVisitor, 40 ElementValueVisitor 41 { 42 private MemberVisitor memberVisitor; 43 44 45 public ReferencedMemberVisitor(MemberVisitor memberVisitor) 46 { 47 this.memberVisitor = memberVisitor; 48 } 49 50 51 53 public void visitAnyConstant(Clazz clazz, Constant constant) {} 54 55 56 public void visitStringConstant(Clazz clazz, StringConstant stringConstant) 57 { 58 stringConstant.referencedMemberAccept(memberVisitor); 59 } 60 61 62 public void visitAnyRefConstant(Clazz clazz, RefConstant refConstant) 63 { 64 refConstant.referencedMemberAccept(memberVisitor); 65 } 66 67 68 70 public void visitAnyElementValue(Clazz clazz, Annotation annotation, ElementValue elementValue) 71 { 72 elementValue.referencedMethodAccept(memberVisitor); 73 } 74 } 75 | Popular Tags |