Package org.codehaus.groovy.ast
Class AnnotationNode
java.lang.Object
org.codehaus.groovy.ast.ASTNode
org.codehaus.groovy.ast.AnnotationNode
- All Implemented Interfaces:
NodeMetaDataHandler
Represents an annotation which can be attached to interfaces, classes, methods, fields, parameters, and other places.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addMember
(String name, Expression value) getText()
boolean
Flag corresponding toRetentionPolicy.CLASS
.boolean
Flag corresponding toRetentionPolicy.RUNTIME
.boolean
Flag corresponding toRetentionPolicy.SOURCE
.boolean
boolean
isTargetAllowed
(int target) void
setAllowedTargets
(int bitmap) void
setClassRetention
(boolean flag) Sets the internal flag if the current annotation has an explicitRetentionPolicy.CLASS
.void
setMember
(String name, Expression value) void
setRuntimeRetention
(boolean flag) Sets the internal flag if the current annotation hasRetentionPolicy.SOURCE
.void
setSourceRetention
(boolean flag) Sets the internal flag if the current annotation hasRetentionPolicy.SOURCE
.static String
targetToName
(int target) toString()
Methods inherited from class org.codehaus.groovy.ast.ASTNode
copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getMetaDataMap, 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
-
CONSTRUCTOR_TARGET
public static final int CONSTRUCTOR_TARGET- See Also:
-
METHOD_TARGET
public static final int METHOD_TARGET- See Also:
-
FIELD_TARGET
public static final int FIELD_TARGET- See Also:
-
PARAMETER_TARGET
public static final int PARAMETER_TARGET- See Also:
-
LOCAL_VARIABLE_TARGET
public static final int LOCAL_VARIABLE_TARGET- See Also:
-
ANNOTATION_TARGET
public static final int ANNOTATION_TARGET- See Also:
-
PACKAGE_TARGET
public static final int PACKAGE_TARGET- See Also:
-
TYPE_PARAMETER_TARGET
public static final int TYPE_PARAMETER_TARGET- See Also:
-
TYPE_USE_TARGET
public static final int TYPE_USE_TARGET- See Also:
-
RECORD_COMPONENT_TARGET
public static final int RECORD_COMPONENT_TARGET- See Also:
-
TYPE_TARGET
public static final int TYPE_TARGET- See Also:
-
-
Constructor Details
-
AnnotationNode
-
-
Method Details
-
getClassNode
-
getMembers
-
getMember
-
addMember
-
setMember
-
isBuiltIn
public boolean isBuiltIn() -
hasRuntimeRetention
public boolean hasRuntimeRetention()Flag corresponding toRetentionPolicy.RUNTIME
.- Returns:
- true if the annotation should be visible at runtime, false otherwise
-
setRuntimeRetention
public void setRuntimeRetention(boolean flag) Sets the internal flag if the current annotation hasRetentionPolicy.SOURCE
.- Parameters:
flag
- if true then current annotation is marked as havingRetentionPolicy.RUNTIME
.
-
hasSourceRetention
public boolean hasSourceRetention()Flag corresponding toRetentionPolicy.SOURCE
.- Returns:
- true if the annotation is only allowed in sources false otherwise
-
setSourceRetention
public void setSourceRetention(boolean flag) Sets the internal flag if the current annotation hasRetentionPolicy.SOURCE
.- Parameters:
flag
- if true then current annotation is marked as havingRetentionPolicy.SOURCE
.
-
hasClassRetention
public boolean hasClassRetention()Flag corresponding toRetentionPolicy.CLASS
. This is the default when noRetentionPolicy
annotations are present.- Returns:
- true if the annotation is written in the bytecode, but not visible at runtime false otherwise
-
setClassRetention
public void setClassRetention(boolean flag) Sets the internal flag if the current annotation has an explicitRetentionPolicy.CLASS
.- Parameters:
flag
- if true then current annotation is marked as havingRetentionPolicy.CLASS
.
-
setAllowedTargets
public void setAllowedTargets(int bitmap) -
isTargetAllowed
public boolean isTargetAllowed(int target) -
targetToName
-
toString
-
getText
-