- java.lang.Object
-
- com.sun.source.util.DocTreeScanner<R,P>
-
- All Implemented Interfaces:
-
DocTreeVisitor<R,P>
- 已知直接子类:
-
DocTreePathScanner
public class DocTreeScanner<R,P> extends Object implements DocTreeVisitor<R,P>
访问所有子树节点的TreeVisitor。 要访问特定类型的节点,只需覆盖相应的visitXYZ方法即可。 在你的方法中,调用super.visitXYZ来访问后代节点。visitXYZ方法的默认实现将确定如下的结果:
- 如果被访问的节点没有子节点,结果将为
null
。 - 如果被访问的节点有一个孩子,结果将是该小孩的
scan
调用的结果。 孩子可能是一个简单的节点或本身的节点列表。 - 如果所访问的节点有多个子节点,则通过依次调用每个子
scan
来确定结果,然后将第一次扫描的结果与迄今为止的累积结果相结合,由reduce(R, R)
方法确定。 每个孩子可以是节点列表的简单节点。reduce
方法的默认行为是访问reduce
方法的结果将是最后一个子扫描的结果。
以下是一个示例来计算树中错误节点的数量:
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); } }
- 从以下版本开始:
- 1.8
-
-
构造方法摘要
构造方法 Constructor 描述 DocTreeScanner()
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 R
reduce(R r1, R r2)
将两个结果减少为一个组合的结果。R
scan(DocTree node, P p)
扫描单个节点。R
scan(Iterable<? extends DocTree> nodes, P p)
扫描一系列节点。R
visitAttribute(AttributeTree node, P p)
访问AttributeTree节点。R
visitAuthor(AuthorTree node, P p)
访问AuthorTree节点。R
visitComment(CommentTree node, P p)
访问CommentTree节点。R
visitDeprecated(DeprecatedTree node, P p)
访问DeprecatedTree节点。R
visitDocComment(DocCommentTree node, P p)
访问DocCommentTree节点。R
visitDocRoot(DocRootTree node, P p)
访问DocRootTree节点。R
visitEndElement(EndElementTree node, P p)
访问EndElementTree节点。R
visitEntity(EntityTree node, P p)
访问EntityTree节点。R
visitErroneous(ErroneousTree node, P p)
访问ErroneousTree节点。R
visitHidden(HiddenTree node, P p)
访问HiddenTree节点。R
visitIdentifier(IdentifierTree node, P p)
访问IdentifierTree节点。R
visitIndex(IndexTree node, P p)
访问IndexTree节点。R
visitInheritDoc(InheritDocTree node, P p)
访问InheritDocTree节点。R
visitLink(LinkTree node, P p)
访问LinkTree节点。R
visitLiteral(LiteralTree node, P p)
访问LiteralTree节点。R
visitOther(DocTree node, P p)
访问未知类型的DocTree节点。R
visitParam(ParamTree node, P p)
访问ParamTree节点。R
visitProvides(ProvidesTree node, P p)
访问ProvideTree节点。R
visitReference(ReferenceTree node, P p)
访问一个ReferenceTree节点。R
visitReturn(ReturnTree node, P p)
访问ReturnTree节点。R
visitSee(SeeTree node, P p)
访问SeeTree节点。R
visitSerial(SerialTree node, P p)
访问SerialTree节点。R
visitSerialData(SerialDataTree node, P p)
访问一个SerialDataTree节点。R
visitSerialField(SerialFieldTree node, P p)
访问SerialFieldTree节点。R
visitSince(SinceTree node, P p)
访问SinceTree节点。R
visitStartElement(StartElementTree node, P p)
访问StartElementTree节点。R
visitText(TextTree node, P p)
访问TextTree节点。R
visitThrows(ThrowsTree node, P p)
访问ThrowsTree节点。R
visitUnknownBlockTag(UnknownBlockTagTree node, P p)
访问UnknownBlockTagTree节点。R
visitUnknownInlineTag(UnknownInlineTagTree node, P p)
访问UnknownInlineTagTree节点。R
visitUses(UsesTree node, P p)
访问UsesTree节点。R
visitValue(ValueTree node, P p)
访问ValueTree节点。R
visitVersion(VersionTree node, P p)
访问VersionTreeTree节点。
-
-
-
方法详细信息
-
scan
public R scan(Iterable<? extends DocTree> nodes, P p)
扫描一系列节点。- 参数
-
nodes
- 要扫描的节点 -
p
- 要传递给每个节点的访问方法的参数值 - 结果
-
访问方法的组合返回值。
这些值使用
reduce
方法组合。
-
reduce
public R reduce(R r1, R r2)
将两个结果减少为一个组合的结果。 默认的实现是返回第一个参数。 该方法的一般合同是它可以采取任何行动。- 参数
-
r1
- 要组合的第一个值 -
r2
- 要组合的第二个值 - 结果
- 结合两个参数的结果
-
visitAttribute
public R visitAttribute(AttributeTree node, P p)
访问AttributeTree节点。 此实现返回null
。- Specified by:
-
visitAttribute
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitAuthor
public R visitAuthor(AuthorTree node, P p)
访问AuthorTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitAuthor
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitComment
public R visitComment(CommentTree node, P p)
访问CommentTree节点。 此实现返回null
。- Specified by:
-
visitComment
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitDeprecated
public R visitDeprecated(DeprecatedTree node, P p)
访问DeprecatedTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitDeprecated
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 一个参数值 - 结果
- 扫描的结果
-
visitDocComment
public R visitDocComment(DocCommentTree node, P p)
访问DocCommentTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitDocComment
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitDocRoot
public R visitDocRoot(DocRootTree node, P p)
访问DocRootTree节点。 此实现返回null
。- Specified by:
-
visitDocRoot
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitEndElement
public R visitEndElement(EndElementTree node, P p)
访问EndElementTree节点。 此实现返回null
。- Specified by:
-
visitEndElement
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitEntity
public R visitEntity(EntityTree node, P p)
访问EntityTree节点。 此实现返回null
。- Specified by:
-
visitEntity
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitErroneous
public R visitErroneous(ErroneousTree node, P p)
访问ErroneousTree节点。 此实现返回null
。- Specified by:
-
visitErroneous
接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitHidden
public R visitHidden(HiddenTree node, P p)
访问HiddenTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitHidden
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitIdentifier
public R visitIdentifier(IdentifierTree node, P p)
访问IdentifierTree节点。 此实现返回null
。- Specified by:
-
visitIdentifier
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitIndex
public R visitIndex(IndexTree node, P p)
访问IndexTree节点。 此实现返回null
。- Specified by:
-
visitIndex
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 一个参数值 - 结果
- 扫描的结果
-
visitInheritDoc
public R visitInheritDoc(InheritDocTree node, P p)
访问InheritDocTree节点。 此实现返回null
。- Specified by:
-
visitInheritDoc
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitLink
public R visitLink(LinkTree node, P p)
访问LinkTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitLink
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitLiteral
public R visitLiteral(LiteralTree node, P p)
访问LiteralTree节点。 此实现返回null
。- Specified by:
-
visitLiteral
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitParam
public R visitParam(ParamTree node, P p)
访问ParamTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitParam
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitProvides
public R visitProvides(ProvidesTree node, P p)
访问ProvideTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitProvides
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitReference
public R visitReference(ReferenceTree node, P p)
访问一个ReferenceTree节点。 此实现返回null
。- Specified by:
-
visitReference
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitReturn
public R visitReturn(ReturnTree node, P p)
访问ReturnTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitReturn
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 一个参数值 - 结果
- 扫描的结果
-
visitSee
public R visitSee(SeeTree node, P p)
访问SeeTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitSee
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitSerial
public R visitSerial(SerialTree node, P p)
访问SerialTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitSerial
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
: - 结果
- 扫描的结果
-
visitSerialData
public R visitSerialData(SerialDataTree node, P p)
访问一个SerialDataTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitSerialData
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 一个参数值 - 结果
- 扫描的结果
-
visitSerialField
public R visitSerialField(SerialFieldTree node, P p)
访问SerialFieldTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitSerialField
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitSince
public R visitSince(SinceTree node, P p)
访问SinceTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitSince
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitStartElement
public R visitStartElement(StartElementTree node, P p)
访问StartElementTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitStartElement
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitText
public R visitText(TextTree node, P p)
访问TextTree节点。 此实现返回null
。- Specified by:
-
visitText
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitThrows
public R visitThrows(ThrowsTree node, P p)
访问ThrowsTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitThrows
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitUnknownBlockTag
public R visitUnknownBlockTag(UnknownBlockTagTree node, P p)
访问UnknownBlockTagTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitUnknownBlockTag
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitUnknownInlineTag
public R visitUnknownInlineTag(UnknownInlineTagTree node, P p)
访问UnknownInlineTagTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitUnknownInlineTag
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitUses
public R visitUses(UsesTree node, P p)
访问UsesTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitUses
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitValue
public R visitValue(ValueTree node, P p)
访问ValueTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitValue
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitVersion
public R visitVersion(VersionTree node, P p)
访问VersionTreeTree节点。 这个实现以从左到右的顺序扫描孩子。- Specified by:
-
visitVersion
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- 扫描的结果
-
visitOther
public R visitOther(DocTree node, P p)
访问未知类型的DocTree节点。 如果标签集发生变化并将新类型的节点添加到DocTree
层次结构中,则可能会发生这种情况。 此实现返回null
。- Specified by:
-
visitOther
在接口DocTreeVisitor<R,P>
- 参数
-
node
- 被访问的节点 -
p
- 参数值 - 结果
- the result of scanning
-
-