| java.lang.Object com.tc.asm.util.AbstractVisitor com.tc.asm.util.TraceAbstractVisitor com.tc.asm.util.TraceClassVisitor
TraceClassVisitor | public class TraceClassVisitor extends TraceAbstractVisitor implements ClassVisitor(Code) | | A
ClassVisitor that prints a disassembled view of the classes it
visits. This class visitor can be used alone (see the
TraceClassVisitor.main main method) to disassemble a class. It can also be used in the middle of class
visitor chain to trace the class that is visited at a given point in this
chain. This may be uselful for debugging purposes. The trace printed when
visiting the Hello class is the following:
// 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
}
where Hello is defined by:
public class Hello {
public static void main(String[] args) {
System.out.println("hello");
}
}
author: Eric Bruneton author: Eugene Kuleshov |
Method Summary | |
protected TraceFieldVisitor | createTraceFieldVisitor() | protected TraceMethodVisitor | createTraceMethodVisitor() | public static void | main(String[] args) Prints a disassembled view of the given class to the standard output. | public void | visit(int version, int access, String name, String signature, String superName, String[] interfaces) | public AnnotationVisitor | visitAnnotation(String desc, boolean visible) | public void | visitAttribute(Attribute attr) | public void | visitEnd() | public FieldVisitor | visitField(int access, String name, String desc, String signature, Object value) | public void | visitInnerClass(String name, String outerName, String innerName, int access) | public MethodVisitor | visitMethod(int access, String name, String desc, String signature, String[] exceptions) | public void | visitOuterClass(String owner, String name, String desc) | public void | visitSource(String file, String debug) |
pw | final protected PrintWriter pw(Code) | | The print writer to be used to print the class.
|
main | public static void main(String[] args) throws Exception(Code) | | Prints a disassembled view of the given class to the standard output.
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 exceptionoccurs. |
visitEnd | public void visitEnd()(Code) | | |
|
|