DocTreePath

DocTreePath (문서 주석 트리 경로)

트리 노드들의 경로를 나타내는 클래스로, 한 DocTree 노드에서 최상위 DocCommentTree 노드까지 이르는 조상 노드들의 연속을 표현합니다. 문서 주석 트리 안에서 특정 노드의 위치를 다룰 때 유용해요.

출처: Java API Reference

본문

DocTreePathIterable<DocTree>를 구현하므로, 경로에 포함된 노드들을 순서대로 순회할 수 있어요. 일반 소스 코드 트리용 TreePath가 있다면, 문서 주석 트리에도 그와 대응되는 경로 개념이 필요한데 이 클래스가 바로 그 역할을 합니다. 경로는 어떤 노드가 어떤 노드 안에 중첩되어 있는지 조상-자손 관계를 보여줍니다.

생성자

  • DocTreePath(TreePath treePath, DocCommentTree t) — 루트 노드를 위한 경로를 만듭니다. TreePath(해당 노드의 일반 트리 경로)와 DocCommentTree(문서 주석 트리)를 받아요.

  • DocTreePath(DocTreePath p, DocTree t) — 자식 노드를 위한 경로를 만듭니다. 부모 경로 p와 자식 노드 t를 받아 새로운 경로를 구성합니다.

주요 메서드

  • getPath(TreePath treePath, DocCommentTree doc, DocTree target) — 컴파일 단위 안에서 타깃 노드의 문서 트리 경로를 찾아 반환해요. 노드를 찾지 못하면 null을 돌려줍니다.

  • getPath(DocTreePath path, DocTree target)DocTreePath로 식별되는 하위 트리 안에서 타깃 노드의 경로를 찾아요. 찾지 못하면 null입니다.

  • getTreePath() — 이 경로와 연결된 TreePath를 반환합니다.

  • getDocComment() — 이 경로와 연결된 DocCommentTree를 반환해요.

  • getLeaf() — 이 경로의 잎 노드(리프)를 반환합니다. 경로의 끝에 있는 대상 노드라고 보면 돼요.

  • getParentPath() — 이 노드를 감싸는 부모 노드의 경로를 반환하고, 부모가 없으면 null을 돌려줍니다.

  • iterator()Iterable<DocTree> 구현에 따라 요소들을 순회하는 Iterator를 반환해요.

더 알아보기

Java 공식 API