| 1 32 package net.sf.retrotranslator.runtime.impl; 33 34 import java.util.*; 35 import net.sf.retrotranslator.runtime.asm.AnnotationVisitor; 36 37 40 public class AnnotationValue implements AnnotationVisitor { 41 42 private final String desc; 43 private final Map<String , Object > elements = new HashMap<String , Object >(); 44 45 public AnnotationValue(String descriptor) { 46 this.desc = descriptor; 47 } 48 49 public String getDesc() { 50 return desc; 51 } 52 53 public Object getElement(String name) { 54 return elements.get(name); 55 } 56 57 public void visit(String name, Object value) { 58 elements.put(name, value); 59 } 60 61 public void visitEnum(String name, String desc, String value) { 62 elements.put(name, new EnumValue(desc, value)); 63 } 64 65 public AnnotationVisitor visitAnnotation(String name, String desc) { 66 AnnotationValue value = new AnnotationValue(desc); 67 elements.put(name, value); 68 return value; 69 } 70 71 public AnnotationVisitor visitArray(String name) { 72 AnnotationArray array = new AnnotationArray(); 73 elements.put(name, array); 74 return array; 75 } 76 77 public void visitEnd() { 78 } 79 80 } 81 | Popular Tags |