Module jdk.javadoc
Package com.sun.javadoc

## Interface Doc

All Superinterfaces:
  Comparable<Object>

All Known Subinterfaces:
  AnnotationTypeDoc, AnnotationTypeElementDoc, ClassDoc, ConstructorDoc, ExecutableMemberDoc, FieldDoc, MemberDoc, MethodDoc, PackageDoc, ProgramElementDoc, RootDoc

    public interface Doc
    extends Comparable<Object>

Represents Java language constructs (package, class, constructor, method, field) which have comments and have been processed by this run of javadoc. All Doc objects are unique, that is, they are == comparable.

Since:
  1.2

### Method Summary

All Methods Instance Methods Abstract Methods
`String` `commentText()` Return the text of the comment for this doc item.
`int` `compareTo(Object obj)` Compares this doc object with the specified object for order.
`Tag[]` `firstSentenceTags()` Return the first sentence of the comment as an array of tags.
`String` `getRawCommentText()` Return the full unprocessed text of the comment.
`Tag[]` `inlineTags()` Return comment as an array of tags.
`boolean` `isAnnotationType()` Is this Doc item an annotation type?
`boolean` `isAnnotationTypeElement()` Is this Doc item an annotation type element?
`boolean` `isClass()` Is this Doc item a class (and not an interface or annotation type)?
`boolean` `isConstructor()` Is this Doc item a constructor?
`boolean` `isEnum()` Is this Doc item an enum type?
`boolean` `isEnumConstant()` Is this Doc item an enum constant?
`boolean` `isError()` Is this Doc item an error class?
`boolean` `isException()` Is this Doc item an exception class?
`boolean` `isField()` Is this Doc item a field (but not an enum constant)?
`boolean` `isIncluded()` Return true if this Doc item is included in the result set.
`boolean` `isInterface()` Is this Doc item an interface (but not an annotation type)?
`boolean` `isMethod()` Is this Doc item a method (but not a constructor or annotation type element)?
`boolean` `isOrdinaryClass()` Is this Doc item an ordinary class?
`String` `name()` Returns the non-qualified name of this Doc item.
`SourcePosition` `position()` Return the source position of the first line of the corresponding declaration, or null if no position is available.
`SeeTag[]` `seeTags()` Return the see also tags in this Doc item.
`void` `setRawCommentText(String rawDocumentation)` Set the full unprocessed text of the comment.
`Tag[]` `tags()` Return all tags in this Doc item.
`Tag[]` `tags(String tagname)` Return tags of the specified kind in this Doc item.

### Method Detail

#### commentText

    String commentText()

Return the text of the comment for this doc item. Tags have been removed.

Returns:
  the text of the comment for this doc item.

#### tags

    Tag[] tags()

Return all tags in this Doc item.

Returns:
  an array of `Tag` objects containing all tags on this Doc item.

#### tags

    Tag[] tags(String tagname)

Return tags of the specified kind in this Doc item. For example, if 'tagname' has value "@serial", all tags in this Doc item of kind "@serial" will be returned.

Parameters:
  `tagname` - name of the tag kind to search for.
Returns:
  an array of Tag containing all tags whose 'kind()' matches 'tagname'.

#### seeTags

    SeeTag[] seeTags()

Return the see also tags in this Doc item.

Returns:
  an array of SeeTag containing all @see tags.

#### inlineTags

    Tag[] inlineTags()

Return comment as an array of tags. Includes inline tags (i.e. {@link reference} tags) but not block tags. Each section of plain text is represented as a `Tag` of kind "Text". Inline tags are represented as a `SeeTag` of kind "@see" and name "@link".

Returns:
  an array of `Tag`s representing the comment

#### firstSentenceTags

    Tag[] firstSentenceTags()

Return the first sentence of the comment as an array of tags. Includes inline tags (i.e. {@link reference} tags) but not block tags. Each section of plain text is represented as a `Tag` of kind "Text". Inline tags are represented as a `SeeTag` of kind "@see" and name "@link".

