java.lang.Object
com.sun.source.util.TreeScanner<R,P>
com.sun.source.util.TreePathScanner<R,P>
- All Implemented Interfaces:
TreeVisitor<R,P>
public class TreePathScanner<R,P> extends TreeScanner<R,P>
A TreeVisitor that visits all the child tree nodes, and provides
support for maintaining a path for the parent nodes.
To visit nodes of a particular type, just override the
corresponding visitorXYZ method.
Inside your method, call super.visitXYZ to visit descendant
nodes.
- API Note:
- In order to initialize the "current path", the scan must be
started by calling one of the
scan
methods. - Since:
- 1.6
-
Constructor Summary
Constructors Constructor Description TreePathScanner()
-
Method Summary
Methods declared in class com.sun.source.util.TreeScanner
reduce, scan, visitAnnotatedType, visitAnnotation, visitArrayAccess, visitArrayType, visitAssert, visitAssignment, visitBinary, visitBindingPattern, visitBlock, visitBreak, visitCase, visitCatch, visitClass, visitCompilationUnit, visitCompoundAssignment, visitConditionalExpression, visitContinue, visitDoWhileLoop, visitEmptyStatement, visitEnhancedForLoop, visitErroneous, visitExpressionStatement, visitForLoop, visitIdentifier, visitIf, visitImport, visitInstanceOf, visitIntersectionType, visitLabeledStatement, visitLambdaExpression, visitLiteral, visitMemberReference, visitMemberSelect, visitMethod, visitMethodInvocation, visitModifiers, visitNewArray, visitNewClass, visitOther, visitPackage, visitParameterizedType, visitParenthesized, visitPrimitiveType, visitReturn, visitSwitch, visitSwitchExpression, visitSynchronized, visitThrow, visitTry, visitTypeCast, visitTypeParameter, visitUnary, visitUnionType, visitVariable, visitWhileLoop, visitWildcard, visitYield
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods declared in interface com.sun.source.tree.TreeVisitor
visitExports, visitModule, visitOpens, visitProvides, visitRequires, visitUses
-
Constructor Details
-
TreePathScanner
public TreePathScanner()
-
-
Method Details
-
scan
Scans a tree from a position identified by a TreePath.- Parameters:
path
- the path identifying the node to be scannedp
- a parameter value passed to visit methods- Returns:
- the result value from the visit method
-
scan
Scans a single node. The current path is updated for the duration of the scan.- Overrides:
scan
in classTreeScanner<R,P>
- API Note:
- This method should normally only be called by the
scanner's
visit
methods, as part of an ongoing scan initiated byscan(TreePath, P)
. The one exception is that it may also be called to initiate a full scan of aCompilationUnitTree
. - Parameters:
tree
- the node to be scannedp
- a parameter value passed to the visit method- Returns:
- the result value from the visit method
-
getCurrentPath
Returns the current path for the node, as built up by the currently active set of scan calls.- Returns:
- the current path
-