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 classGenericsType.GenericsTypeNameRepresents GenericsType name TODO In order to distinguish GenericsType with same name(See GROOVY-8409), we should add a property to keep the declaring class. -
Field Summary
Fields Modifier and Type Field Description static 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 ClassNodegetLowerBound()StringgetName()ClassNodegetType()ClassNode[]getUpperBounds()booleanisCompatibleWith(ClassNode classNode)Compares this generics type with the provided class node.booleanisPlaceholder()booleanisResolved()booleanisWildcard()voidsetName(String name)voidsetPlaceholder(boolean placeholder)voidsetResolved(boolean resolved)voidsetType(ClassNode type)voidsetWildcard(boolean wildcard)StringtoString()Methods inherited from class org.codehaus.groovy.ast.ASTNode
copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getMetaDataMap, getText, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setMetaDataMap, setSourcePosition, visitMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.codehaus.groovy.ast.NodeMetaDataHandler
copyNodeMetaData, getNodeMetaData, getNodeMetaData, getNodeMetaData, putNodeMetaData, removeNodeMetaData, setNodeMetaData
-
Field Details
-
Constructor Details
-
Method Details
-
getType
-
setType
-
toString
-
getName
-
setName
-
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
-
getUpperBounds
-
isCompatibleWith
Compares this generics type with the provided class node. If the provided class node is compatible with the generics specification, returns true. Otherwise, returns false. The check is complete, meaning that nested generics are also checked.- Returns:
- if
classNodeis or is not compatible with this generics specification
-