Package org.codehaus.groovy.ast
Class AnnotationNode
java.lang.Object
org.codehaus.groovy.ast.ASTNode
org.codehaus.groovy.ast.AnnotationNode
- All Implemented Interfaces:
NodeMetaDataHandler
public class AnnotationNode extends ASTNode
Represents an annotation which can be attached to interfaces, classes, methods, fields, parameters, and other places.
-
Field Summary
Fields Modifier and Type Field Description static intANNOTATION_TARGETstatic intCONSTRUCTOR_TARGETstatic intFIELD_TARGETstatic intLOCAL_VARIABLE_TARGETstatic intMETHOD_TARGETstatic intPACKAGE_TARGETstatic intPARAMETER_TARGETstatic intTYPE_PARAMETER_TARGETstatic intTYPE_TARGETstatic intTYPE_USE_TARGET -
Constructor Summary
Constructors Constructor Description AnnotationNode(ClassNode classNode) -
Method Summary
Modifier and Type Method Description voidaddMember(java.lang.String name, Expression value)ClassNodegetClassNode()ExpressiongetMember(java.lang.String name)java.util.Map<java.lang.String,Expression>getMembers()java.lang.StringgetText()booleanhasClassRetention()Flag corresponding toRetentionPolicy.CLASS.booleanhasRuntimeRetention()Flag corresponding toRetentionPolicy.RUNTIME.booleanhasSourceRetention()Flag corresponding toRetentionPolicy.SOURCE.booleanisBuiltIn()booleanisTargetAllowed(int target)voidsetAllowedTargets(int bitmap)voidsetClassRetention(boolean flag)Sets the internal flag if the current annotation has an explicitRetentionPolicy.CLASS.voidsetMember(java.lang.String name, Expression value)voidsetRuntimeRetention(boolean flag)Sets the internal flag if the current annotation hasRetentionPolicy.SOURCE.voidsetSourceRetention(boolean flag)Sets the internal flag if the current annotation hasRetentionPolicy.SOURCE.static java.lang.StringtargetToName(int target)java.lang.StringtoString()Methods inherited from class org.codehaus.groovy.ast.ASTNode
copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getMetaDataMap, 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_TARGET
public static final int CONSTRUCTOR_TARGET- See Also:
- Constant Field Values
-
METHOD_TARGET
public static final int METHOD_TARGET- See Also:
- Constant Field Values
-
FIELD_TARGET
public static final int FIELD_TARGET- See Also:
- Constant Field Values
-
PARAMETER_TARGET
public static final int PARAMETER_TARGET- See Also:
- Constant Field Values
-
LOCAL_VARIABLE_TARGET
public static final int LOCAL_VARIABLE_TARGET- See Also:
- Constant Field Values
-
ANNOTATION_TARGET
public static final int ANNOTATION_TARGET- See Also:
- Constant Field Values
-
PACKAGE_TARGET
public static final int PACKAGE_TARGET- See Also:
- Constant Field Values
-
TYPE_PARAMETER_TARGET
public static final int TYPE_PARAMETER_TARGET- See Also:
- Constant Field Values
-
TYPE_USE_TARGET
public static final int TYPE_USE_TARGET- See Also:
- Constant Field Values
-
TYPE_TARGET
public static final int TYPE_TARGET- See Also:
- Constant Field Values
-
-
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 noRetentionPolicyannotations 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
public static java.lang.String targetToName(int target) -
toString
public java.lang.String toString()- Overrides:
toStringin classjava.lang.Object
-
getText
public java.lang.String getText()
-