If the locale is English language, the first sentence is determined by the rules described in the Java Language Specification (first version): "This sentence ends at the first period that is followed by a blank, tab, or line terminator or at the first tagline.", in addition a line will be terminated by block HTML tags: <p> </p> <h1> <h2> <h3> <h4> <h5> <h6> <hr> <pre> or </pre>. If the locale is not English, the sentence end will be determined by `BreakIterator.getSentenceInstance(Locale)`.

Returns:
  an array of `Tag`s representing the first sentence of the comment

#### getRawCommentText

    String getRawCommentText()

Return the full unprocessed text of the comment. Tags are included as text. Used mainly for store and retrieve operations like internalization.

Returns:
  the full unprocessed text of the comment.

#### setRawCommentText

    void setRawCommentText(String rawDocumentation)

Set the full unprocessed text of the comment. Tags are included as text. Used mainly for store and retrieve operations like internalization.

Parameters:
  `rawDocumentation` - A String containing the full unprocessed text of the comment.

#### name

    String name()

Returns the non-qualified name of this Doc item.

Returns:
  the name

#### compareTo

    int compareTo(Object obj)

Compares this doc object with the specified object for order. Returns a negative integer, zero, or a positive integer as this doc object is less than, equal to, or greater than the given object.

This method satisfies the `Comparable` interface.

Specified by:
  `compareTo` in interface `Comparable<Object>`
Parameters:
  `obj` - the `Object` to be compared.
Returns:
  a negative integer, zero, or a positive integer as this Object is less than, equal to, or greater than the given Object.
Throws:
  `ClassCastException` - the specified Object's type prevents it from being compared to this Object.

#### isField

    boolean isField()

Is this Doc item a field (but not an enum constant)?

Returns:
  true if it represents a field

#### isEnumConstant

    boolean isEnumConstant()

Is this Doc item an enum constant?

Returns:
  true if it represents an enum constant
Since:
  1.5

#### isConstructor

    boolean isConstructor()

Is this Doc item a constructor?

Returns:
  true if it represents a constructor

#### isMethod

    boolean isMethod()

Is this Doc item a method (but not a constructor or annotation type element)?

Returns:
  true if it represents a method

#### isAnnotationTypeElement

    boolean isAnnotationTypeElement()

Is this Doc item an annotation type element?

Returns:
  true if it represents an annotation type element
Since:
  1.5

#### isInterface

    boolean isInterface()

Is this Doc item an interface (but not an annotation type)?

Returns:
  true if it represents an interface

#### isException

    boolean isException()

Is this Doc item an exception class?

Returns:
  true if it represents an exception

#### isError

    boolean isError()

Is this Doc item an error class?

Returns:
  true if it represents a error

#### isEnum

    boolean isEnum()

Is this Doc item an enum type?

Returns:
  true if it represents an enum type
Since:
  1.5

#### isAnnotationType

    boolean isAnnotationType()

Is this Doc item an annotation type?

Returns:
  true if it represents an annotation type
Since:
  1.5

#### isOrdinaryClass

    boolean isOrdinaryClass()

Is this Doc item an ordinary class? (i.e. not an interface, annotation type, enum, exception, or error)?

Returns:
  true if it represents an ordinary class

#### isClass

    boolean isClass()

Is this Doc item a class (and not an interface or annotation type)? This includes ordinary classes, enums, errors and exceptions.

Returns:
  true if it represents a class

#### isIncluded

    boolean isIncluded()

Return true if this Doc item is included in the result set.

Returns:
  true if this Doc item is included in the result set.

#### position

    SourcePosition position()

Return the source position of the first line of the corresponding declaration, or null if no position is available. A default constructor returns null because it has no location in the source file.

Returns:
  the source positino of the first line of the corresponding declaration, or null if no position is available. A default constructor returns null because it has no location in the source file.
Since:
  1.4