Interface DocTreeFactory

public interface DocTreeFactory

Factory for creating DocTree nodes.

Implementation Note:
The methods in an implementation of this interface may only accept DocTree nodes that have been created by the same implementation.
Since:
9

Methods

Modifier and Type Method Description
DocTreeFactory at​(int pos)

Set the position to be recorded in subsequent tree nodes created by this factory.

List<DocTree> getFirstSentence​(List<? extends DocTree> list)

Get the first sentence contained in a list of content.

AttributeTree newAttributeTree​(Name name, AttributeTree.ValueKind vkind, List<? extends DocTree> value)

Create a new AttributeTree object, to represent an HTML attribute in an HTML tag.

AuthorTree newAuthorTree​(List<? extends DocTree> name)

Create a new AuthorTree object, to represent an {@author } tag.

LiteralTree newCodeTree​(TextTree text)

Create a new CodeTree object, to represent a {@code } tag.

CommentTree newCommentTree​(String text)

Create a new CommentTree, to represent an HTML comment.

DeprecatedTree newDeprecatedTree​(List<? extends DocTree> text)

Create a new DeprecatedTree object, to represent an {@deprecated } tag.

DocCommentTree newDocCommentTree​(List<? extends DocTree> fullBody, List<? extends DocTree> tags)

Create a new DocCommentTree object, to represent a complete doc comment.

DocCommentTree newDocCommentTree​(List<? extends DocTree> fullBody, List<? extends DocTree> tags, List<? extends DocTree> preamble, List<? extends DocTree> postamble)

Create a new DocCommentTree object, to represent the enitire doc comment.

DocRootTree newDocRootTree()

Create a new DocRootTree object, to represent an {@docroot} tag.

DocTypeTree newDocTypeTree​(String text)

Create a new DocTypeTree, to represent a DOCTYPE HTML declaration.

EndElementTree newEndElementTree​(Name name)

Create a new EndElement object, to represent the end of an HTML element.

EntityTree newEntityTree​(Name name)

Create a new EntityTree object, to represent an HTML entity.

ErroneousTree newErroneousTree​(String text, Diagnostic<JavaFileObject> diag)

Create a new ErroneousTree object, to represent some unparseable input.

ThrowsTree newExceptionTree​(ReferenceTree name, List<? extends DocTree> description)

Create a new ExceptionTree object, to represent an @exception tag.

HiddenTree newHiddenTree​(List<? extends DocTree> text)

Create a new HiddenTree object, to represent an {@hidden } tag.

IdentifierTree newIdentifierTree​(Name name)

Create a new IdentifierTree object, to represent an identifier, such as in a @param tag.

IndexTree newIndexTree​(DocTree term, List<? extends DocTree> description)

Create a new IndexTree object, to represent an {@index } tag.

InheritDocTree newInheritDocTree()

Create a new InheritDocTree object, to represent an {@inheritDoc} tag.

LinkTree newLinkPlainTree​(ReferenceTree ref, List<? extends DocTree> label)

Create a new LinkPlainTree object, to represent a {@linkplain } tag.

LinkTree newLinkTree​(ReferenceTree ref, List<? extends DocTree> label)

Create a new LinkTree object, to represent a {@link } tag.

LiteralTree newLiteralTree​(TextTree text)

Create a new LiteralTree object, to represent a {@literal } tag.

ParamTree newParamTree​(boolean isTypeParameter, IdentifierTree name, List<? extends DocTree> description)

Create a new ParamTree object, to represent a @param tag.

ProvidesTree newProvidesTree​(ReferenceTree name, List<? extends DocTree> description)

Create a new ProvidesTree object, to represent a @provides tag.

ReferenceTree newReferenceTree​(String signature)

Create a new ReferenceTree object, to represent a reference to an API element.

ReturnTree newReturnTree​(List<? extends DocTree> description)

Create a new ReturnTree object, to represent a @return tag.

SeeTree newSeeTree​(List<? extends DocTree> reference)

Create a new SeeTree object, to represent a @see tag.

SerialDataTree newSerialDataTree​(List<? extends DocTree> description)

Create a new SerialDataTree object, to represent a @serialData tag.

