# Enum Class DocTree.Kind

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

All Implemented Interfaces:
  `Serializable`, `Comparable<DocTree.Kind>`, `Constable`

Enclosing interface:
  `DocTree`

public static enum DocTree.Kind extends Enum<DocTree.Kind>
Enumerates all kinds of trees.

Since:
  1.8

- ## Nested Class Summary

  ### Nested classes/interfaces declared in class java.lang.Enum

  `Enum.EnumDesc<E extends Enum<E>>`

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `ATTRIBUTE`
  Used for instances of `AttributeTree` representing an attribute in an HTML element or tag.
  `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.
  `DOC_TYPE`
  Used for instances of `DocTypeTree` representing an HTML DocType declaration.
  `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.
  `ESCAPE`
  Used for instances of `EscapeTree` representing some escaped documentation text.
  `EXCEPTION`
  Used for instances of `ThrowsTree` representing an `@exception` tag.
  `HIDDEN`
  Used for instances of `HiddenTree` representing an `@hidden` tag.
  `IDENTIFIER`
  Used for instances of `IdentifierTree` representing an identifier.
  `INDEX`
  Used for instances of `IndexTree` representing an `@index` tag.
  `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.
  `MARKDOWN`
  Used for instances of `RawTextTree` representing a fragment of Markdown content.
  `OTHER`
  An implementation-reserved node.
  `PARAM`
  Used for instances of `ParamTree` representing an `@param` tag.
  `PROVIDES`
  Used for instances of `ProvidesTree` representing an `@provides` tag.
  `REFERENCE`
  Used for instances of `ReferenceTree` representing a reference to an 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.
  `SNIPPET`
  Used for instances of `SnippetTree` representing an `@snippet` tag.
  `SPEC`
  Used for instances of `SpecTree` representing an `@spec` tag.
  `START_ELEMENT`
  Used for instances of `StartElementTree` representing the start of an HTML element.
  `SUMMARY`
  Used for instances of `SummaryTree` representing an `@summary` tag.
  `SYSTEM_PROPERTY`
  Used for instances of `SystemPropertyTree` representing an `@systemProperty` tag.
  `TEXT`
  Used for instances of `TextTree` representing some plain 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.
  `USES`
  Used for instances of `UsesTree` representing an `@uses` 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
  Description
  `final String`
  `tagName`
  The name of the tag, if any, associated with this kind of node.

- ## Method Summary

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

  ### Methods declared in class java.lang.Enum

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

  ### Methods declared in class java.lang.Object

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

- ## Enum Constant Details

  - ### ATTRIBUTE

    public static final DocTree.Kind ATTRIBUTE
    Used for instances of `AttributeTree` representing an attribute in an HTML element or tag.

  - ### 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.

  - ### DOC_TYPE

    public static final DocTree.Kind DOC_TYPE
    Used for instances of `DocTypeTree` representing an HTML DocType declaration.
    Since:
      10

  - ### 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.

  - ### ESCAPE

    public static final DocTree.Kind ESCAPE
    Used for instances of `EscapeTree` representing some escaped documentation text.
    Since:
      21

  - ### EXCEPTION

    public static final DocTree.Kind EXCEPTION
    Used for instances of `ThrowsTree` representing an `@exception` tag.

  - ### HIDDEN

    public static final DocTree.Kind HIDDEN
    Used for instances of `HiddenTree` representing an `@hidden` tag.

  - ### IDENTIFIER

    public static final DocTree.Kind IDENTIFIER
    Used for instances of `IdentifierTree` representing an identifier.

  - ### INDEX

    public static final DocTree.Kind INDEX
    Used for instances of `IndexTree` representing an `@index` tag.
    Since:
      9

  - ### 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.

  - ### MARKDOWN

    public static final DocTree.Kind MARKDOWN
    Used for instances of `RawTextTree` representing a fragment of Markdown content.
    Since:
      23

  - ### PARAM

    public static final DocTree.Kind PARAM
    Used for instances of `ParamTree` representing an `@param` tag.

  - ### PROVIDES

    public static final DocTree.Kind PROVIDES
    Used for instances of `ProvidesTree` representing an `@provides` tag.
    Since:
      9

  - ### REFERENCE

    public static final DocTree.Kind REFERENCE
    Used for instances of `ReferenceTree` representing a reference to an 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.

  - ### SNIPPET

    public static final DocTree.Kind SNIPPET
    Used for instances of `SnippetTree` representing an `@snippet` tag.
    Since:
      18

  - ### SPEC

    public static final DocTree.Kind SPEC
    Used for instances of `SpecTree` representing an `@spec` tag.
    Since:
      20

  - ### START_ELEMENT

    public static final DocTree.Kind START_ELEMENT
    Used for instances of `StartElementTree` representing the start of an HTML element.

  - ### SYSTEM_PROPERTY

    public static final DocTree.Kind SYSTEM_PROPERTY
    Used for instances of `SystemPropertyTree` representing an `@systemProperty` tag.
    Since:
      12

  - ### SUMMARY

    public static final DocTree.Kind SUMMARY
    Used for instances of `SummaryTree` representing an `@summary` tag.
    Since:
      10

  - ### TEXT

    public static final DocTree.Kind TEXT
    Used for instances of `TextTree` representing some plain 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.

  - ### USES

    public static final DocTree.Kind USES
    Used for instances of `UsesTree` representing an `@uses` tag.
    Since:
      9

  - ### 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 not the node you are looking for.

- ## Field Details

  - ### tagName

    public final String tagName
    The name of the tag, if any, associated with this kind of node.

- ## Method Details

  - ### values

    public static DocTree.Kind[] values()
    Returns an array containing the constants of this enum class, in the order they are declared.
    Returns:
      an array containing the constants of this enum class, in the order they are declared

  - ### valueOf

    public static DocTree.Kind valueOf(String name)
    Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (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 class has no constant with the specified name
      `NullPointerException` - if the argument is null