Class TreeDebug
java.lang.Object
javax.annotation.processing.AbstractProcessor
org.checkerframework.common.util.debug.TreeDebug
- All Implemented Interfaces:
Processor
@SupportedAnnotationTypes("*")
@SupportedSourceVersion(RELEASE_8)
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 to 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).
- See Also:
-
Nested Class Summary
-
Field Summary
Fields inherited from class javax.annotation.processing.AbstractProcessor
processingEnv
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected TreeDebug.Visitor
boolean
process
(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) Methods inherited from class javax.annotation.processing.AbstractProcessor
getCompletions, getSupportedAnnotationTypes, getSupportedOptions, getSupportedSourceVersion, init, isInitialized
-
Constructor Details
-
TreeDebug
public TreeDebug()
-
-
Method Details
-
createSourceVisitor
-
process
- Specified by:
process
in interfaceProcessor
- Specified by:
process
in classAbstractProcessor
-