checkers.util.debug
Class TreeDebug
java.lang.Object
javax.annotation.processing.AbstractProcessor
checkers.util.debug.TreeDebug
- All Implemented Interfaces:
- Processor
@SupportedAnnotationTypes(value="*")
public class TreeDebug
extends AbstractProcessor
A utility class for displaying the structure of the AST of a program.
The class is actually an annotation processor; in order to use it, invoke the
compiler on the source file(s) for which you wish to view the structure of
the program. You may also wish to use the -proc:only
javac option to
stop compilation after annotation processing. (But, in general
-proc:only
causes type annotation processors not te be run.)
The utility will display the Tree.Kind
of each
node it encounters while scanning the AST, indented according to its depth in
the tree. Additionally, the names of identifiers and member selection trees
are displayed (since these names are not tree nodes and therefore not
directly visited during AST traversal).
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TreeDebug
public TreeDebug()
createSourceVisitor
protected TreeDebug.Visitor createSourceVisitor(CompilationUnitTree root)
process
public boolean process(Set<? extends TypeElement> annotations,
RoundEnvironment roundEnv)
- Specified by:
process
in interface Processor
- Specified by:
process
in class AbstractProcessor