Module jdk.compiler

Interface DocTreeFactory


public interface DocTreeFactory
创建DocTree节点的工厂。
实现说明:
此接口的实现方法只能接受由相同实现创建的DocTree节点。
自JDK版本:
9
  • Method Details

    • newAttributeTree

      AttributeTree newAttributeTree(Name name, AttributeTree.ValueKind vkind, List<? extends DocTree> value)
      创建一个新的AttributeTree对象,表示HTML元素或标签中的属性。
      参数:
      name - 属性的名称
      vkind - 属性值的类型
      value - 属性的值(如果有)
      返回:
      一个AttributeTree对象
    • newAuthorTree

      AuthorTree newAuthorTree(List<? extends DocTree> name)
      创建一个新的AuthorTree对象,表示@author标签。
      参数:
      name - 作者的名称
      返回:
      一个AuthorTree对象
    • newCodeTree

      LiteralTree newCodeTree(TextTree text)
      创建一个新的LiteralTree对象,表示{@code }标签。
      参数:
      text - 标签的内容
      返回:
      一个LiteralTree对象
    • newCommentTree

      CommentTree newCommentTree(String text)
      创建一个新的CommentTree对象,表示HTML注释。
      参数:
      text - 注释的内容
      返回:
      一个CommentTree对象
    • newDeprecatedTree

      DeprecatedTree newDeprecatedTree(List<? extends DocTree> text)
      创建一个新的DeprecatedTree对象,表示@deprecated标签。
      参数:
      text - 标签的内容
      返回:
      一个DeprecatedTree对象
    • newDocCommentTree

      DocCommentTree newDocCommentTree(List<? extends DocTree> fullBody, List<? extends DocTree> tags)
      创建一个新的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 newDocTypeTree(String text)
      创建一个新的DocTypeTree对象,表示DOCTYPE HTML声明。
      参数:
      text - 声明的内容
      返回:
      一个DocTypeTree对象
      自JDK版本:
      10
    • newEndElementTree

      EndElementTree newEndElementTree(Name name)
      创建一个新的EndElement对象,表示HTML元素的结束。
      参数:
      name - HTML元素的名称
      返回:
      一个EndElementTree对象
    • newEntityTree

      EntityTree newEntityTree(Name name)
      创建一个新的EntityTree对象,表示HTML实体。
      参数:
      name - 实体的名称,表示HTML文档中实体表示中'&'和';'之间的字符
      返回:
      一个EntityTree对象
    • newErroneousTree

      ErroneousTree newErroneousTree(String text, Diagnostic<JavaFileObject> diag)
      创建一个新的ErroneousTree对象,表示一些无法解析的输入。
      参数:
      text - 无法解析的文本
      diag - 与无法解析文本相关联的诊断,或null
      返回:
      一个ErroneousTree对象
    • newEscapeTree

      EscapeTree newEscapeTree(char ch)
      创建一个新的EscapeTree对象,表示转义字符。
      API说明:
      此方法本身不限制有效转义序列的集合,尽管该集合可能有效地限制为在标准Doclet的文档注释规范中定义的那些,包括以下上下文敏感的转义序列:
      • @@,表示@,在其他情况下会被视为引入块或内联标签,
      • @/,表示/,作为*@/的一部分,表示*/,以及
      • @*,表示*,在行首的空格后,否则会被丢弃
      参数:
      ch - 字符
      返回:
      一个EscapeTree对象
      自JDK版本:
      21
    • newExceptionTree

      ThrowsTree newExceptionTree(ReferenceTree name, List<? extends DocTree> description)
      创建一个新的ThrowsTree对象,表示@exception标签。
      参数:
      name - 异常的名称
      description - 可能抛出异常的原因描述
      返回:
      一个ThrowsTree对象
    • newHiddenTree

      HiddenTree newHiddenTree(List<? extends DocTree> text)
      创建一个新的HiddenTree对象,用于表示一个@hidden标签。
      参数:
      text - 标签的内容
      返回:
      一个HiddenTree对象
    • newIdentifierTree

      IdentifierTree newIdentifierTree(Name name)
      创建一个新的IdentifierTree对象,用于表示标识符,例如在@param标签中。
      参数:
      name - 标识符的名称
      返回:
      一个IdentifierTree对象
    • newIndexTree

      IndexTree newIndexTree(DocTree term, List<? extends DocTree> description)
      创建一个新的IndexTree对象,用于表示一个{@index }标签。
      参数:
      term - 搜索项
      description - 搜索项的可选描述
      返回:
      一个IndexTree对象
    • newInheritDocTree

      InheritDocTree newInheritDocTree()
      创建一个新的InheritDocTree对象,用于表示一个{@inheritDoc}标签。
      返回:
      一个InheritDocTree对象
    • newLinkTree

      LinkTree newLinkTree(ReferenceTree ref, List<? extends DocTree> label)
      创建一个新的LinkTree对象,用于表示一个{@link }标签。
      参数:
      ref - 引用的API元素
      label - 链接的可选标签
      返回:
      一个LinkTree对象
    • newLinkPlainTree

      LinkTree newLinkPlainTree(ReferenceTree ref, List<? extends DocTree> label)
      创建一个新的LinkTree对象,用于表示一个{@linkplain }标签。
      参数:
      ref - 引用的API元素
      label - 链接的可选标签
      返回:
      一个LinkTree对象
    • newLiteralTree

      LiteralTree newLiteralTree(TextTree text)
      创建一个新的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 newProvidesTree(ReferenceTree name, List<? extends DocTree> description)
      创建一个新的ProvidesTree对象,用于表示一个@provides标签。
      参数:
      name - 服务类型的名称
      description - 提供的服务的描述
      返回:
      一个ProvidesTree对象
    • newReferenceTree

      ReferenceTree newReferenceTree(String signature)
      创建一个新的ReferenceTree对象,用于表示对API元素的引用。
      参数:
      signature - 引用的文档注释签名
      返回:
      一个ReferenceTree对象
    • newReturnTree

      ReturnTree newReturnTree(List<? extends DocTree> description)
      创建一个新的ReturnTree对象,用于表示一个@return标签。
      参数:
      description - 方法返回值的描述
      返回:
      一个ReturnTree对象
    • newReturnTree

      default ReturnTree newReturnTree(boolean isInline, List<? extends DocTree> description)
      创建一个新的ReturnTree对象,用于表示一个@return标签或{@return}标签。
      实现要求:
      如果isInlinetrue,则此实现会抛出UnsupportedOperationException,否则会调用newReturnTree(List)
      参数:
      isInline - 如果此实例作为内联标签,则为true,否则为false
      description - 方法返回值的描述
      返回:
      一个ReturnTree对象
      抛出:
      UnsupportedOperationException - 如果不支持内联{@return}标签
      自:
      16
    • newSeeTree

      SeeTree newSeeTree(List<? extends DocTree> reference)
      创建一个新的SeeTree对象,用于表示一个@see标签。
      参数:
      reference - 引用
      返回:
      一个SeeTree对象
    • newSerialTree

      SerialTree newSerialTree(List<? extends DocTree> description)
      创建一个新的SerialTree对象,用于表示一个@serial标签。
      参数:
      description - 标签的描述
      返回:
      一个SerialTree对象
    • newSerialDataTree

      SerialDataTree newSerialDataTree(List<? extends DocTree> description)
      创建一个新的SerialDataTree对象,用于表示一个@serialData标签。
      参数:
      description - 标签的描述
      返回:
      一个SerialDataTree对象
    • newSerialFieldTree

      SerialFieldTree newSerialFieldTree(IdentifierTree name, ReferenceTree type, List<? extends DocTree> description)
      创建一个新的SerialFieldTree对象,用于表示一个@serialField标签。
      参数:
      name - 字段的名称
      type - 字段的类型
      description - 字段的描述
      返回:
      一个SerialFieldTree对象
    • newSinceTree

      SinceTree newSinceTree(List<? extends DocTree> text)
      创建一个新的SinceTree对象,用于表示一个@since标签。
      参数:
      text - 标签的内容
      返回:
      一个SinceTree对象
    • newSnippetTree

      SnippetTree newSnippetTree(List<? extends DocTree> attributes, TextTree text)
      创建一个新的SnippetTree对象,用于表示一个{@snippet }标签。
      参数:
      attributes - 标签的属性
      text - 标签的主体,如果标签没有主体则为null(不要与空主体混淆)
      返回:
      一个SnippetTree对象
      自:
      18
    • newSpecTree

      SpecTree newSpecTree(TextTree url, List<? extends DocTree> title)
      创建一个新的SpecTree对象,用于表示一个@spec标签。
      参数:
      url - URL
      title - 标题
      返回:
      一个SpecTree对象
      自:
      20
    • newStartElementTree

      StartElementTree newStartElementTree(Name name, List<? extends DocTree> attrs, boolean selfClosing)
      创建一个新的StartElementTree对象,用于表示HTML元素的开始。
      参数:
      name - HTML元素的名称
      attrs - 属性
      selfClosing - 如果开始元素标记为自闭合则为true;否则为false
      返回:
      一个StartElementTree对象
    • newSummaryTree

      default SummaryTree newSummaryTree(List<? extends DocTree> summary)
      创建一个新的SummaryTree对象,用于表示一个{@summary }标签。
      实现要求:
      此实现会抛出UnsupportedOperationException
      参数:
      summary - 标签的内容
      返回:
      一个SummaryTree对象
      自:
      10
    • newSystemPropertyTree

      SystemPropertyTree newSystemPropertyTree(Name propertyName)
      创建一个新的SystemPropertyTree对象,用于表示一个{@systemProperty }标签。
      参数:
      propertyName - 系统属性名称
      返回:
      一个SystemPropertyTree对象
      自:
      12
    • newTextTree

      TextTree newTextTree(String text)
      创建一个新的TextTree对象,用于表示一些纯文本。
      参数:
      text - 文本
      返回:
      一个TextTree对象
    • newThrowsTree

      ThrowsTree newThrowsTree(ReferenceTree name, List<? extends DocTree> description)
      创建一个新的ThrowsTree对象,用于表示一个@throws标签。
      参数:
      name - 异常的名称
      description - 可能抛出异常的描述
      返回:
      一个ThrowsTree对象
    • newUnknownBlockTagTree

      UnknownBlockTagTree newUnknownBlockTagTree(Name name, List<? extends DocTree> content)
      创建一个新的UnknownBlockTagTree对象,用于表示一个未识别的块标签。
      参数:
      name - 块标签的名称
      content - 内容
      返回:
      一个UnknownBlockTagTree对象
    • newUnknownInlineTagTree

      UnknownInlineTagTree newUnknownInlineTagTree(Name name, List<? extends DocTree> content)
      创建一个新的UnknownInlineTagTree对象,用于表示一个未识别的内联标签。
      参数:
      name - 内联标签的名称
      content - 内容
      返回:
      一个UnknownInlineTagTree对象
    • newUsesTree

      UsesTree newUsesTree(ReferenceTree name, List<? extends DocTree> description)
      创建一个新的UsesTree对象,用于表示一个@uses标签。
      参数:
      name - 服务类型的名称
      description - 服务的使用方式描述
      返回:
      一个UsesTree对象
    • newValueTree

      ValueTree newValueTree(ReferenceTree ref)
      创建一个新的ValueTree对象,用于表示一个{@value }标签。
      参数:
      ref - 值的引用
      返回:
      一个ValueTree对象
    • newValueTree

      default ValueTree newValueTree(TextTree format, ReferenceTree ref)
      创建一个新的ValueTree对象,用于表示一个{@value }标签。
      实现要求:
      此实现会调用newValueTree(ref)
      参数:
      format - 值的格式字符串
      ref - 值的引用
      返回:
      一个ValueTree对象
      自:
      20
    • newVersionTree

      VersionTree newVersionTree(List<? extends DocTree> text)
      创建一个新的VersionTree对象,用于表示一个{@version }标签。
      参数:
      text - 标签的内容
      返回:
      一个VersionTree对象
    • at

      DocTreeFactory at(int pos)
      设置此工厂创建的后续树节点中记录的位置。位置应该是相对于源文件开头的字符偏移量,或者NOPOS
      参数:
      pos - 位置
      返回值:
      此对象,以便支持方法链接
    • getFirstSentence

      List<DocTree> getFirstSentence(List<? extends DocTree> list)
      获取包含在内容列表中的第一个句子。第一个句子的确定是特定于实现的,可能涉及使用特定于区域设置的BreakIterator和其他启发式方法。结果列表可能与输入列表共享一组共同的初始项。
      参数:
      list - 列表
      返回值:
      包含列表中第一个句子的列表