SerialFieldTree newSerialFieldTree​(IdentifierTree name, ReferenceTree type, List<? extends DocTree> description)

Create a new SerialFieldTree object, to represent a @serialField tag.

SerialTree newSerialTree​(List<? extends DocTree> description)

Create a new SerialTree object, to represent a @serial tag.

SinceTree newSinceTree​(List<? extends DocTree> text)

Create a new SinceTree object, to represent a @since tag.

StartElementTree newStartElementTree​(Name name, List<? extends DocTree> attrs, boolean selfClosing)

Create a new StartElementTree object, to represent the start of an HTML element.

default SummaryTree newSummaryTree​(List<? extends DocTree> summary)

Create a new SummaryTree object, to represent a @summary tag.

TextTree newTextTree​(String text)

Create a new TextTree object, to represent some plain text.

ThrowsTree newThrowsTree​(ReferenceTree name, List<? extends DocTree> description)

Create a new ThrowsTree object, to represent a @throws tag.

UnknownBlockTagTree newUnknownBlockTagTree​(Name name, List<? extends DocTree> content)

Create a new UnknownBlockTagTree object, to represent an unrecognized block tag.

UnknownInlineTagTree newUnknownInlineTagTree​(Name name, List<? extends DocTree> content)

Create a new UnknownInlineTagTree object, to represent an unrecognized inline tag.

UsesTree newUsesTree​(ReferenceTree name, List<? extends DocTree> description)

Create a new UsesTree object, to represent a @uses tag.

ValueTree newValueTree​(ReferenceTree ref)

Create a new ValueTree object, to represent a {@value } tag.

VersionTree newVersionTree​(List<? extends DocTree> text)

Create a new VersionTree object, to represent a {@version } tag.

Methods

newAttributeTree

AttributeTree newAttributeTree(Name name,
                               AttributeTree.ValueKind vkind,
                               List<? extends DocTree> value)

Create a new AttributeTree object, to represent an HTML attribute in an HTML tag.

Parameters:
name - the name of the attribute
vkind - the kind of attribute value
value - the value, if any, of the attribute
Returns:
an AttributeTree object

newAuthorTree

AuthorTree newAuthorTree(List<? extends DocTree> name)

Create a new AuthorTree object, to represent an {@author } tag.

Parameters:
name - the name of the author
Returns:
an AuthorTree object

newCodeTree

LiteralTree newCodeTree(TextTree text)

Create a new CodeTree object, to represent a {@code } tag.

Parameters:
text - the content of the tag
Returns:
a CodeTree object

newCommentTree

CommentTree newCommentTree(String text)

Create a new CommentTree, to represent an HTML comment.

Parameters:
text - the content of the comment
Returns:
a CommentTree object

newDeprecatedTree

DeprecatedTree newDeprecatedTree(List<? extends DocTree> text)

Create a new DeprecatedTree object, to represent an {@deprecated } tag.

Parameters:
text - the content of the tag
Returns:
a DeprecatedTree object

newDocCommentTree

DocCommentTree newDocCommentTree(List<? extends DocTree> fullBody,
                                 List<? extends DocTree> tags)

Create a new DocCommentTree object, to represent a complete doc comment.

Parameters:
fullBody - the entire body of the doc comment
tags - the block tags in the doc comment
Returns:
a DocCommentTree object

newDocCommentTree

DocCommentTree newDocCommentTree(List<? extends DocTree> fullBody,
                                 List<? extends DocTree> tags,
                                 List<? extends DocTree> preamble,
                                 List<? extends DocTree> postamble)

Create a new DocCommentTree object, to represent the enitire doc comment.

Parameters:
fullBody - the entire body of the doc comment
tags - the block tags in the doc comment
preamble - the meta content of an html file including the body tag
postamble - the meta content of an html including the closing body tag
Returns:
a DocCommentTree object
Since:
10

newDocRootTree

DocRootTree newDocRootTree()

Create a new DocRootTree object, to represent an {@docroot} tag.

Returns:
a DocRootTree object

newDocTypeTree

DocTypeTree newDocTypeTree(String text)

Create a new DocTypeTree, to represent a DOCTYPE HTML declaration.

