Class TreePath

java.lang.Object
com.sun.source.util.TreePath
All Implemented Interfaces:
Iterable<Tree>

public class TreePath extends Object implements Iterable<Tree>
A path of tree nodes, typically used to represent the sequence of ancestor nodes of a tree node up to the top-level CompilationUnitTree node.
Since:
1.6
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a TreePath for a root node.
    TreePath(TreePath path, Tree tree)
    Creates a TreePath for a child node.
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns the compilation unit associated with this path.
    Returns the leaf node for this path.
    Returns the path for the enclosing node, or null if there is no enclosing node.
    static TreePath
    Returns a tree path for a tree node within a compilation unit, or null if the node is not found.
    static TreePath
    getPath(TreePath path, Tree target)
    Returns a tree path for a tree node within a subtree identified by a TreePath object.
    Iterates from leaves to root.

    Methods declared in class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected Object
    Creates and returns a copy of this object.
    boolean
    Indicates whether some other object is "equal to" this one.
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Finalization is deprecated and subject to removal in a future release.
    final Class<?>
    Returns the runtime class of this Object.
    int
    Returns a hash code value for this object.
    final void
    Wakes up a single thread that is waiting on this object's monitor.
    final void
    Wakes up all threads that are waiting on this object's monitor.
    Returns a string representation of the object.
    final void
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
    final void
    wait(long timeoutMillis)
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
    final void
    wait(long timeoutMillis, int nanos)
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

    Methods declared in interface Iterable

    forEach, spliterator
    Modifier and Type
    Method
    Description
    default void
    forEach(Consumer<? super Tree> action)
    Performs the given action for each element of the Iterable until all elements have been processed or the action throws an exception.
    default Spliterator<Tree>
    Creates a Spliterator over the elements described by this Iterable.
  • Constructor Details

    • TreePath

      public TreePath(CompilationUnitTree node)
      Creates a TreePath for a root node.
      Parameters:
      node - the root node
    • TreePath

      public TreePath(TreePath path, Tree tree)
      Creates a TreePath for a child node.
      Parameters:
      path - the parent path
      tree - the child node
  • Method Details

    • getPath

      public static TreePath getPath(CompilationUnitTree unit, Tree target)
      Returns a tree path for a tree node within a compilation unit, or null if the node is not found.
      Parameters:
      unit - the compilation unit to search
      target - the node to locate
      Returns:
      the tree path
    • getPath

      public static TreePath getPath(TreePath path, Tree target)
      Returns a tree path for a tree node within a subtree identified by a TreePath object. Returns null if the node is not found.
      Parameters:
      path - the path in which to search
      target - the node to locate
      Returns:
      the tree path of the target node
    • getCompilationUnit

      public CompilationUnitTree getCompilationUnit()
      Returns the compilation unit associated with this path.
      Returns:
      the compilation unit
    • getLeaf

      public Tree getLeaf()
      Returns the leaf node for this path.
      Returns:
      the leaf node
    • getParentPath

      public TreePath getParentPath()
      Returns the path for the enclosing node, or null if there is no enclosing node.
      Returns:
      the path for the enclosing node
    • iterator

      public Iterator<Tree> iterator()
      Iterates from leaves to root.
      Specified by:
      iterator in interface Iterable<Tree>
      Returns:
      an Iterator.