Package org.codehaus.groovy.ast

# Class GenericsType

java.lang.Object
org.codehaus.groovy.ast.ASTNode
org.codehaus.groovy.ast.GenericsType

All Implemented Interfaces:
  `NodeMetaDataHandler`

public class GenericsType extends ASTNode
This class is used to describe generic type signatures for ClassNodes.

See Also:
  - `ClassNode`

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `GenericsType.GenericsTypeName`
  Represents `GenericsType` name.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final GenericsType[]`
  `EMPTY_ARRAY`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `GenericsType(ClassNode basicType)`
  `GenericsType(ClassNode type, ClassNode[] upperBounds, ClassNode lowerBound)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ClassNode`
  `getLowerBound()`
  `String`
  `getName()`
  `ClassNode`
  `getType()`
  `ClassNode[]`
  `getUpperBounds()`
  `boolean`
  `isCompatibleWith(ClassNode classNode)`
  Determines if the provided type is compatible with this specification.
  `boolean`
  `isPlaceholder()`
  `boolean`
  `isResolved()`
  `boolean`
  `isWildcard()`
  `void`
  `setName(String name)`
  `void`
  `setPlaceholder(boolean placeholder)`
  `void`
  `setResolved(boolean resolved)`
  `void`
  `setType(ClassNode type)`
  `void`
  `setWildcard(boolean wildcard)`
  `String`
  `toString()`

  ### Methods inherited from class org.codehaus.groovy.ast.ASTNode

  `copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getMetaDataMap, getText, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setMetaDataMap, setSourcePosition, visit`

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

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface org.codehaus.groovy.ast.NodeMetaDataHandler

  `copyNodeMetaData, getNodeMetaData, getNodeMetaData, getNodeMetaData, putNodeMetaData, removeNodeMetaData, setNodeMetaData`

- ## Field Details

  - ### EMPTY_ARRAY

    public static final GenericsType[] EMPTY_ARRAY

- ## Constructor Details

  - ### GenericsType

    public GenericsType(ClassNode type, ClassNode[] upperBounds, ClassNode lowerBound)

  - ### GenericsType

    public GenericsType(ClassNode basicType)

- ## Method Details

  - ### getType

    public ClassNode getType()

  - ### setType

    public void setType(ClassNode type)

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`

  - ### getName

    public String getName()

  - ### setName

    public void setName(String name)

  - ### isResolved

    public boolean isResolved()

  - ### setResolved

    public void setResolved(boolean resolved)

  - ### isPlaceholder

    public boolean isPlaceholder()

  - ### setPlaceholder

    public void setPlaceholder(boolean placeholder)

  - ### isWildcard

    public boolean isWildcard()

  - ### setWildcard

    public void setWildcard(boolean wildcard)

  - ### getLowerBound

    public ClassNode getLowerBound()

  - ### getUpperBounds

    public ClassNode[] getUpperBounds()

  - ### isCompatibleWith

    public boolean isCompatibleWith(ClassNode classNode)
    Determines if the provided type is compatible with this specification. The check is complete, meaning that nested generics are also checked.