public abstract class VariableDeclaration extends ASTNode
VariableDeclaration: SingleVariableDeclaration VariableDeclarationFragment
SingleVariableDeclaration
,
VariableDeclarationFragment
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, UNION_TYPE, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE
Modifier and Type | Method and Description |
---|---|
abstract int |
getExtraDimensions()
Returns the number of extra array dimensions over and above the
explicitly-specified type.
|
SimplePropertyDescriptor |
getExtraDimensionsProperty()
Returns structural property descriptor for the "extraDimensions" property
of this node (type:
Integer ). |
abstract Expression |
getInitializer()
Returns the initializer of this variable declaration, or
null if there is none. |
ChildPropertyDescriptor |
getInitializerProperty()
Returns structural property descriptor for the "initializer" property
of this node (child type:
Expression ). |
abstract SimpleName |
getName()
Returns the name of the variable declared in this variable declaration.
|
ChildPropertyDescriptor |
getNameProperty()
Returns structural property descriptor for the "name" property
of this node (child type:
SimpleName ). |
IVariableBinding |
resolveBinding()
Resolves and returns the binding for the variable declared in this
variable declaration.
|
abstract void |
setExtraDimensions(int dimensions)
Sets the number of extra array dimensions over and above the
explicitly-specified type.
|
abstract void |
setInitializer(Expression initializer)
Sets or clears the initializer of this variable declaration.
|
abstract void |
setName(SimpleName variableName)
Sets the name of the variable declared in this variable declaration
to the given name.
|
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
public final SimplePropertyDescriptor getExtraDimensionsProperty()
Integer
).public final ChildPropertyDescriptor getInitializerProperty()
Expression
).public final ChildPropertyDescriptor getNameProperty()
SimpleName
).public abstract SimpleName getName()
public abstract void setName(SimpleName variableName)
variableName
- the new variable nameIllegalArgumentException
- if:
public abstract int getExtraDimensions()
For example, int x[][]
has a type of
int
and two extra array dimensions;
int[][] x
has a type of int[][]
and zero extra array dimensions. The two constructs have different
ASTs, even though there are really syntactic variants of the same
variable declaration.
public abstract void setExtraDimensions(int dimensions)
For example, int x[][]
has a type of
int
and two extra array dimensions;
int[][] x
has a type of int[][]
and zero extra array dimensions. The two constructs have different
ASTs, even though there are really syntactic variants of the same
variable declaration.
dimensions
- the number of array dimensionsIllegalArgumentException
- if the number of dimensions is
negativepublic abstract Expression getInitializer()
null
if there is none.null
if
there is nonepublic abstract void setInitializer(Expression initializer)
initializer
- the initializer expression node, or null
if there is noneIllegalArgumentException
- if:
public IVariableBinding resolveBinding()
Note that bindings are generally unavailable unless requested when the AST is being built.
null
if the binding cannot be
resolved
Copyright (c) 2000, 2014 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.