org.objectweb.asm.util
public class TraceClassVisitor extends TraceAbstractVisitor implements ClassVisitor
The trace printed when visiting the Hello class is the following:
where Hello is defined by:// class version 49.0 (49) // access flags 33 public class Hello { // compiled from: Hello.java // access flags 1 public <init> ()V ALOAD 0 INVOKESPECIAL java/lang/Object <init> ()V RETURN MAXSTACK = 1 MAXLOCALS = 1 // access flags 9 public static main ([Ljava/lang/String;)V GETSTATIC java/lang/System out Ljava/io/PrintStream; LDC "hello" INVOKEVIRTUAL java/io/PrintStream println (Ljava/lang/String;)V RETURN MAXSTACK = 2 MAXLOCALS = 1 }
public class Hello { public static void main(String[] args) { System.out.println("hello"); } }
Field Summary | |
---|---|
protected ClassVisitor | cv
The {@link ClassVisitor} to which this visitor delegates calls. |
protected PrintWriter | pw
The print writer to be used to print the class. |
Constructor Summary | |
---|---|
TraceClassVisitor(PrintWriter pw)
Constructs a new {@link TraceClassVisitor}.
| |
TraceClassVisitor(ClassVisitor cv, PrintWriter pw)
Constructs a new {@link TraceClassVisitor}.
|
Method Summary | |
---|---|
protected TraceFieldVisitor | createTraceFieldVisitor() |
protected TraceMethodVisitor | createTraceMethodVisitor() |
static void | main(String[] args)
Prints a disassembled view of the given class to the standard output. |
void | visit(int version, int access, String name, String signature, String superName, String[] interfaces) |
AnnotationVisitor | visitAnnotation(String desc, boolean visible) |
void | visitAttribute(Attribute attr) |
void | visitEnd() |
FieldVisitor | visitField(int access, String name, String desc, String signature, Object value) |
void | visitInnerClass(String name, String outerName, String innerName, int access) |
MethodVisitor | visitMethod(int access, String name, String desc, String signature, String[] exceptions) |
void | visitOuterClass(String owner, String name, String desc) |
void | visitSource(String file, String debug) |
Parameters: pw the print writer to be used to print the class.
Parameters: cv the {@link ClassVisitor} to which this visitor delegates calls. May be null. pw the print writer to be used to print the class.
Usage: TraceClassVisitor [-debug] <fully qualified class name or class file name >
Parameters: args the command line arguments.
Throws: Exception if the class cannot be found, or if an IO exception occurs.