R - the return type of this visitor's methods. Use Void for visitors that do not need to return results.P - the type of the additional parameter to this visitor's methods. Use Void for visitors that do not need an additional parameter.DocTreeVisitor<R,P> DocTreePathScannerpublic class DocTreeScanner<R,P> extends Object implements DocTreeVisitor<R,P>
Here is an example to count the number of erroneous nodes in a tree:
   class CountErrors extends DocTreeScanner<Integer,Void> {
      @Override
      public Integer visitErroneous(ErroneousTree node, Void p) {
          return 1;
      }
      @Override
      public Integer reduce(Integer r1, Integer r2) {
          return (r1 == null ? 0 : r1) + (r2 == null ? 0 : r2);
      }
   }
 
The default implementation of the visitXYZ methods will determine a result as follows:
null. scan with that child. The child may be a simple node or itself a list of nodes. scan with each child in turn, and then combining the result of each scan after the first with the cumulative result so far, as determined by the reduce(R, R) method. Each child may be either a simple node or a list of nodes. The default behavior of the reduce method is such that the result of the visitXYZ method will be the result of the last child scanned. | Constructor | Description | 
|---|---|
| DocTreeScanner() | Constructs a  DocTreeScanner. | 
| Modifier and Type | Method | Description | 
|---|---|---|
| R | reduce | Reduces two results into a combined result. | 
| R | scan | Scans a single node. | 
| R | scan | Scans a sequence of nodes. | 
| R | visitAttribute | Visits an  AttributeTreenode. | 
| R | visitAuthor | Visits an  AuthorTreenode. | 
| R | visitComment | Visits a  CommentTreenode. | 
| R | visitDeprecated | Visits a  DeprecatedTreenode. | 
| R | visitDocComment | Visits a  DocCommentTreenode. | 
| R | visitDocRoot | Visits a  DocRootTreenode. | 
| R | visitDocType | Visits a  DocTypeTreenode. | 
| R | visitEndElement | Visits an  EndElementTreenode. | 
| R | visitEntity | Visits an  EntityTreenode. | 
| R | visitErroneous | Visits an  ErroneousTreenode. | 
| R | visitEscape | Visits an  EscapeTreenode. | 
| R | visitHidden | Visits a  HiddenTreenode. | 
| R | visitIdentifier | Visits an  IdentifierTreenode. | 
| R | visitIndex | Visits an  IndexTreenode. | 
| R | visitInheritDoc | Visits an  InheritDocTreenode. | 
| R | visitLink | Visits a  LinkTreenode. | 
| R | visitLiteral | Visits an  LiteralTreenode. | 
| R | visitOther | Visits an unknown type of  DocTreenode. | 
| R | visitParam | Visits a  ParamTreenode. | 
| R | visitProvides | Visits a  ProvidesTreenode. | 
| R | visitReference | Visits a  ReferenceTreenode. | 
| R | visitReturn | Visits a  ReturnTreenode. | 
| R | visitSee | Visits a  SeeTreenode. | 
| R | visitSerial | Visits a  SerialTreenode. | 
| R | visitSerialData | Visits a  SerialDataTreenode. | 
| R | visitSerialField | Visits a  SerialFieldTreenode. | 
| R | visitSince | Visits a  SinceTreenode. | 
| R | visitSnippet | Visits a  SnippetTreenode. | 
| R | visitSpec | Visits a  SpecTreenode. | 
| R | visitStartElement | Visits a  StartElementTreenode. | 
| R | visitSummary | Visits a  SummaryTreenode. | 
| R | visitSystemProperty | Visits a  SystemPropertyTreenode. | 
| R | visitText | Visits a  TextTreenode. | 
| R | visitThrows | Visits a  ThrowsTreenode. | 
| R | visitUnknownBlockTag | Visits an  UnknownBlockTagTreenode. | 
| R | visitUnknownInlineTag | Visits an  UnknownInlineTagTreenode. | 
| R | visitUses | Visits a  UsesTreenode. | 
| R | visitValue | Visits a  ValueTreenode. | 
| R | visitVersion | Visits a  VersionTreenode. | 
public DocTreeScanner()
DocTreeScanner.public R scan(DocTree node, P p)
node - the node to be scannedp - a parameter value passed to the visit methodpublic R scan(Iterable<? extends DocTree> nodes, P p)
nodes - the nodes to be scannedp - a parameter value to be passed to the visit method for each nodereduce method.public R reduce(R r1, R r2)
r1 - the first of the values to be combinedr2 - the second of the values to be combinedpublic R visitAttribute(AttributeTree node, P p)
AttributeTree node.visitAttribute in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitAuthor(AuthorTree node, P p)
AuthorTree node.visitAuthor in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitComment(CommentTree node, P p)
CommentTree node.visitComment in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter valuepublic R visitDeprecated(DeprecatedTree node, P p)
DeprecatedTree node.visitDeprecated in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitDocComment(DocCommentTree node, P p)
DocCommentTree node.visitDocComment in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitDocRoot(DocRootTree node, P p)
DocRootTree node.visitDocRoot in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter valuepublic R visitDocType(DocTypeTree node, P p)
DocTypeTree node.visitDocType in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter valuepublic R visitEndElement(EndElementTree node, P p)
EndElementTree node.visitEndElement in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter valuepublic R visitEntity(EntityTree node, P p)
EntityTree node.visitEntity in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter valuepublic R visitErroneous(ErroneousTree node, P p)
ErroneousTree node.visitErroneous in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter valuepublic R visitEscape(EscapeTree node, P p)
EscapeTree node.visitEscape in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter valuepublic R visitHidden(HiddenTree node, P p)
HiddenTree node.visitHidden in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitIdentifier(IdentifierTree node, P p)
IdentifierTree node.visitIdentifier in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter valuepublic R visitIndex(IndexTree node, P p)
IndexTree node.visitIndex in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitInheritDoc(InheritDocTree node, P p)
InheritDocTree node.visitInheritDoc in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter valuepublic R visitLink(LinkTree node, P p)
LinkTree node.visitLink in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitLiteral(LiteralTree node, P p)
LiteralTree node.visitLiteral in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitParam(ParamTree node, P p)
ParamTree node.visitParam in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitProvides(ProvidesTree node, P p)
ProvidesTree node.visitProvides in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitReference(ReferenceTree node, P p)
ReferenceTree node.visitReference in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter valuepublic R visitReturn(ReturnTree node, P p)
ReturnTree node.visitReturn in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitSee(SeeTree node, P p)
SeeTree node.visitSee in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitSerial(SerialTree node, P p)
SerialTree node.visitSerial in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitSerialData(SerialDataTree node, P p)
SerialDataTree node.visitSerialData in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitSerialField(SerialFieldTree node, P p)
SerialFieldTree node.visitSerialField in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitSince(SinceTree node, P p)
SinceTree node.visitSince in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitSnippet(SnippetTree node, P p)
SnippetTree node.visitSnippet in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitSpec(SpecTree node, P p)
SpecTree node.visitSpec in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitStartElement(StartElementTree node, P p)
StartElementTree node.visitStartElement in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitSummary(SummaryTree node, P p)
SummaryTree node.visitSummary in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitSystemProperty(SystemPropertyTree node, P p)
SystemPropertyTree node.visitSystemProperty in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter valuepublic R visitText(TextTree node, P p)
TextTree node.visitText in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter valuepublic R visitThrows(ThrowsTree node, P p)
ThrowsTree node.visitThrows in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitUnknownBlockTag(UnknownBlockTagTree node, P p)
UnknownBlockTagTree node.visitUnknownBlockTag in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitUnknownInlineTag(UnknownInlineTagTree node, P p)
UnknownInlineTagTree node.visitUnknownInlineTag in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitUses(UsesTree node, P p)
UsesTree node.visitUses in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitValue(ValueTree node, P p)
ValueTree node.visitValue in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitVersion(VersionTree node, P p)
VersionTree node.visitVersion in interface DocTreeVisitor<R,P> 
node - the node being visitedp - a parameter valuepublic R visitOther(DocTree node, P p)
DocTree node. This can occur if the set of tags evolves and new kinds of nodes are added to the DocTree hierarchy.visitOther in interface DocTreeVisitor<R,P> 
null.node - the node being visitedp - a parameter value
    © 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
    https://docs.oracle.com/en/java/javase/21/docs/api/jdk.compiler/com/sun/source/util/DocTreeScanner.html