Eclipse JDT
2.0

org.eclipse.jdt.core.dom
Class FieldDeclaration

java.lang.Object
  |
  +--org.eclipse.jdt.core.dom.ASTNode
        |
        +--org.eclipse.jdt.core.dom.BodyDeclaration
              |
              +--org.eclipse.jdt.core.dom.FieldDeclaration

public class FieldDeclaration
extends BodyDeclaration

Field declaration node type.

This kind of node collects several variable declaration fragments (VariableDeclarationFragment) into a single body declaration (BodyDeclaration), all sharing the same modifiers and base type.

 FieldDeclaration:
    [Javadoc] { Modifier } Type VariableDeclarationFragment
         { , VariableDeclarationFragment } ;
 

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 initial modifier or type. The source range extends through the last character of the final ";".

Since:
2.0

Field Summary
 
Fields inherited from class org.eclipse.jdt.core.dom.ASTNode
ANONYMOUS_CLASS_DECLARATION, ARRAY_ACCESS, ARRAY_CREATION, ARRAY_INITIALIZER, ARRAY_TYPE, ASSERT_STATEMENT, ASSIGNMENT, BLOCK, 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, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, JAVADOC, LABELED_STATEMENT, MALFORMED, METHOD_DECLARATION, METHOD_INVOCATION, NULL_LITERAL, NUMBER_LITERAL, PACKAGE_DECLARATION, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, QUALIFIED_NAME, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SWITCH_CASE, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT
 
Method Summary
 List fragments()
          Returns the live list of variable declaration fragments in this field declaration.
 int getModifiers()
          Returns the modifiers explicitly specified on this declaration.
 int getNodeType()
          Returns an integer value identifying the type of this concrete AST node.
 Type getType()
          Returns the base type declared in this field declaration.
 void setModifiers(int modifiers)
          Sets the modifiers explicitly specified on this declaration.
 void setType(Type type)
          Sets the base type declared in this field declaration to the given type.
 boolean subtreeMatch(ASTMatcher matcher, Object other)
          Returns whether the subtree rooted at the given node matches the given other object as decided by the given matcher.
 
Methods inherited from class org.eclipse.jdt.core.dom.BodyDeclaration
getJavadoc, setJavadoc
 
Methods inherited from class org.eclipse.jdt.core.dom.ASTNode
accept, copySubtree, copySubtrees, equals, getAST, getFlags, getLength, getParent, getProperty, getRoot, getStartPosition, properties, setFlags, setProperty, setSourceRange, subtreeBytes, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getNodeType

public int getNodeType()
Description copied from class: ASTNode
Returns an integer value identifying the type of this concrete AST node. The values are small positive integers, suitable for use in switch statements.

For each concrete node type there is a unique node type constant (name and value). The unique node type constant for a concrete node type such as CastExpression is ASTNode.CAST_EXPRESSION.

Specified by:
getNodeType in class ASTNode
Returns:
one of the node type constants

subtreeMatch

public boolean subtreeMatch(ASTMatcher matcher,
                            Object other)
Description copied from class: ASTNode
Returns whether the subtree rooted at the given node matches the given other object as decided by the given matcher.

Specified by:
subtreeMatch in class ASTNode
Parameters:
matcher - the matcher
other - the other object, or null
Returns:
true if the subtree matches, or false if they do not match

getModifiers

public int getModifiers()
Returns the modifiers explicitly specified on this declaration.

The following modifiers are valid for fields: public, private, protected, static, final, volatile, and transient.

Returns:
the bit-wise or of Modifier constants
See Also:
Modifier

setModifiers

public void setModifiers(int modifiers)
Sets the modifiers explicitly specified on this declaration.

The following modifiers are valid for fields: public, private, protected, static, final, volatile, and transient.

Returns:
the bit-wise or of Modifier constants
Throws:
IllegalArgumentException - if the modifiers are illegal
See Also:
Modifier

getType

public Type getType()
Returns the base type declared in this field 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 field 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 field declaration. Adding and removing nodes from this list affects this node dynamically. All nodes in this list must be VariableDeclarationFragments; attempts to add any other type of node will trigger an exception.

Returns:
the live list of variable declaration fragments in this statement (element type: VariableDeclarationFragment)

Eclipse JDT
2.0

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