Parameters:
text - the content of the declaration
Returns:
a CommentTree object
Since:
10

newEndElementTree

EndElementTree newEndElementTree(Name name)

Create a new EndElement object, to represent the end of an HTML element.

Parameters:
name - the name of the HTML element
Returns:
an EndElementTree object

newEntityTree

EntityTree newEntityTree(Name name)

Create a new EntityTree object, to represent an HTML entity.

Parameters:
name - the name of the entity, representing the characters between '<' and ';' in the representation of the entity in an HTML document
Returns:
an EntityTree object

newErroneousTree

ErroneousTree newErroneousTree(String text,
                               Diagnostic<JavaFileObject> diag)

Create a new ErroneousTree object, to represent some unparseable input.

Parameters:
text - the unparseable text
diag - a diagnostic associated with the unparseable text, or null
Returns:
an ErroneousTree object

newExceptionTree

ThrowsTree newExceptionTree(ReferenceTree name,
                            List<? extends DocTree> description)

Create a new ExceptionTree object, to represent an @exception tag.

Parameters:
name - the name of the exception
description - a description of why the exception might be thrown
Returns:
an ExceptionTree object

newHiddenTree

HiddenTree newHiddenTree(List<? extends DocTree> text)

Create a new HiddenTree object, to represent an {@hidden } tag.

Parameters:
text - the content of the tag
Returns:
a HiddenTree object

newIdentifierTree

IdentifierTree newIdentifierTree(Name name)

Create a new IdentifierTree object, to represent an identifier, such as in a @param tag.

Parameters:
name - the name of the identifier
Returns:
an IdentifierTree object

newIndexTree

IndexTree newIndexTree(DocTree term,
                       List<? extends DocTree> description)

Create a new IndexTree object, to represent an {@index } tag.

Parameters:
term - the search term
description - an optional description of the search term
Returns:
an IndexTree object

newInheritDocTree

InheritDocTree newInheritDocTree()

Create a new InheritDocTree object, to represent an {@inheritDoc} tag.

Returns:
an InheritDocTree object

newLinkTree

LinkTree newLinkTree(ReferenceTree ref,
                     List<? extends DocTree> label)

Create a new LinkTree object, to represent a {@link } tag.

Parameters:
ref - the API element being referenced
label - an optional label for the link
Returns:
a LinkTree object

newLinkPlainTree

LinkTree newLinkPlainTree(ReferenceTree ref,
                          List<? extends DocTree> label)

Create a new LinkPlainTree object, to represent a {@linkplain } tag.

Parameters:
ref - the API element being referenced
label - an optional label for the link
Returns:
a LinkPlainTree object

newLiteralTree

LiteralTree newLiteralTree(TextTree text)

Create a new LiteralTree object, to represent a {@literal } tag.

Parameters:
text - the content of the tag
Returns:
a LiteralTree object

newParamTree

ParamTree newParamTree(boolean isTypeParameter,
                       IdentifierTree name,
                       List<? extends DocTree> description)

Create a new ParamTree object, to represent a @param tag.

Parameters:
isTypeParameter - true if this is a type parameter, and false otherwise
name - the parameter being described
description - the description of the parameter
Returns:
a ParamTree object

newProvidesTree

ProvidesTree newProvidesTree(ReferenceTree name,
                             List<? extends DocTree> description)

Create a new ProvidesTree object, to represent a @provides tag.

Parameters:
name - the name of the service type
description - a description of the service being provided
Returns:
a ProvidesTree object

newReferenceTree

ReferenceTree newReferenceTree(String signature)

Create a new ReferenceTree object, to represent a reference to an API element.

Parameters:
signature - the doc comment signature of the reference
Returns:
a ReferenceTree object

newReturnTree

ReturnTree newReturnTree(List<? extends DocTree> description)

Create a new ReturnTree object, to represent a @return tag.

Parameters:
description - the description of the return value of a method
Returns:
a ReturnTree object

newSeeTree

SeeTree newSeeTree(List<? extends DocTree> reference)

Create a new SeeTree object, to represent a @see tag.

Parameters:
reference - the reference
Returns:
a SeeTree object

newSerialTree

