[Java] Class GenericsType
- org.codehaus.groovy.ast.GenericsType
public class GenericsType extends ASTNode
This class is used to describe generic type signatures for ClassNodes.
- See Also:
- ClassNode
Nested Class Summary
Modifiers | Name | Description |
---|---|---|
static class | GenericsType.GenericsTypeName | Represents 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
Modifiers | Name | Description |
---|---|---|
static GenericsType[] | EMPTY_ARRAY |
Constructor Summary
Constructor and description |
---|
GenericsType
(ClassNode type, ClassNode[] upperBounds, ClassNode lowerBound) |
GenericsType
(ClassNode basicType) |
Methods Summary
Type Params | Return Type | Name and description |
---|---|---|
public ClassNode |
getLowerBound() | |
public String |
getName() | |
public ClassNode |
getType() | |
public ClassNode[] |
getUpperBounds() | |
public boolean |
isCompatibleWith(ClassNode classNode) Compares this generics type with the provided class node. | |
public boolean |
isPlaceholder() | |
public boolean |
isResolved() | |
public boolean |
isWildcard() | |
public void |
setName(String name) | |
public void |
setPlaceholder(boolean placeholder) | |
public void |
setResolved(boolean resolved) | |
public void |
setType(ClassNode type) | |
public void |
setWildcard(boolean wildcard) | |
public String |
toString() |
Inherited Methods Summary
Methods inherited from class | Name |
---|---|
class ASTNode | copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getMetaDataMap, getText, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setMetaDataMap, setSourcePosition, visit |
Field Detail
public static final GenericsType[] EMPTY_ARRAY
Constructor Detail
public GenericsType(ClassNode type, ClassNode[] upperBounds, ClassNode lowerBound)
public GenericsType(ClassNode basicType)
Method Detail
public ClassNode getLowerBound()
public String getName()
public ClassNode getType()
public ClassNode[] getUpperBounds()
public boolean isCompatibleWith(ClassNode classNode)
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
classNode
is or is not compatible with this generics specification
public boolean isPlaceholder()
public boolean isResolved()
public boolean isWildcard()
public void setName(String name)
public void setPlaceholder(boolean placeholder)
public void setResolved(boolean resolved)
public void setType(ClassNode type)
public void setWildcard(boolean wildcard)
public String toString()
© 2003-2020 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/3.0.7/html/gapi/org/codehaus/groovy/ast/GenericsType.html