Module jdk.compiler
Package com.sun.source.util

## Class DocTreePath

- java.lang.Object
- - com.sun.source.util.DocTreePath

All Implemented Interfaces:
  Iterable<DocTree>

    public class DocTreePath
    extends Object
    implements Iterable<DocTree>

A path of tree nodes, typically used to represent the sequence of ancestor nodes of a tree node up to the top level DocCommentTree node.

Since:
  1.8

### Constructor Summary

Constructors
Constructor and Description
`DocTreePath(DocTreePath p, DocTree t)` Creates a DocTreePath for a child node.
`DocTreePath(TreePath treePath, DocCommentTree t)` Creates a DocTreePath for a root node.

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`DocCommentTree` `getDocComment()` Returns the DocCommentTree associated with this path.
`DocTree` `getLeaf()` Returns the leaf node for this path.
`DocTreePath` `getParentPath()` Returns the path for the enclosing node, or `null` if there is no enclosing node.
`static DocTreePath` `getPath(DocTreePath path, DocTree target)` Returns a documentation tree path for a tree node within a subtree identified by a DocTreePath object, or `null` if the node is not found.
`static DocTreePath` `getPath(TreePath treePath, DocCommentTree doc, DocTree target)` Returns a documentation tree path for a tree node within a compilation unit, or `null` if the node is not found.
`TreePath` `getTreePath()` Returns the TreePath associated with this path.
`Iterator<DocTree>` `iterator()` Returns an iterator over elements of type `T`.

### Methods inherited from interface java.lang.Iterable

`forEach, spliterator`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### DocTreePath

    public DocTreePath(DocTreePath p,
                       DocTree t)

Creates a DocTreePath for a child node.

Parameters:
  `p` - the parent node
  `t` - the child node

#### DocTreePath

    public DocTreePath(TreePath treePath,
                       DocCommentTree t)

Creates a DocTreePath for a root node.

Parameters:
  `treePath` - the TreePath from which the root node was created.
  `t` - the DocCommentTree to create the path for.

### Method Detail

#### getPath

    public static DocTreePath getPath(TreePath treePath,
                                      DocCommentTree doc,
                                      DocTree target)

Returns a documentation tree path for a tree node within a compilation unit, or `null` if the node is not found.

Parameters:
  `treePath` - the path for the node with which the doc comment is associated
  `doc` - the doc comment associated with the node
  `target` - a node within the doc comment
Returns:
  a path identifying the target within the tree

#### getPath

    public static DocTreePath getPath(DocTreePath path,
                                      DocTree target)

Returns a documentation tree path for a tree node within a subtree identified by a DocTreePath object, or `null` if the node is not found.

Parameters:
  `path` - a path identifying a node within a doc comment tree
  `target` - a node to be located within the given node
Returns:
  a path identifying the target node

#### getTreePath

    public TreePath getTreePath()

Returns the TreePath associated with this path.

Returns:
  the TreePath for this DocTreePath

#### getDocComment

    public DocCommentTree getDocComment()

Returns the DocCommentTree associated with this path.

Returns:
  the DocCommentTree for this DocTreePath

#### getLeaf

    public DocTree getLeaf()

Returns the leaf node for this path.

Returns:
  the DocTree for this DocTreePath

#### getParentPath

    public DocTreePath getParentPath()

Returns the path for the enclosing node, or `null` if there is no enclosing node.

Returns:
  DocTreePath of parent

#### iterator

    public Iterator<DocTree> iterator()

Description copied from interface: `java.lang.Iterable`
Returns an iterator over elements of type `T`.

Specified by:
  `iterator` in interface `Iterable<DocTree>`
Returns:
  an Iterator.