org.eclipse.jdt.core.dom

## Class NormalAnnotation

- java.lang.Object
- - org.eclipse.jdt.core.dom.ASTNode
  - - org.eclipse.jdt.core.dom.Expression
    - - org.eclipse.jdt.core.dom.Annotation
      - - org.eclipse.jdt.core.dom.NormalAnnotation

All Implemented Interfaces:
  IExtendedModifier

    public final class NormalAnnotation
    extends Annotation

Normal annotation node (added in JLS3 API).

     NormalAnnotation:
       @ TypeName ( [ MemberValuePair { , MemberValuePair } ] )

Since:
  3.1
Restriction:
  This class is not intended to be instantiated by clients.

### Field Summary

Fields
`static ChildPropertyDescriptor` `TYPE_NAME_PROPERTY` The "typeName" structural property of this node type (child type: `Name`).
`static ChildListPropertyDescriptor` `VALUES_PROPERTY` The "values" structural property of this node type (element type: `MemberValuePair`).

### 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, 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_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, 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`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static List` `propertyDescriptors(int apiLevel)` Returns a list of structural property descriptors for this node type.
`List` `values()` Returns the live list of member value pairs in this annotation.

### Methods inherited from class org.eclipse.jdt.core.dom.Annotation

`getTypeName, getTypeNameProperty, isAnnotation, isMarkerAnnotation, isModifier, isNormalAnnotation, isSingleMemberAnnotation, resolveAnnotationBinding, setTypeName`

### 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`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Field Detail

#### TYPE_NAME_PROPERTY

    public static final ChildPropertyDescriptor TYPE_NAME_PROPERTY

The "typeName" structural property of this node type (child type: `Name`).

#### VALUES_PROPERTY

    public static final ChildListPropertyDescriptor VALUES_PROPERTY

The "values" structural property of this node type (element type: `MemberValuePair`).

### 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`)

#### values

    public List values()

Returns the live list of member value pairs in this annotation. Adding and removing nodes from this list affects this node dynamically. All nodes in this list must be `MemberValuePair`s; attempts to add any other type of node will trigger an exception.

Returns:
  the live list of member value pairs in this annotation (element type: `MemberValuePair`)