Package org.codehaus.groovy.groovydoc

# Interface GroovyClassDoc

All Superinterfaces:
  `Comparable<GroovyDoc>`, `GroovyDoc`, `GroovyProgramElementDoc`, `GroovyType`

All Known Implementing Classes:
  `ArrayClassDocWrapper`, `ExternalGroovyClassDoc`, `SimpleGroovyClassDoc`

public interface GroovyClassDoc extends GroovyType, GroovyProgramElementDoc
Describes a Groovy type together with the members and relationships needed to render its documentation.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `GroovyConstructorDoc[]`
  `constructors()`
  Returns the constructors declared by this type.
  `GroovyConstructorDoc[]`
  `constructors(boolean filter)`
  Returns the constructors declared by this type, optionally applying the active visibility filter.
  `boolean`
  `definesSerializableFields()`
  Indicates whether this type explicitly defines serializable fields metadata.
  `GroovyFieldDoc[]`
  `enumConstants()`
  Returns the enum constants declared by this type.
  `GroovyFieldDoc[]`
  `fields()`
  Returns the fields declared by this type.
  `GroovyFieldDoc[]`
  `fields(boolean filter)`
  Returns the fields declared by this type, optionally applying the active visibility filter.
  `GroovyClassDoc`
  `findClass(String className)`
  Resolves a referenced class name from the context of this type.
  `String`
  `getFullPathName()`
  Returns the documentation output path for this type.
  `String`
  `getRelativeRootPath()`
  Returns the relative path from this type to the documentation root.
  `GroovyClassDoc[]`
  `importedClasses()`
  Returns the explicitly imported classes visible to this type.
  `GroovyPackageDoc[]`
  `importedPackages()`
  Returns the imported packages visible to this type.
  `GroovyClassDoc[]`
  `innerClasses()`
  Returns the nested classes declared by this type.
  `GroovyClassDoc[]`
  `innerClasses(boolean filter)`
  Returns the nested classes declared by this type, optionally applying the active visibility filter.
  `GroovyClassDoc[]`
  `interfaces()`
  Returns the interfaces directly implemented or extended by this type.
  `GroovyType[]`
  `interfaceTypes()`
  Returns the interface types directly implemented or extended by this type.
  `boolean`
  `isAbstract()`
  Indicates whether this type is declared abstract.
  `boolean`
  `isExternalizable()`
  Indicates whether this type implements `Externalizable`.
  `boolean`
  `isSerializable()`
  Indicates whether this type implements `Serializable`.
  `GroovyMethodDoc[]`
  `methods()`
  Returns the methods declared by this type.
  `GroovyMethodDoc[]`
  `methods(boolean filter)`
  Returns the methods declared by this type, optionally applying the active visibility filter.
  `GroovyFieldDoc[]`
  `properties()`
  Returns the Groovy properties declared by this type.
  `GroovyFieldDoc[]`
  `serializableFields()`
  Returns the fields that participate in serialization.
  `GroovyMethodDoc[]`
  `serializationMethods()`
  Returns the methods related to custom serialization.
  `boolean`
  `subclassOf(GroovyClassDoc gcd)`
  Determines whether this type is a subclass of the supplied candidate.
  `GroovyClassDoc`
  `superclass()`
  Returns the direct superclass of this type.
  `GroovyType`
  `superclassType()`
  Returns the direct superclass as a type reference.

  ### Methods inherited from interface java.lang.Comparable

  `compareTo`

  ### Methods inherited from interface org.codehaus.groovy.groovydoc.GroovyDoc

  `commentText, firstSentenceCommentText, getRawCommentText, isAnnotationType, isAnnotationTypeElement, isClass, isConstructor, isDeprecated, isEnum, isEnumConstant, isError, isException, isField, isIncluded, isInterface, isMethod, isOrdinaryClass, isRecord, name, setRawCommentText`

  ### Methods inherited from interface org.codehaus.groovy.groovydoc.GroovyProgramElementDoc

  `annotations, containingClass, containingPackage, isFinal, isPackagePrivate, isPrivate, isProtected, isPublic, isStatic, modifiers, modifierSpecifier, qualifiedName`

  ### Methods inherited from interface org.codehaus.groovy.groovydoc.GroovyType

  `isPrimitive, qualifiedTypeName, simpleTypeName, toString, typeName`

