59 package jdk.internal.org.objectweb.asm.util;
60
61 import jdk.internal.org.objectweb.asm.AnnotationVisitor;
62 import jdk.internal.org.objectweb.asm.Opcodes;
63
64 /**
65 * An {@link AnnotationVisitor} that prints the annotations it visits with a
66 * {@link Printer}.
67 *
68 * @author Eric Bruneton
69 */
70 public final class TraceAnnotationVisitor extends AnnotationVisitor {
71
72 private final Printer p;
73
74 public TraceAnnotationVisitor(final Printer p) {
75 this(null, p);
76 }
77
78 public TraceAnnotationVisitor(final AnnotationVisitor av, final Printer p) {
79 super(Opcodes.ASM5, av);
80 this.p = p;
81 }
82
83 @Override
84 public void visit(final String name, final Object value) {
85 p.visit(name, value);
86 super.visit(name, value);
87 }
88
89 @Override
90 public void visitEnum(final String name, final String desc,
91 final String value) {
92 p.visitEnum(name, desc, value);
93 super.visitEnum(name, desc, value);
94 }
95
96 @Override
97 public AnnotationVisitor visitAnnotation(final String name,
98 final String desc) {
99 Printer p = this.p.visitAnnotation(name, desc);
|
59 package jdk.internal.org.objectweb.asm.util;
60
61 import jdk.internal.org.objectweb.asm.AnnotationVisitor;
62 import jdk.internal.org.objectweb.asm.Opcodes;
63
64 /**
65 * An {@link AnnotationVisitor} that prints the annotations it visits with a
66 * {@link Printer}.
67 *
68 * @author Eric Bruneton
69 */
70 public final class TraceAnnotationVisitor extends AnnotationVisitor {
71
72 private final Printer p;
73
74 public TraceAnnotationVisitor(final Printer p) {
75 this(null, p);
76 }
77
78 public TraceAnnotationVisitor(final AnnotationVisitor av, final Printer p) {
79 super(Opcodes.ASM6, av);
80 this.p = p;
81 }
82
83 @Override
84 public void visit(final String name, final Object value) {
85 p.visit(name, value);
86 super.visit(name, value);
87 }
88
89 @Override
90 public void visitEnum(final String name, final String desc,
91 final String value) {
92 p.visitEnum(name, desc, value);
93 super.visitEnum(name, desc, value);
94 }
95
96 @Override
97 public AnnotationVisitor visitAnnotation(final String name,
98 final String desc) {
99 Printer p = this.p.visitAnnotation(name, desc);
|