Package org.eclipse.jdt.core.dom
Class AnnotationTypeMemberDeclaration
- java.lang.Object
-
- org.eclipse.jdt.core.dom.ASTNode
-
- org.eclipse.jdt.core.dom.BodyDeclaration
-
- org.eclipse.jdt.core.dom.AnnotationTypeMemberDeclaration
-
public class AnnotationTypeMemberDeclaration extends BodyDeclaration
Annotation type member declaration AST node type (added in JLS3 API).AnnotationTypeMemberDeclaration: [ Javadoc ] { ExtendedModifier } Type Identifier ( ) [ default Expression ] ;
Note that annotation type member declarations are only meaningful as elements of
AbstractTypeDeclaration.bodyDeclarations()
.When a Javadoc comment is present, the source range begins with the first character of the "/**" comment delimiter. When there is no Javadoc comment, the source range begins with the first character of the first modifier keyword (if modifiers), or the first character of the member type (no modifiers). The source range extends through the last character of the ";" token.
- Since:
- 3.1
- Restriction:
- This class is not intended to be instantiated by clients.
-
-
Field Summary
Fields Modifier and Type Field Description static ChildPropertyDescriptor
DEFAULT_PROPERTY
The "default" structural property of this node type (child type:Expression
).static ChildPropertyDescriptor
JAVADOC_PROPERTY
The "javadoc" structural property of this node type (child type:Javadoc
).static ChildListPropertyDescriptor
MODIFIERS2_PROPERTY
The "modifiers" structural property of this node type (element type:IExtendedModifier
).static ChildPropertyDescriptor
NAME_PROPERTY
The "name" structural property of this node type (child type:SimpleName
).static ChildPropertyDescriptor
TYPE_PROPERTY
The "type" structural property of this node type (child type:Type
).-
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, CAST_EXPRESSION, CATCH_CLAUSE, CHARACTER_LITERAL, CLASS_INSTANCE_CREATION, COMPILATION_UNIT, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, CREATION_REFERENCE, DIMENSION, DO_STATEMENT, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPORTS_DIRECTIVE, EXPRESSION_METHOD_REFERENCE, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, INTERSECTION_TYPE, JAVADOC, 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, NAME_QUALIFIED_TYPE, NORMAL_ANNOTATION, NULL_LITERAL, NUMBER_LITERAL, OPENS_DIRECTIVE, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, PROVIDES_DIRECTIVE, QUALIFIED_NAME, QUALIFIED_TYPE, RECORD_DECLARATION, 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, TEXT_BLOCK, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_METHOD_REFERENCE, TYPE_PARAMETER, UNION_TYPE, USES_DIRECTIVE, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE, YIELD_STATEMENT
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Expression
getDefault()
Returns the default value of this annotation type member, ornull
if there is none.SimpleName
getName()
Returns the name of the annotation type member declared in this declaration.Type
getType()
Returns the type of the annotation type member declared in this declaration.static List
propertyDescriptors(int apiLevel)
Returns a list of structural property descriptors for this node type.IMethodBinding
resolveBinding()
Resolves and returns the binding for the annotation type member declared in this declaration.void
setDefault(Expression defaultValue)
Sets or clears the default value of this annotation type member.void
setName(SimpleName memberName)
Sets the name of the annotation type member declared in this declaration to the given name.void
setType(Type type)
Sets the type of the annotation type member declared in this declaration to the given type.-
Methods inherited from class org.eclipse.jdt.core.dom.BodyDeclaration
getJavadoc, getJavadocProperty, getModifiers, getModifiersProperty, modifiers, setJavadoc, setModifiers
-
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
-
-
-
-
Field Detail
-
JAVADOC_PROPERTY
public static final ChildPropertyDescriptor JAVADOC_PROPERTY
The "javadoc" structural property of this node type (child type:Javadoc
).
-
MODIFIERS2_PROPERTY
public static final ChildListPropertyDescriptor MODIFIERS2_PROPERTY
The "modifiers" structural property of this node type (element type:IExtendedModifier
).
-
TYPE_PROPERTY
public static final ChildPropertyDescriptor TYPE_PROPERTY
The "type" structural property of this node type (child type:Type
).
-
NAME_PROPERTY
public static final ChildPropertyDescriptor NAME_PROPERTY
The "name" structural property of this node type (child type:SimpleName
).
-
DEFAULT_PROPERTY
public static final ChildPropertyDescriptor DEFAULT_PROPERTY
The "default" structural property of this node type (child type:Expression
).
-
-
Method Detail
-
propertyDescriptors
public static List propertyDescriptors(int apiLevel)
Returns a list of structural property descriptors for this node type. Clients must not modify the result.- Parameters:
apiLevel
- the API level; one of theAST.JLS*
constants- Returns:
- a list of property descriptors (element type:
StructuralPropertyDescriptor
)
-
getType
public Type getType()
Returns the type of the annotation type member declared in this declaration.- Returns:
- the type of the member
-
setType
public void setType(Type type)
Sets the type of the annotation type member declared in this declaration to the given type.- Parameters:
type
- the new member type- Throws:
IllegalArgumentException
- if:- the node belongs to a different AST
- the node already has a parent
-
getName
public SimpleName getName()
Returns the name of the annotation type member declared in this declaration.- Returns:
- the member name node
-
setName
public void setName(SimpleName memberName)
Sets the name of the annotation type member declared in this declaration to the given name.- Parameters:
memberName
- the new member name- Throws:
IllegalArgumentException
- if:- the node belongs to a different AST
- the node already has a parent
-
getDefault
public Expression getDefault()
Returns the default value of this annotation type member, ornull
if there is none.- Returns:
- the expression node, or
null
if there is none
-
setDefault
public void setDefault(Expression defaultValue)
Sets or clears the default value of this annotation type member.- Parameters:
defaultValue
- the expression node, ornull
if there is none- Throws:
IllegalArgumentException
- if:- the node belongs to a different AST
- the node already has a parent
- a cycle in would be created
-
resolveBinding
public IMethodBinding resolveBinding()
Resolves and returns the binding for the annotation type member declared in this declaration.Note that bindings are generally unavailable unless requested when the AST is being built.
- Returns:
- the binding, or
null
if the binding cannot be resolved
-
-