- ## Method Details

  - ### constructors

    GroovyConstructorDoc[] constructors()
    Returns the constructors declared by this type.
    Returns:
      the declared constructors

  - ### constructors

    GroovyConstructorDoc[] constructors(boolean filter)
    Returns the constructors declared by this type, optionally applying the active visibility filter.
    Parameters:
      `filter` - `true` to include only visible constructors, `false` to include all constructors
    Returns:
      the matching constructors

  - ### definesSerializableFields

    boolean definesSerializableFields()
    Indicates whether this type explicitly defines serializable fields metadata.
    Returns:
      `true` if serializable fields are defined explicitly

  - ### enumConstants

    GroovyFieldDoc[] enumConstants()
    Returns the enum constants declared by this type.
    Returns:
      the declared enum constants

  - ### fields

    GroovyFieldDoc[] fields()
    Returns the fields declared by this type.
    Returns:
      the declared fields

  - ### properties

    GroovyFieldDoc[] properties()
    Returns the Groovy properties declared by this type.
    Returns:
      the declared properties

  - ### fields

    GroovyFieldDoc[] fields(boolean filter)
    Returns the fields declared by this type, optionally applying the active visibility filter.
    Parameters:
      `filter` - `true` to include only visible fields, `false` to include all fields
    Returns:
      the matching fields

  - ### findClass

    GroovyClassDoc findClass(String className)
    Resolves a referenced class name from the context of this type.
    Parameters:
      `className` - the class name to resolve
    Returns:
      the matching class documentation, or `null` if it cannot be resolved

  - ### importedClasses

    GroovyClassDoc[] importedClasses()
    Returns the explicitly imported classes visible to this type.
    Returns:
      the imported classes

  - ### importedPackages

    GroovyPackageDoc[] importedPackages()
    Returns the imported packages visible to this type.
    Returns:
      the imported packages

  - ### innerClasses

    GroovyClassDoc[] innerClasses()
    Returns the nested classes declared by this type.
    Returns:
      the nested classes

  - ### innerClasses

    GroovyClassDoc[] innerClasses(boolean filter)
    Returns the nested classes declared by this type, optionally applying the active visibility filter.
    Parameters:
      `filter` - `true` to include only visible nested classes, `false` to include all nested classes
    Returns:
      the matching nested classes

  - ### interfaces

    GroovyClassDoc[] interfaces()
    Returns the interfaces directly implemented or extended by this type.
    Returns:
      the direct interfaces

  - ### interfaceTypes

    GroovyType[] interfaceTypes()
    Returns the interface types directly implemented or extended by this type.
    Returns:
      the direct interface types

  - ### isAbstract

    boolean isAbstract()
    Indicates whether this type is declared abstract.
    Returns:
      `true` if this type is abstract

  - ### isExternalizable

    boolean isExternalizable()
    Indicates whether this type implements `Externalizable`.
    Returns:
      `true` if this type is externalizable

  - ### isSerializable

    boolean isSerializable()
    Indicates whether this type implements `Serializable`.
    Returns:
      `true` if this type is serializable

  - ### methods

    GroovyMethodDoc[] methods()
    Returns the methods declared by this type.
    Returns:
      the declared methods

  - ### methods

    GroovyMethodDoc[] methods(boolean filter)
    Returns the methods declared by this type, optionally applying the active visibility filter.
    Parameters:
      `filter` - `true` to include only visible methods, `false` to include all methods
    Returns:
      the matching methods

  - ### serializableFields

    GroovyFieldDoc[] serializableFields()
    Returns the fields that participate in serialization.
    Returns:
      the serializable fields

  - ### serializationMethods

    GroovyMethodDoc[] serializationMethods()
    Returns the methods related to custom serialization.
    Returns:
      the serialization methods

  - ### subclassOf

    boolean subclassOf(GroovyClassDoc gcd)
    Determines whether this type is a subclass of the supplied candidate.
    Parameters:
      `gcd` - the candidate superclass
    Returns:
      `true` if this type is a subclass of `gcd`

  - ### superclass

    GroovyClassDoc superclass()
    Returns the direct superclass of this type.
    Returns:
      the direct superclass, or `null` if none exists

  - ### superclassType

    GroovyType superclassType()
    Returns the direct superclass as a type reference.
    Returns:
      the direct superclass type, or `null` if none exists

  - ### getFullPathName

    String getFullPathName()
    Returns the documentation output path for this type.
    Returns:
      the full path used when rendering this type

  - ### getRelativeRootPath

    String getRelativeRootPath()
    Returns the relative path from this type to the documentation root.
    Returns:
      the relative path to the documentation root