public interface DocTreeFactory
创建
DocTree节点的工厂。
- 实现说明:
-
此接口的实现方法只能接受由相同实现创建的
DocTree节点。 - 自JDK版本:
- 9
-
Method Summary
Modifier and TypeMethodDescriptionat(int pos) 设置要记录在此工厂创建的后续树节点中的位置。getFirstSentence(List<? extends DocTree> list) 获取包含在内容列表中的第一个句子。newAttributeTree(Name name, AttributeTree.ValueKind vkind, List<? extends DocTree> value) 创建一个新的AttributeTree对象,表示HTML元素或标签中的属性。newAuthorTree(List<? extends DocTree> name) 创建一个新的AuthorTree对象,表示@author标签。newCodeTree(TextTree text) 创建一个新的LiteralTree对象,表示{@code }标签。newCommentTree(String text) 创建一个新的CommentTree对象,表示HTML注释。newDeprecatedTree(List<? extends DocTree> text) 创建一个新的DeprecatedTree对象,表示@deprecated标签。newDocCommentTree(List<? extends DocTree> fullBody, List<? extends DocTree> tags) 创建一个新的DocCommentTree对象,表示完整的文档注释。newDocCommentTree(List<? extends DocTree> fullBody, List<? extends DocTree> tags, List<? extends DocTree> preamble, List<? extends DocTree> postamble) 创建一个新的DocCommentTree对象,表示整个文档注释。创建一个新的DocRootTree对象,表示{@docRoot}标签。newDocTypeTree(String text) 创建一个新的DocTypeTree对象,表示DOCTYPEHTML声明。newEndElementTree(Name name) 创建一个新的EndElement对象,表示HTML元素的结束。newEntityTree(Name name) 创建一个新的EntityTree对象,表示HTML实体。newErroneousTree(String text, Diagnostic<JavaFileObject> diag) 创建一个新的ErroneousTree对象,表示一些无法解析的输入。newEscapeTree(char ch) 创建一个新的EscapeTree对象,表示转义字符。newExceptionTree(ReferenceTree name, List<? extends DocTree> description) 创建一个新的ThrowsTree对象,表示@exception标签。newHiddenTree(List<? extends DocTree> text) 创建一个新的HiddenTree对象,表示@hidden标签。newIdentifierTree(Name name) 创建一个新的IdentifierTree对象,表示标识符,例如在@param标签中。newIndexTree(DocTree term, List<? extends DocTree> description) 创建一个新的IndexTree对象,表示{@index }标签。创建一个新的InheritDocTree对象,表示{@inheritDoc}标签。newLinkPlainTree(ReferenceTree ref, List<? extends DocTree> label) 创建一个新的LinkTree对象,表示{@linkplain }标签。newLinkTree(ReferenceTree ref, List<? extends DocTree> label) 创建一个新的LinkTree对象,表示{@link }标签。newLiteralTree(TextTree text) 创建一个新的LiteralTree对象,表示{@literal }标签。newParamTree(boolean isTypeParameter, IdentifierTree name, List<? extends DocTree> description) 创建一个新的ParamTree对象,表示@param标签。newProvidesTree(ReferenceTree name, List<? extends DocTree> description) 创建一个新的ProvidesTree对象,表示@provides标签。newReferenceTree(String signature) 创建一个新的ReferenceTree对象,表示对API元素的引用。default ReturnTreenewReturnTree(boolean isInline, List<? extends DocTree> description) 创建一个新的ReturnTree对象,表示@return标签或{@return}标签。newReturnTree(List<? extends DocTree> description) 创建一个新的ReturnTree对象,表示@return标签。newSeeTree(List<? extends DocTree> reference) 创建一个新的SeeTree对象,表示@see标签。newSerialDataTree(List<? extends DocTree> description) 创建一个新的SerialDataTree对象,表示@serialData标签。newSerialFieldTree(IdentifierTree name, ReferenceTree type, List<? extends DocTree> description) 创建一个新的SerialFieldTree对象,表示@serialField标签。newSerialTree(List<? extends DocTree> description) 创建一个新的SerialTree对象,表示@serial标签。newSinceTree(List<? extends DocTree> text) 创建一个新的SinceTree对象,表示@since标签。newSnippetTree(List<? extends DocTree> attributes, TextTree text) 创建一个新的SnippetTree对象,表示{@snippet }标签。newSpecTree(TextTree url, List<? extends DocTree> title) 创建一个新的SpecTree对象,表示@spec标签。newStartElementTree(Name name, List<? extends DocTree> attrs, boolean selfClosing) 创建一个新的StartElementTree对象,表示HTML元素的开始。default SummaryTreenewSummaryTree(List<? extends DocTree> summary) 创建一个新的SummaryTree对象,表示{@summary }标签。newSystemPropertyTree(Name propertyName) 创建一个新的SystemPropertyTree对象,表示{@systemProperty }标签。newTextTree(String text) 创建一个新的TextTree对象,表示一些纯文本。newThrowsTree(ReferenceTree name, List<? extends DocTree> description) 创建一个新的ThrowsTree对象,表示@throws标签。newUnknownBlockTagTree(Name name, List<? extends DocTree> content) 创建一个新的UnknownBlockTagTree对象,表示无法识别的块标签。newUnknownInlineTagTree(Name name, List<? extends DocTree> content) 创建一个新的UnknownInlineTagTree对象,表示无法识别的内联标签。newUsesTree(ReferenceTree name, List<? extends DocTree> description) 创建一个新的UsesTree对象,表示@uses标签。创建一个新的ValueTree对象,表示{@value }标签。default ValueTreenewValueTree(TextTree format, ReferenceTree ref) 创建一个新的ValueTree对象,表示{@value }标签。newVersionTree(List<? extends DocTree> text) 创建一个新的VersionTree对象,表示{@version }标签。
-
Method Details
-
newAttributeTree
AttributeTree newAttributeTree(Name name, AttributeTree.ValueKind vkind, List<? extends DocTree> value) 创建一个新的AttributeTree对象,表示HTML元素或标签中的属性。- 参数:
-
name- 属性的名称 -
vkind- 属性值的类型 -
value- 属性的值(如果有) - 返回:
-
一个
AttributeTree对象
-
newAuthorTree
创建一个新的AuthorTree对象,表示@author标签。- 参数:
-
name- 作者的名称 - 返回:
-
一个
AuthorTree对象
-
newCodeTree
创建一个新的LiteralTree对象,表示{@code }标签。- 参数:
-
text- 标签的内容 - 返回:
-
一个
LiteralTree对象
-
newCommentTree
创建一个新的CommentTree对象,表示HTML注释。- 参数:
-
text- 注释的内容 - 返回:
-
一个
CommentTree对象
-
newDeprecatedTree
创建一个新的DeprecatedTree对象,表示@deprecated标签。- 参数:
-
text- 标签的内容 - 返回:
-
一个
DeprecatedTree对象
-
newDocCommentTree
创建一个新的DocCommentTree对象,表示完整的文档注释。- 参数:
-
fullBody- 文档注释的整体内容 -
tags- 文档注释中的块标签 - 返回:
-
一个
DocCommentTree对象
-
newDocCommentTree
DocCommentTree newDocCommentTree(List<? extends DocTree> fullBody, List<? extends DocTree> tags, List<? extends DocTree> preamble, List<? extends DocTree> postamble) 创建一个新的DocCommentTree对象,表示整个文档注释。- 参数:
-
fullBody- 文档注释的整体内容 -
tags- 文档注释中的块标签 -
preamble- 包括body标签在内的html文件的元内容 -
postamble- 包括闭合body标签在内的html的元内容 - 返回:
-
一个
DocCommentTree对象 - 自JDK版本:
- 10
-
newDocRootTree
DocRootTree newDocRootTree()创建一个新的DocRootTree对象,表示{@docRoot}标签。- 返回:
-
一个
DocRootTree对象
-
newDocTypeTree
创建一个新的DocTypeTree对象,表示DOCTYPEHTML声明。- 参数:
-
text- 声明的内容 - 返回:
-
一个
DocTypeTree对象 - 自JDK版本:
- 10
-
newEndElementTree
创建一个新的EndElement对象,表示HTML元素的结束。- 参数:
-
name- HTML元素的名称 - 返回:
-
一个
EndElementTree对象
-
newEntityTree
创建一个新的EntityTree对象,表示HTML实体。- 参数:
-
name- 实体的名称,表示HTML文档中实体表示中'&'和';'之间的字符 - 返回:
-
一个
EntityTree对象
-
newErroneousTree
创建一个新的ErroneousTree对象,表示一些无法解析的输入。- 参数:
-
text- 无法解析的文本 -
diag- 与无法解析文本相关联的诊断,或null - 返回:
-
一个
ErroneousTree对象
-
newEscapeTree
创建一个新的EscapeTree对象,表示转义字符。- API说明:
-
此方法本身不限制有效转义序列的集合,尽管该集合可能有效地限制为在标准Doclet的文档注释规范中定义的那些,包括以下上下文敏感的转义序列:
@@,表示@,在其他情况下会被视为引入块或内联标签,@/,表示/,作为*@/的一部分,表示*/,以及@*,表示*,在行首的空格后,否则会被丢弃。
- 参数:
-
ch- 字符 - 返回:
-
一个
EscapeTree对象 - 自JDK版本:
- 21
-
newExceptionTree
创建一个新的ThrowsTree对象,表示@exception标签。- 参数:
-
name- 异常的名称 -
description- 可能抛出异常的原因描述 - 返回:
-
一个
ThrowsTree对象
-
newHiddenTree
创建一个新的HiddenTree对象,用于表示一个@hidden标签。- 参数:
-
text- 标签的内容 - 返回:
-
一个
HiddenTree对象
-
newIdentifierTree
创建一个新的IdentifierTree对象,用于表示标识符,例如在@param标签中。- 参数:
-
name- 标识符的名称 - 返回:
-
一个
IdentifierTree对象
-
newIndexTree
创建一个新的IndexTree对象,用于表示一个{@index }标签。- 参数:
-
term- 搜索项 -
description- 搜索项的可选描述 - 返回:
-
一个
IndexTree对象
-
newInheritDocTree
InheritDocTree newInheritDocTree()创建一个新的InheritDocTree对象,用于表示一个{@inheritDoc}标签。- 返回:
-
一个
InheritDocTree对象
-
newLinkTree
创建一个新的LinkTree对象,用于表示一个{@link }标签。- 参数:
-
ref- 引用的API元素 -
label- 链接的可选标签 - 返回:
-
一个
LinkTree对象
-
newLinkPlainTree
创建一个新的LinkTree对象,用于表示一个{@linkplain }标签。- 参数:
-
ref- 引用的API元素 -
label- 链接的可选标签 - 返回:
-
一个
LinkTree对象
-
newLiteralTree
创建一个新的LiteralTree对象,用于表示一个{@literal }标签。- 参数:
-
text- 标签的内容 - 返回:
-
一个
LiteralTree对象
-
newParamTree
ParamTree newParamTree(boolean isTypeParameter, IdentifierTree name, List<? extends DocTree> description) 创建一个新的ParamTree对象,用于表示一个@param标签。- 参数:
-
isTypeParameter- 如果这是一个类型参数,则为true,否则为false -
name- 描述的参数 -
description- 参数的描述 - 返回:
-
一个
ParamTree对象
-
newProvidesTree
创建一个新的ProvidesTree对象,用于表示一个@provides标签。- 参数:
-
name- 服务类型的名称 -
description- 提供的服务的描述 - 返回:
-
一个
ProvidesTree对象
-
newReferenceTree
创建一个新的ReferenceTree对象,用于表示对API元素的引用。- 参数:
-
signature- 引用的文档注释签名 - 返回:
-
一个
ReferenceTree对象
-
newReturnTree
创建一个新的ReturnTree对象,用于表示一个@return标签。- 参数:
-
description- 方法返回值的描述 - 返回:
-
一个
ReturnTree对象
-
newReturnTree
创建一个新的ReturnTree对象,用于表示一个@return标签或{@return}标签。- 实现要求:
-
如果
isInline为true,则此实现会抛出UnsupportedOperationException,否则会调用newReturnTree(List)。 - 参数:
-
isInline- 如果此实例作为内联标签,则为true,否则为false -
description- 方法返回值的描述 - 返回:
-
一个
ReturnTree对象 - 抛出:
-
UnsupportedOperationException- 如果不支持内联{@return}标签 - 自:
- 16
-
newSeeTree
创建一个新的SeeTree对象,用于表示一个@see标签。- 参数:
-
reference- 引用 - 返回:
-
一个
SeeTree对象
-
newSerialTree
创建一个新的SerialTree对象,用于表示一个@serial标签。- 参数:
-
description- 标签的描述 - 返回:
-
一个
SerialTree对象
-
newSerialDataTree
创建一个新的SerialDataTree对象,用于表示一个@serialData标签。- 参数:
-
description- 标签的描述 - 返回:
-
一个
SerialDataTree对象
-
newSerialFieldTree
SerialFieldTree newSerialFieldTree(IdentifierTree name, ReferenceTree type, List<? extends DocTree> description) 创建一个新的SerialFieldTree对象,用于表示一个@serialField标签。- 参数:
-
name- 字段的名称 -
type- 字段的类型 -
description- 字段的描述 - 返回:
-
一个
SerialFieldTree对象
-
newSinceTree
创建一个新的SinceTree对象,用于表示一个@since标签。- 参数:
-
text- 标签的内容 - 返回:
-
一个
SinceTree对象
-
newSnippetTree
创建一个新的SnippetTree对象,用于表示一个{@snippet }标签。- 参数:
-
attributes- 标签的属性 -
text- 标签的主体,如果标签没有主体则为null(不要与空主体混淆) - 返回:
-
一个
SnippetTree对象 - 自:
- 18
-
newSpecTree
创建一个新的SpecTree对象,用于表示一个@spec标签。- 参数:
-
url- URL -
title- 标题 - 返回:
-
一个
SpecTree对象 - 自:
- 20
-
newStartElementTree
创建一个新的StartElementTree对象,用于表示HTML元素的开始。- 参数:
-
name- HTML元素的名称 -
attrs- 属性 -
selfClosing- 如果开始元素标记为自闭合则为true;否则为false - 返回:
-
一个
StartElementTree对象
-
newSummaryTree
创建一个新的SummaryTree对象,用于表示一个{@summary }标签。- 实现要求:
-
此实现会抛出
UnsupportedOperationException。 - 参数:
-
summary- 标签的内容 - 返回:
-
一个
SummaryTree对象 - 自:
- 10
-
newSystemPropertyTree
创建一个新的SystemPropertyTree对象,用于表示一个{@systemProperty }标签。- 参数:
-
propertyName- 系统属性名称 - 返回:
-
一个
SystemPropertyTree对象 - 自:
- 12
-
newTextTree
创建一个新的TextTree对象,用于表示一些纯文本。- 参数:
-
text- 文本 - 返回:
-
一个
TextTree对象
-
newThrowsTree
创建一个新的ThrowsTree对象,用于表示一个@throws标签。- 参数:
-
name- 异常的名称 -
description- 可能抛出异常的描述 - 返回:
-
一个
ThrowsTree对象
-
newUnknownBlockTagTree
创建一个新的UnknownBlockTagTree对象,用于表示一个未识别的块标签。- 参数:
-
name- 块标签的名称 -
content- 内容 - 返回:
-
一个
UnknownBlockTagTree对象
-
newUnknownInlineTagTree
创建一个新的UnknownInlineTagTree对象,用于表示一个未识别的内联标签。- 参数:
-
name- 内联标签的名称 -
content- 内容 - 返回:
-
一个
UnknownInlineTagTree对象
-
newUsesTree
创建一个新的UsesTree对象,用于表示一个@uses标签。- 参数:
-
name- 服务类型的名称 -
description- 服务的使用方式描述 - 返回:
-
一个
UsesTree对象
-
newValueTree
创建一个新的ValueTree对象,用于表示一个{@value }标签。- 参数:
-
ref- 值的引用 - 返回:
-
一个
ValueTree对象
-
newValueTree
创建一个新的ValueTree对象,用于表示一个{@value }标签。- 实现要求:
-
此实现会调用
newValueTree(ref)。 - 参数:
-
format- 值的格式字符串 -
ref- 值的引用 - 返回:
-
一个
ValueTree对象 - 自:
- 20
-
newVersionTree
创建一个新的VersionTree对象,用于表示一个{@version }标签。- 参数:
-
text- 标签的内容 - 返回:
-
一个
VersionTree对象
-
at
设置此工厂创建的后续树节点中记录的位置。位置应该是相对于源文件开头的字符偏移量,或者NOPOS。- 参数:
-
pos- 位置 - 返回值:
- 此对象,以便支持方法链接
-
getFirstSentence
获取包含在内容列表中的第一个句子。第一个句子的确定是特定于实现的,可能涉及使用特定于区域设置的BreakIterator和其他启发式方法。结果列表可能与输入列表共享一组共同的初始项。- 参数:
-
list- 列表 - 返回值:
- 包含列表中第一个句子的列表
-