DocTree.Kind (Compiler Tree API )
Keywords: com.sun.source.doctree.DocTree.Kind class
Date: 2026-08-19

com.sun.source.doctree

## Enum DocTree.Kind

- java.lang.Object
- - java.lang.Enum<DocTree.Kind>
  - - com.sun.source.doctree.DocTree.Kind

- All Implemented Interfaces:
    Serializable, Comparable<DocTree.Kind>
  Enclosing interface:
    DocTree

      @Exported
      public static enum DocTree.Kind
      extends Enum<DocTree.Kind>

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `ATTRIBUTE` Used for instances of `AttributeTree` representing an HTML attribute.
    `AUTHOR` Used for instances of `AuthorTree` representing an @author tag.
    `CODE` Used for instances of `LiteralTree` representing an @code tag.
    `COMMENT` Used for instances of `CommentTree` representing an HTML comment.
    `DEPRECATED` Used for instances of `DeprecatedTree` representing an @deprecated tag.
    `DOC_COMMENT` Used for instances of `DocCommentTree` representing a complete doc comment.
    `DOC_ROOT` Used for instances of `DocRootTree` representing an @docRoot tag.
    `END_ELEMENT` Used for instances of `EndElementTree` representing the end of an HTML element.
    `ENTITY` Used for instances of `EntityTree` representing an HTML entity.
    `ERRONEOUS` Used for instances of `ErroneousTree` representing some invalid text.
    `EXCEPTION` Used for instances of `ThrowsTree` representing an @exception tag.
    `IDENTIFIER` Used for instances of `IdentifierTree` representing an identifier.
    `INHERIT_DOC` Used for instances of `InheritDocTree` representing an @inheritDoc tag.
    `LINK` Used for instances of `LinkTree` representing an @link tag.
    `LINK_PLAIN` Used for instances of `LinkTree` representing an @linkplain tag.
    `LITERAL` Used for instances of `LiteralTree` representing an @literal tag.
    `OTHER` An implementation-reserved node.
    `PARAM` Used for instances of `ParamTree` representing an @param tag.
    `REFERENCE` Used for instances of `ReferenceTree` representing a reference to a element in the Java programming language.
    `RETURN` Used for instances of `ReturnTree` representing an @return tag.
    `SEE` Used for instances of `SeeTree` representing an @see tag.
    `SERIAL` Used for instances of `SerialTree` representing an @serial tag.
    `SERIAL_DATA` Used for instances of `SerialDataTree` representing an @serialData tag.
    `SERIAL_FIELD` Used for instances of `SerialFieldTree` representing an @serialField tag.
    `SINCE` Used for instances of `SinceTree` representing an @since tag.
    `START_ELEMENT` Used for instances of `EndElementTree` representing the start of an HTML element.
    `TEXT` Used for instances of `TextTree` representing some documentation text.
    `THROWS` Used for instances of `ThrowsTree` representing an @throws tag.
    `UNKNOWN_BLOCK_TAG` Used for instances of `UnknownBlockTagTree` representing an unknown block tag.
    `UNKNOWN_INLINE_TAG` Used for instances of `UnknownInlineTagTree` representing an unknown inline tag.
    `VALUE` Used for instances of `ValueTree` representing an @value tag.
    `VERSION` Used for instances of `VersionTree` representing an @version tag.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `String` | `tagName`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static DocTree.Kind` | `valueOf(String name)` Returns the enum constant of this type with the specified name.
    `static DocTree.Kind[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### ATTRIBUTE

          public static final DocTree.Kind ATTRIBUTE

      Used for instances of `AttributeTree` representing an HTML attribute.

    - #### AUTHOR

          public static final DocTree.Kind AUTHOR

      Used for instances of `AuthorTree` representing an @author tag.

    - #### CODE

          public static final DocTree.Kind CODE

      Used for instances of `LiteralTree` representing an @code tag.

    - #### COMMENT

          public static final DocTree.Kind COMMENT

      Used for instances of `CommentTree` representing an HTML comment.

    - #### DEPRECATED

          public static final DocTree.Kind DEPRECATED

      Used for instances of `DeprecatedTree` representing an @deprecated tag.

    - #### DOC_COMMENT

          public static final DocTree.Kind DOC_COMMENT

      Used for instances of `DocCommentTree` representing a complete doc comment.

    - #### DOC_ROOT

          public static final DocTree.Kind DOC_ROOT

      Used for instances of `DocRootTree` representing an @docRoot tag.

    - #### END_ELEMENT

          public static final DocTree.Kind END_ELEMENT

      Used for instances of `EndElementTree` representing the end of an HTML element.

    - #### ENTITY

          public static final DocTree.Kind ENTITY

      Used for instances of `EntityTree` representing an HTML entity.

    - #### ERRONEOUS

          public static final DocTree.Kind ERRONEOUS

      Used for instances of `ErroneousTree` representing some invalid text.

    - #### EXCEPTION

          public static final DocTree.Kind EXCEPTION

      Used for instances of `ThrowsTree` representing an @exception tag.

    - #### IDENTIFIER

          public static final DocTree.Kind IDENTIFIER

      Used for instances of `IdentifierTree` representing an identifier.

    - #### INHERIT_DOC

          public static final DocTree.Kind INHERIT_DOC

      Used for instances of `InheritDocTree` representing an @inheritDoc tag.

    - #### LINK

          public static final DocTree.Kind LINK

      Used for instances of `LinkTree` representing an @link tag.

    - #### LINK_PLAIN

          public static final DocTree.Kind LINK_PLAIN

      Used for instances of `LinkTree` representing an @linkplain tag.

    - #### LITERAL

          public static final DocTree.Kind LITERAL

      Used for instances of `LiteralTree` representing an @literal tag.

    - #### PARAM

          public static final DocTree.Kind PARAM

      Used for instances of `ParamTree` representing an @param tag.

    - #### REFERENCE

          public static final DocTree.Kind REFERENCE

      Used for instances of `ReferenceTree` representing a reference to a element in the Java programming language.

    - #### RETURN

          public static final DocTree.Kind RETURN

      Used for instances of `ReturnTree` representing an @return tag.

    - #### SEE

          public static final DocTree.Kind SEE

      Used for instances of `SeeTree` representing an @see tag.

    - #### SERIAL

          public static final DocTree.Kind SERIAL

      Used for instances of `SerialTree` representing an @serial tag.

    - #### SERIAL_DATA

          public static final DocTree.Kind SERIAL_DATA

      Used for instances of `SerialDataTree` representing an @serialData tag.

    - #### SERIAL_FIELD

          public static final DocTree.Kind SERIAL_FIELD

      Used for instances of `SerialFieldTree` representing an @serialField tag.

    - #### SINCE

          public static final DocTree.Kind SINCE

      Used for instances of `SinceTree` representing an @since tag.

    - #### START_ELEMENT

          public static final DocTree.Kind START_ELEMENT

      Used for instances of `EndElementTree` representing the start of an HTML element.

    - #### TEXT

          public static final DocTree.Kind TEXT

      Used for instances of `TextTree` representing some documentation text.

    - #### THROWS

          public static final DocTree.Kind THROWS

      Used for instances of `ThrowsTree` representing an @throws tag.

    - #### UNKNOWN_BLOCK_TAG

          public static final DocTree.Kind UNKNOWN_BLOCK_TAG

      Used for instances of `UnknownBlockTagTree` representing an unknown block tag.

    - #### UNKNOWN_INLINE_TAG

          public static final DocTree.Kind UNKNOWN_INLINE_TAG

      Used for instances of `UnknownInlineTagTree` representing an unknown inline tag.

    - #### VALUE

          public static final DocTree.Kind VALUE

      Used for instances of `ValueTree` representing an @value tag.

    - #### VERSION

          public static final DocTree.Kind VERSION

      Used for instances of `VersionTree` representing an @version tag.

    - #### OTHER

          public static final DocTree.Kind OTHER

      An implementation-reserved node. This is the not the node you are looking for.

  - ### Field Detail

    - #### tagName

          public final String tagName

  - ### Method Detail

    - #### values

          public static DocTree.Kind[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (DocTree.Kind c : DocTree.Kind.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static DocTree.Kind valueOf(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null

Copyright © 2005, 2026, Oracle and/or its affiliates. All rights reserved.