Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Eclipse JDT
Release 3.5

org.eclipse.jdt.core.dom
Class SingleVariableDeclaration

java.lang.Object
  extended by 

org.eclipse.jdt.core.dom.ASTNode
      extended by 

org.eclipse.jdt.core.dom.VariableDeclaration
          extended by 
org.eclipse.jdt.core.dom.SingleVariableDeclaration

public class SingleVariableDeclaration
extends VariableDeclaration

Single variable declaration AST node type. Single variable declaration nodes are used in a limited number of places, including formal parameter lists and catch clauses. They are not used for field declarations and regular variable declaration statements. For JLS2:

 SingleVariableDeclaration:
    { Modifier } Type Identifier { [
] } [ = Expression ]
 
For JLS3, the modifier flags were replaced by a list of modifier nodes (intermixed with annotations), and the variable arity indicator was added:
 SingleVariableDeclaration:
    { ExtendedModifier } Type [ ... ] Identifier { [
] } [ = Expression ]
 

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

Field Summary
static  SimplePropertyDescriptor EXTRA_DIMENSIONS_PROPERTY
          The "extraDimensions" structural property of this node type.
static  ChildPropertyDescriptor INITIALIZER_PROPERTY
          The "initializer" structural property of this node type.
static  SimplePropertyDescriptor MODIFIERS_PROPERTY
          The "modifiers" structural property of this node type (JLS2 API only).
static  ChildListPropertyDescriptor MODIFIERS2_PROPERTY
          The "modifiers" structural property of this node type (added in JLS3 API).
static  ChildPropertyDescriptor NAME_PROPERTY
          The "name" structural property of this node type.
static  ChildPropertyDescriptor TYPE_PROPERTY
          The "type" structural property of this node type.
static  SimplePropertyDescriptor VARARGS_PROPERTY
          The "varargs" structural property of this node type (added in JLS3 API).
 
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
 int getExtraDimensions ()
          Returns the number of extra array dimensions over and above the explicitly-specified type.
  Expression getInitializer ()
          Returns the initializer of this variable declaration, or null if there is none.
 int getModifiers ()
          Returns the modifiers explicitly specified on this declaration.
  SimpleName getName ()
          Returns the name of the variable declared in this variable declaration.
  Type getType ()
          Returns the type of the variable declared in this variable declaration, exclusive of any extra array dimensions.
 boolean isVarargs ()
          Returns whether this declaration declares the last parameter of a variable arity method (added in JLS3 API).
  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 setExtraDimensions (int dimensions)
          Sets the number of extra array dimensions over and above the explicitly-specified type.
 void setInitializer ( Expression initializer)
          Sets or clears the initializer of this variable declaration.
 void setModifiers (int modifiers)
          Deprecated. In the JLS3 API, this method is replaced by modifiers() which contains a list of a Modifier nodes.
 void setName ( SimpleName variableName)
          Sets the name of the variable declared in this variable declaration to the given name.
 void setType ( Type type)
          Sets the type of the variable declared in this variable declaration to the given type, exclusive of any extra array dimensions.
 void setVarargs (boolean variableArity)
          Sets whether this declaration declares the last parameter of a variable arity method (added in JLS3 API).
 
Methods inherited from class org.eclipse.jdt.core.dom. VariableDeclaration
getExtraDimensionsProperty, getInitializerProperty, getNameProperty, resolveBinding
 
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

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

NAME_PROPERTY

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

Since:
3.0

TYPE_PROPERTY

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

Since:
3.0

VARARGS_PROPERTY

public static final 
SimplePropertyDescriptor VARARGS_PROPERTY
The "varargs" structural property of this node type (added in JLS3 API).

Since:
3.1

EXTRA_DIMENSIONS_PROPERTY

public static final 
SimplePropertyDescriptor EXTRA_DIMENSIONS_PROPERTY
The "extraDimensions" structural property of this node type.

Since:
3.0

INITIALIZER_PROPERTY

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

Since:
3.0
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)
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 and formal parameter 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).

The following modifiers are meaningful for fields: public, private, protected, static, final, volatile, and transient. For local variable and formal parameter declarations, the only meaningful modifier is final.

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

getName

public 
SimpleName getName()
Description copied from class: VariableDeclaration
Returns the name of the variable declared in this variable declaration.

Specified by:
getName in class VariableDeclaration
Returns:
the variable name node

setName

public void setName(
SimpleName variableName)
Description copied from class: VariableDeclaration
Sets the name of the variable declared in this variable declaration to the given name.

Specified by:
setName in class VariableDeclaration
Parameters:
variableName - the new variable name

getType

public 
Type getType()
Returns the type of the variable declared in this variable declaration, exclusive of any extra array dimensions.

Returns:
the type

setType

public void setType(
Type type)
Sets the type of the variable declared in this variable declaration to the given type, exclusive of any extra array dimensions.

Parameters:
type - the new type
Throws:
IllegalArgumentException - if:
  • the node belongs to a different AST
  • the node already has a parent

isVarargs

public boolean isVarargs()
Returns whether this declaration declares the last parameter of a variable arity method (added in JLS3 API).

Note that the binding for the type Fooin the vararg method declaration void fun(Foo... args) is always for the type as written; i.e., the type binding for Foo. However, if you navigate from the method declaration to its method binding to the type binding for its last parameter, the type binding for the vararg parameter is always an array type (i.e., Foo[]) reflecting the way vararg methods get compiled.

Returns:
true if this is a variable arity parameter declaration, and false otherwise
Throws:
UnsupportedOperationException - if this operation is used in a JLS2 AST
Since:
3.1

setVarargs

public void setVarargs(boolean variableArity)
Sets whether this declaration declares the last parameter of a variable arity method (added in JLS3 API).

Parameters:
variableArity - true if this is a variable arity parameter declaration, and false otherwise
Since:
3.1

getExtraDimensions

public int getExtraDimensions()
Description copied from class: VariableDeclaration
Returns the number of extra array dimensions over and above the explicitly-specified type.

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.

Specified by:
getExtraDimensions in class VariableDeclaration
Returns:
the number of extra array dimensions

setExtraDimensions

public void setExtraDimensions(int dimensions)
Description copied from class: VariableDeclaration
Sets the number of extra array dimensions over and above the explicitly-specified type.

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.

Specified by:
setExtraDimensions in class VariableDeclaration
Parameters:
dimensions - the number of array dimensions

getInitializer

public 
Expression getInitializer()
Description copied from class: VariableDeclaration
Returns the initializer of this variable declaration, or null if there is none.

Specified by:
getInitializer in class VariableDeclaration
Returns:
the initializer expression node, or null if there is none

setInitializer

public void setInitializer(
Expression initializer)
Description copied from class: VariableDeclaration
Sets or clears the initializer of this variable declaration.

Specified by:
setInitializer in class VariableDeclaration
Parameters:
initializer - the initializer expression node, or null if there is none

Eclipse JDT
Release 3.5

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

 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire