Package org.eclipse.jdt.core.dom
Class Annotation
java.lang.Object
org.eclipse.jdt.core.dom.ASTNode
org.eclipse.jdt.core.dom.Expression
org.eclipse.jdt.core.dom.Annotation
- All Implemented Interfaces:
IExtendedModifier
- Direct Known Subclasses:
MarkerAnnotation
,NormalAnnotation
,SingleMemberAnnotation
Abstract base class of AST nodes that represent annotations.
Annotation: NormalAnnotation MarkerAnnotation SingleMemberAnnotation
- Since:
- 3.1
-
Field Summary
Fields inherited from class org.eclipse.jdt.core.dom.ASTNode
ANNOTATION_TYPE_DECLARATION, ANNOTATION_TYPE_MEMBER_DECLARATION, ANONYMOUS_CLASS_DECLARATION, ARRAY_ACCESS, ARRAY_CREATION, ARRAY_INITIALIZER, ARRAY_TYPE, ASSERT_STATEMENT, ASSIGNMENT, BLOCK, BLOCK_COMMENT, BOOLEAN_LITERAL, BREAK_STATEMENT, CASE_DEFAULT_EXPRESSION, CAST_EXPRESSION, CATCH_CLAUSE, CHARACTER_LITERAL, CLASS_INSTANCE_CREATION, COMPILATION_UNIT, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, CREATION_REFERENCE, DIMENSION, DO_STATEMENT, EitherOr_MultiPattern, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPORTS_DIRECTIVE, EXPRESSION_METHOD_REFERENCE, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, GUARDED_PATTERN, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, INTERSECTION_TYPE, JAVADOC, JAVADOC_REGION, JAVADOC_TEXT_ELEMENT, LABELED_STATEMENT, LAMBDA_EXPRESSION, LINE_COMMENT, MALFORMED, MARKER_ANNOTATION, MEMBER_REF, MEMBER_VALUE_PAIR, METHOD_DECLARATION, METHOD_INVOCATION, METHOD_REF, METHOD_REF_PARAMETER, MODIFIER, MODULE_DECLARATION, MODULE_MODIFIER, MODULE_QUALIFIED_NAME, NAME_QUALIFIED_TYPE, NORMAL_ANNOTATION, NULL_LITERAL, NULL_PATTERN, NUMBER_LITERAL, OPENS_DIRECTIVE, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, PATTERN_INSTANCEOF_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, PROVIDES_DIRECTIVE, QUALIFIED_NAME, QUALIFIED_TYPE, RECORD_DECLARATION, RECORD_PATTERN, RECOVERED, REQUIRES_DIRECTIVE, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_MEMBER_ANNOTATION, SINGLE_VARIABLE_DECLARATION, STRING_FRAGMENT, STRING_LITERAL, STRING_TEMPLATE_COMPONENT, STRING_TEMPLATE_EXPRESSION, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SUPER_METHOD_REFERENCE, SWITCH_CASE, SWITCH_EXPRESSION, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, TAG_PROPERTY, TEXT_BLOCK, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_METHOD_REFERENCE, TYPE_PARAMETER, TYPE_PATTERN, UNION_TYPE, UNNAMED_CLASS, USES_DIRECTIVE, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE, YIELD_STATEMENT
-
Method Summary
Modifier and TypeMethodDescriptionReturns the annotation type name of this annotation.final ChildPropertyDescriptor
Returns structural property descriptor for the "typeName" property of this node (child type:Name
).boolean
Returns whether this extended modifier is an annotation.boolean
Returns whether this is a marker annotation (MarkerAnnotation
).boolean
Returns whether this extended modifier is a standard modifier.boolean
Returns whether this is a normal annotation (NormalAnnotation
).boolean
Returns whether this is a single member annotationResolves and returns the resolved annotation for this annotation.void
setTypeName
(Name typeName) Sets the annotation type name of this annotation.Methods inherited from class org.eclipse.jdt.core.dom.Expression
resolveBoxing, resolveConstantExpressionValue, resolveTypeBinding, resolveUnboxing
Methods inherited from class org.eclipse.jdt.core.dom.ASTNode
accept, copySubtree, copySubtrees, delete, equals, getAST, getFlags, getLength, getLocationInParent, getNodeType, getParent, getProperty, getRoot, getStartPosition, getStructuralProperty, hashCode, nodeClassForType, properties, setFlags, setProperty, setSourceRange, setStructuralProperty, structuralPropertiesForType, subtreeBytes, subtreeMatch, toString
-
Method Details
-
getTypeNameProperty
Returns structural property descriptor for the "typeName" property of this node (child type:Name
).- Returns:
- the property descriptor
-
isModifier
public boolean isModifier()Description copied from interface:IExtendedModifier
Returns whether this extended modifier is a standard modifier.- Specified by:
isModifier
in interfaceIExtendedModifier
- Returns:
true
if this is a standard modifier (instance ofModifier
), andfalse
otherwise- See Also:
-
isAnnotation
public boolean isAnnotation()Description copied from interface:IExtendedModifier
Returns whether this extended modifier is an annotation.- Specified by:
isAnnotation
in interfaceIExtendedModifier
- Returns:
true
if this is an annotation (instance of a subclass ofAnnotation
), andfalse
otherwise- See Also:
-
getTypeName
Returns the annotation type name of this annotation.- Returns:
- the annotation type name
-
setTypeName
Sets the annotation type name of this annotation.- Parameters:
typeName
- the annotation type name- Throws:
IllegalArgumentException
- if:- the node belongs to a different AST
- the node already has a parent
-
isNormalAnnotation
public boolean isNormalAnnotation()Returns whether this is a normal annotation (NormalAnnotation
).- Returns:
true
if this is a normal annotation, andfalse
otherwise
-
isMarkerAnnotation
public boolean isMarkerAnnotation()Returns whether this is a marker annotation (MarkerAnnotation
).- Returns:
true
if this is a marker annotation, andfalse
otherwise
-
isSingleMemberAnnotation
public boolean isSingleMemberAnnotation()Returns whether this is a single member annotation. (SingleMemberAnnotation
).- Returns:
true
if this is a single member annotation, andfalse
otherwise
-
resolveAnnotationBinding
Resolves and returns the resolved annotation for this annotation.Note that bindings (which includes resolved annotations) are generally unavailable unless requested when the AST is being built.
- Returns:
- the resolved annotation, or
null
if the annotation cannot be resolved - Since:
- 3.2
-