public final class TypeParameter extends Node implements SymbolDefinition
This class represents the declaration of a genetics argument.
The TypeParameter is constructed following the syntax:
TypeParameter
::=
<IDENTIFIER> ( "extends" ClassOrInterfaceType ( "&" ClassOrInterfaceType )* )?
| Constructor and Description |
|---|
TypeParameter() |
TypeParameter(int beginLine,
int beginColumn,
int endLine,
int endColumn,
String name,
List<ClassOrInterfaceType> typeBound) |
TypeParameter(int beginLine,
int beginColumn,
int endLine,
int endColumn,
String name,
List<ClassOrInterfaceType> typeBound,
List<AnnotationExpr> annotations) |
TypeParameter(String name,
List<ClassOrInterfaceType> typeBound) |
TypeParameter(String name,
List<ClassOrInterfaceType> typeBound,
List<AnnotationExpr> annotations) |
| Modifier and Type | Method and Description |
|---|---|
<R,A> R |
accept(GenericVisitor<R,A> v,
A arg)
Accept method for visitor support.
|
<A> void |
accept(VoidVisitor<A> v,
A arg)
Accept method for visitor support.
|
boolean |
addBodyReference(SymbolReference bodyReference)
Adds a symbol reference to this definition.
|
boolean |
addUsage(SymbolReference usage)
Adds a usage reference to this definition and updates the definition in
that reference.
|
TypeParameter |
clone() |
List<AnnotationExpr> |
getAnnotations() |
List<SymbolReference> |
getBodyReferences()
Returns the external references contained inside the body of this
definition.
|
List<Node> |
getChildren() |
Map<String,List<SymbolDefinition>> |
getMethodDefinitions()
Gets the available methods
|
String |
getName()
Return the name of the paramenter.
|
int |
getScopeLevel()
Returns the scope level where this definition is specified.
|
String |
getSymbolName()
Gets the symbol name
|
List<ClassOrInterfaceType> |
getTypeBound()
Return the list of
ClassOrInterfaceType that this parameter extends. |
Map<String,SymbolDefinition> |
getTypeDefinitions()
Gets the available variables
|
List<SymbolReference> |
getUsages()
Returns the references that represent usages to that definition.
|
Map<String,SymbolDefinition> |
getVariableDefinitions()
Gets the available variables
|
boolean |
removeChild(Node child) |
boolean |
replaceChildNode(Node oldChild,
Node newChild) |
void |
setAnnotations(List<AnnotationExpr> annotations) |
void |
setBodyReferences(List<SymbolReference> bodyReferences)
Sets the external references contained inside the body of this
definition.
|
void |
setName(String name)
Sets the name of this type parameter.
|
void |
setScopeLevel(int scopeLevel)
Sets the scope level where this definition is specified.
|
void |
setTypeBound(List<ClassOrInterfaceType> typeBound)
Sets the list o types.
|
void |
setUsages(List<SymbolReference> usages)
Sets the references that represent usages to that definition.
|
check, clone, clone, contains, diableConstraints, enableConstraints, equals, getBeginColumn, getBeginLine, getCommonAncestor, getConstraints, getData, getEndColumn, getEndLine, getParentNode, getPrettySource, getPrettySource, hashCode, isAncestorOf, isInEqualLocation, isNewNode, isPreviousThan, remove, replaceChildNodeInList, setAsParentNodeOf, setAsParentNodeOf, setBeginColumn, setBeginLine, setConstraints, setData, setEndColumn, setEndLine, toString, updateReferencespublic TypeParameter()
public TypeParameter(String name, List<ClassOrInterfaceType> typeBound)
public TypeParameter(String name, List<ClassOrInterfaceType> typeBound, List<AnnotationExpr> annotations)
public TypeParameter(int beginLine,
int beginColumn,
int endLine,
int endColumn,
String name,
List<ClassOrInterfaceType> typeBound)
public TypeParameter(int beginLine,
int beginColumn,
int endLine,
int endColumn,
String name,
List<ClassOrInterfaceType> typeBound,
List<AnnotationExpr> annotations)
public List<Node> getChildren()
getChildren in class Nodepublic <R,A> R accept(GenericVisitor<R,A> v, A arg)
Nodepublic <A> void accept(VoidVisitor<A> v, A arg)
Nodepublic String getName()
public List<ClassOrInterfaceType> getTypeBound()
ClassOrInterfaceType that this parameter extends. Return
null null if there are no type.nullpublic void setName(String name)
name - the name to setpublic void setTypeBound(List<ClassOrInterfaceType> typeBound)
typeBound - the typeBound to setpublic List<AnnotationExpr> getAnnotations()
public void setAnnotations(List<AnnotationExpr> annotations)
public List<SymbolReference> getUsages()
SymbolDefinitiongetUsages in interface SymbolDefinitionpublic void setUsages(List<SymbolReference> usages)
SymbolDefinitionsetUsages in interface SymbolDefinitionusages - references that represent usages to that definition.public boolean addUsage(SymbolReference usage)
SymbolDefinitionaddUsage in interface SymbolDefinitionusage - reference to this definition.public List<SymbolReference> getBodyReferences()
SymbolDefinitiongetBodyReferences in interface SymbolDefinitionpublic void setBodyReferences(List<SymbolReference> bodyReferences)
SymbolDefinitionsetBodyReferences in interface SymbolDefinitionbodyReferences - external references contained inside the body of this
definition.public boolean addBodyReference(SymbolReference bodyReference)
SymbolDefinitionaddBodyReference in interface SymbolDefinitionbodyReference - the reference to add.public int getScopeLevel()
SymbolDefinitiongetScopeLevel in interface SymbolDefinitionpublic void setScopeLevel(int scopeLevel)
SymbolDefinitionsetScopeLevel in interface SymbolDefinitionscopeLevel - the scope level where this definition is specified.public boolean replaceChildNode(Node oldChild, Node newChild)
replaceChildNode in class Nodepublic boolean removeChild(Node child)
removeChild in class Nodepublic TypeParameter clone() throws CloneNotSupportedException
clone in class NodeCloneNotSupportedExceptionpublic Map<String,SymbolDefinition> getVariableDefinitions()
ScopeAwaregetVariableDefinitions in interface ScopeAwarepublic Map<String,List<SymbolDefinition>> getMethodDefinitions()
ScopeAwaregetMethodDefinitions in interface ScopeAwarepublic Map<String,SymbolDefinition> getTypeDefinitions()
ScopeAwaregetTypeDefinitions in interface ScopeAwarepublic String getSymbolName()
SymbolDefinitiongetSymbolName in interface SymbolDefinitionCopyright © 2018. All rights reserved.