SerialTree newSerialTree(List<? extends DocTree> description)

Create a new SerialTree object, to represent a @serial tag.

Parameters:
description - the description for the tag
Returns:
a SerialTree object

newSerialDataTree

SerialDataTree newSerialDataTree(List<? extends DocTree> description)

Create a new SerialDataTree object, to represent a @serialData tag.

Parameters:
description - the description for the tag
Returns:
a SerialDataTree object

newSerialFieldTree

SerialFieldTree newSerialFieldTree(IdentifierTree name,
                                   ReferenceTree type,
                                   List<? extends DocTree> description)

Create a new SerialFieldTree object, to represent a @serialField tag.

Parameters:
name - the name of the field
type - the type of the field
description - the description of the field
Returns:
a SerialFieldTree object

newSinceTree

SinceTree newSinceTree(List<? extends DocTree> text)

Create a new SinceTree object, to represent a @since tag.

Parameters:
text - the content of the tag
Returns:
a SinceTree object

newStartElementTree

StartElementTree newStartElementTree(Name name,
                                     List<? extends DocTree> attrs,
                                     boolean selfClosing)

Create a new StartElementTree object, to represent the start of an HTML element.

Parameters:
name - the name of the HTML element
attrs - the attributes
selfClosing - true if the start element is marked as self-closing; otherwise false
Returns:
a StartElementTree object

newSummaryTree

default SummaryTree newSummaryTree(List<? extends DocTree> summary)

Create a new SummaryTree object, to represent a @summary tag.

Implementation Requirements:
This implementation throws UnsupportedOperationException.
Parameters:
summary - the content of the tag
Returns:
a SummaryTree object
Since:
10

newTextTree

TextTree newTextTree(String text)

Create a new TextTree object, to represent some plain text.

Parameters:
text - the text
Returns:
a TextTree object

newThrowsTree

ThrowsTree newThrowsTree(ReferenceTree name,
                         List<? extends DocTree> description)

Create a new ThrowsTree object, to represent a @throws tag.

Parameters:
name - the name of the exception
description - a description of why the exception might be thrown
Returns:
a ThrowsTree object

newUnknownBlockTagTree

UnknownBlockTagTree newUnknownBlockTagTree(Name name,
                                           List<? extends DocTree> content)

Create a new UnknownBlockTagTree object, to represent an unrecognized block tag.

Parameters:
name - the name of the block tag
content - the content
Returns:
an UnknownBlockTagTree object

newUnknownInlineTagTree

UnknownInlineTagTree newUnknownInlineTagTree(Name name,
                                             List<? extends DocTree> content)

Create a new UnknownInlineTagTree object, to represent an unrecognized inline tag.

Parameters:
name - the name of the inline tag
content - the content
Returns:
an UnknownInlineTagTree object

newUsesTree

UsesTree newUsesTree(ReferenceTree name,
                     List<? extends DocTree> description)

Create a new UsesTree object, to represent a @uses tag.

Parameters:
name - the name of the service type
description - a description of how the service will be used
Returns:
a UsesTree object

newValueTree

ValueTree newValueTree(ReferenceTree ref)

Create a new ValueTree object, to represent a {@value } tag.

Parameters:
ref - a reference to the value
Returns:
a ValueTree object

newVersionTree

VersionTree newVersionTree(List<? extends DocTree> text)

Create a new VersionTree object, to represent a {@version } tag.

Parameters:
text - the content of the tag
Returns:
a VersionTree object

at

DocTreeFactory at(int pos)

Set the position to be recorded in subsequent tree nodes created by this factory. The position should be a character offset relative to the beginning of the source file or NOPOS.

Parameters:
pos - the position
Returns:
this object, to facilitate method chaining

getFirstSentence

List<DocTree> getFirstSentence(List<? extends DocTree> list)

Get the first sentence contained in a list of content. The determination of the first sentence is implementation specific, and may involve the use of a locale-specific BreakIterator and other heuristics. The resulting list may share a common set of initial items with the input list.

Parameters:
list - the list
Returns:
a list containing the first sentence of the list.

© 1993, 2020, 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/11/docs/api/jdk.compiler/com/sun/source/util/DocTreeFactory.html