|
org.eclipse.jdt.core.dom
Class VariableDeclarationExpression
java.lang.Object
org.eclipse.jdt.core.dom.ASTNode
org.eclipse.jdt.core.dom.Expression
org.eclipse.jdt.core.dom.VariableDeclarationExpression
-
public class VariableDeclarationExpression
- extends
Expression
Local variable declaration expression AST node type.
This kind of node collects together several variable declaration fragments
(VariableDeclarationFragment ) into a single expression
(Expression ), all sharing the same modifiers and base type.
This type of node can be used as the initializer of a
ForStatement , or wrapped in an ExpressionStatement
to form the equivalent of a VariableDeclarationStatement .
For JLS2:
VariableDeclarationExpression:
{ Modifier } Type VariableDeclarationFragment
{ , VariableDeclarationFragment }
For JLS3, the modifier flags were replaced by
a list of modifier nodes (intermixed with annotations):
VariableDeclarationExpression:
{ ExtendedModifier } Type VariableDeclarationFragment
{ , VariableDeclarationFragment }
-
Since:
- 2.0
-
Restriction:
- This class is not intended to be instantiated by clients.
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,
RECOVERED,
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
|
List
|
fragments
()
Returns the live list of variable declaration fragments in this
expression. |
int
|
getModifiers
()
Returns the modifiers explicitly specified on this declaration. |
Type
|
getType
()
Returns the base type declared in this variable declaration. |
List
|
modifiers
()
Returns the live ordered list of modifiers and annotations
of this declaration (added in JLS3 API). |
static
List
|
propertyDescriptors
(int apiLevel)
Returns a list of structural property descriptors for this node type. |
void
|
setModifiers
(int modifiers)
Deprecated. In the JLS3 API, this method is replaced by
modifiers() which contains a list of a Modifier nodes.
|
void
|
setType
(
Type type)
Sets the base type declared in this variable declaration to the given
type. |
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
|
MODIFIERS_PROPERTY
public static final
SimplePropertyDescriptor MODIFIERS_PROPERTY
- The "modifiers" structural property of this node type (JLS2 API only).
-
Since:
- 3.0
MODIFIERS2_PROPERTY
public static final
ChildListPropertyDescriptor MODIFIERS2_PROPERTY
- The "modifiers" structural property of this node type (added in JLS3 API).
-
Since:
- 3.1
TYPE_PROPERTY
public static final
ChildPropertyDescriptor TYPE_PROPERTY
- The "type" structural property of this node type.
-
Since:
- 3.0
FRAGMENTS_PROPERTY
public static final
ChildListPropertyDescriptor FRAGMENTS_PROPERTY
- The "fragments" structural property of this node type).
-
Since:
- 3.0
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 ) -
Since:
- 3.0
modifiers
public
List modifiers()
- Returns the live ordered list of modifiers and annotations
of this declaration (added in JLS3 API).
Note that the final modifier is the only meaningful modifier for local
variable declarations.
-
-
Returns:
- the live list of modifiers and annotations
(element type:
IExtendedModifier )
-
Throws:
-
UnsupportedOperationException
- if this operation is used in
a JLS2 AST -
Since:
- 3.1
getModifiers
public int getModifiers()
- Returns the modifiers explicitly specified on this declaration.
In the JLS3 API, this method is a convenience method that
computes these flags from modifiers() .
-
-
Returns:
- the bit-wise or of
Modifier constants -
See Also:
-
Modifier
setModifiers
public void setModifiers(int modifiers)
-
Deprecated. In the JLS3 API, this method is replaced by
modifiers() which contains a list of a Modifier nodes.
- Sets the modifiers explicitly specified on this declaration (JLS2 API only).
Note that the final modifier is the only meaningful modifier for local
variable declarations.
-
-
Parameters:
-
modifiers - the given modifiers (bit-wise or of Modifier constants)
-
Throws:
-
UnsupportedOperationException
- if this operation is used in
an AST later than JLS2 -
See Also:
-
Modifier
getType
public
Type getType()
- Returns the base type declared in this variable declaration.
N.B. The individual child variable declaration fragments may specify
additional array dimensions. So the type of the variable are not
necessarily exactly this type.
-
-
Returns:
- the base type
setType
public void setType(
Type type)
- Sets the base type declared in this variable declaration to the given
type.
-
-
Parameters:
-
type - the new base type
-
Throws:
-
IllegalArgumentException
- if:
- the node belongs to a different AST
- the node already has a parent
fragments
public
List fragments()
- Returns the live list of variable declaration fragments in this
expression. Adding and removing nodes from this list affects this node
dynamically. All nodes in this list must be
VariableDeclarationFragment s; attempts to add any other
type of node will trigger an exception.
-
-
Returns:
- the live list of variable declaration fragments in this
expression (element type:
VariableDeclarationFragment )
Copyright (c) IBM Corp. and others 2000, 2008. All Rights Reserved.
|
|