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_LITERAL, 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 ChildPropertyDescriptorReturns structural property descriptor for the "typeName" property of this node (child type:Name).booleanReturns whether this extended modifier is an annotation.booleanReturns whether this is a marker annotation (MarkerAnnotation).booleanReturns whether this extended modifier is a standard modifier.booleanReturns whether this is a normal annotation (NormalAnnotation).booleanReturns whether this is a single member annotationResolves and returns the resolved annotation for this annotation.voidsetTypeName(Name typeName) Sets the annotation type name of this annotation.Methods inherited from class org.eclipse.jdt.core.dom.Expression
resolveBoxing, resolveConstantExpressionValue, resolveTypeBinding, resolveUnboxingMethods 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:IExtendedModifierReturns whether this extended modifier is a standard modifier.- Specified by:
isModifierin interfaceIExtendedModifier- Returns:
trueif this is a standard modifier (instance ofModifier), andfalseotherwise- See Also:
-
isAnnotation
public boolean isAnnotation()Description copied from interface:IExtendedModifierReturns whether this extended modifier is an annotation.- Specified by:
isAnnotationin interfaceIExtendedModifier- Returns:
trueif this is an annotation (instance of a subclass ofAnnotation), andfalseotherwise- 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:
trueif this is a normal annotation, andfalseotherwise
-
isMarkerAnnotation
public boolean isMarkerAnnotation()Returns whether this is a marker annotation (MarkerAnnotation).- Returns:
trueif this is a marker annotation, andfalseotherwise
-
isSingleMemberAnnotation
public boolean isSingleMemberAnnotation()Returns whether this is a single member annotation. (SingleMemberAnnotation).- Returns:
trueif this is a single member annotation, andfalseotherwise
-
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
nullif the annotation cannot be resolved - Since:
- 3.2
-