< prev index next >

src/java.base/share/classes/jdk/internal/org/objectweb/asm/util/TraceAnnotationVisitor.java

Print this page
rev 47452 : imported patch jdk-new-asmv6.patch


  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);
< prev index next >