Enum JavadocTagInfo

java.lang.Object
java.lang.Enum<JavadocTagInfo>
com.puppycrawl.tools.checkstyle.checks.javadoc.JavadocTagInfo
All Implemented Interfaces:
Serializable, Comparable<JavadocTagInfo>, Constable

public enum JavadocTagInfo extends Enum<JavadocTagInfo>
This enum defines the various Javadoc tags and there properties.

This class was modeled after documentation located at javadoc and how to write.

Some of this documentation was a little incomplete (ex: valid placement of code, value, and literal tags).

Whenever an inconsistency was found the author's judgment was used.

For now, the number of required/optional tag arguments are not included because some Javadoc tags have very complex rules for determining this (ex: {@value} tag).

Also, the isValidOn method does not consider classes defined in a local code block (method, init block, etc.).

  • Enum Constant Details

  • Method Details

    • values

      public static JavadocTagInfo[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static JavadocTagInfo 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
    • isValidOn

      public abstract boolean isValidOn(DetailAST ast)
      Checks if a particular Javadoc tag is valid within a Javadoc block of a given AST.

      If passing in a DetailAST representing a non-void METHOD_DEF true would be returned. If passing in a DetailAST representing a CLASS_DEF false would be returned because CLASS_DEF's cannot return a value.

      Parameters:
      ast - the AST representing a type that can be Javadoc'd
      Returns:
      true if tag is valid.
    • getText

      public String getText()
      Gets the tag text.
      Returns:
      the tag text
    • getName

      public String getName()
      Gets the tag name.
      Returns:
      the tag name
    • getType

      public JavadocTagInfo.Type getType()
      Gets the Tag type defined by Type.
      Returns:
      the Tag type
    • fromText

      public static JavadocTagInfo fromText(String text)
      Returns a JavadocTag from the tag text.
      Parameters:
      text - String representing the tag text
      Returns:
      Returns a JavadocTag type from a String representing the tag
      Throws:
      NullPointerException - if the text is null
      IllegalArgumentException - if the text is not a valid tag
    • fromName

      public static JavadocTagInfo fromName(String name)
      Returns a JavadocTag from the tag name.
      Parameters:
      name - String name of the tag
      Returns:
      Returns a JavadocTag type from a String representing the tag
      Throws:
      NullPointerException - if the text is null
      IllegalArgumentException - if the text is not a valid tag. The name can be checked using isValidName(String)
    • isValidName

      public static boolean isValidName(String name)
      Returns whether the provided name is for a valid tag.
      Parameters:
      name - the tag name to check.
      Returns:
      whether the provided name is for a valid tag.
    • toString

      public String toString()
      Overrides:
      toString in class Enum<JavadocTagInfo>