Eclipse JDT
Release 3.1

org.eclipse.jdt.core.dom
Class AnnotationTypeMemberDeclaration

java.lang.Object
  extended byorg.eclipse.jdt.core.dom.ASTNode
      extended byorg.eclipse.jdt.core.dom.BodyDeclaration
          extended byorg.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

Field Summary
static ChildPropertyDescriptor DEFAULT_PROPERTY
          The "default" structural property of this node type.
static ChildPropertyDescriptor JAVADOC_PROPERTY
          The "javadoc" structural property of this node type.
static ChildListPropertyDescriptor MODIFIERS2_PROPERTY
          The "modifiers" structural property of this node type.
static ChildPropertyDescriptor NAME_PROPERTY
          The "name" structural property of this node type.
static ChildPropertyDescriptor TYPE_PROPERTY
          The "type" structural property of this node 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, DO_STATEMENT, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, JAVADOC, LABELED_STATEMENT, LINE_COMMENT, MALFORMED, MARKER_ANNOTATION, MEMBER_REF, MEMBER_VALUE_PAIR, METHOD_DECLARATION, METHOD_INVOCATION, METHOD_REF, METHOD_REF_PARAMETER, MODIFIER, NORMAL_ANNOTATION, NULL_LITERAL, NUMBER_LITERAL, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, QUALIFIED_NAME, QUALIFIED_TYPE, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_MEMBER_ANNOTATION, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SWITCH_CASE, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_PARAMETER, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE
 
Method Summary
 Expression getDefault()
          Returns the default value of this annotation type member, or null 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, nodeClassForType, properties, setFlags, setProperty, setSourceRange, setStructuralProperty, structuralPropertiesForType, subtreeBytes, subtreeMatch, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

JAVADOC_PROPERTY

public static final ChildPropertyDescriptor JAVADOC_PROPERTY
The "javadoc" structural property of this node type.


MODIFIERS2_PROPERTY

public static final ChildListPropertyDescriptor MODIFIERS2_PROPERTY
The "modifiers" structural property of this node type.


NAME_PROPERTY

public static final ChildPropertyDescriptor NAME_PROPERTY
The "name" structural property of this node type.


TYPE_PROPERTY

public static final ChildPropertyDescriptor TYPE_PROPERTY
The "type" structural property of this node type.


DEFAULT_PROPERTY

public static final ChildPropertyDescriptor DEFAULT_PROPERTY
The "default" structural property of this node type.

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 the AST.JLS* constants
Returns:
a list of property descriptors (element type: StructuralPropertyDescriptor)

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

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

getDefault

public Expression getDefault()
Returns the default value of this annotation type member, or null 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, or null 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

Eclipse JDT
Release 3.1

Copyright (c) IBM Corp. and others 2000, 2005. All Rights Reserved.