| |
org.eclipse.jdt.core.dom
Class FieldAccess
java.lang.Object
org.eclipse.jdt.core.dom.ASTNode
org.eclipse.jdt.core.dom.Expression
org.eclipse.jdt.core.dom.FieldAccess
-
public class FieldAccess
- extends
Expression
Field access expression AST node type.
FieldAccess:
Expression . Identifier
Note that there are several kinds of expressions that resemble field access
expressions: qualified names, this expressions, and super field access
expressions. The following guidelines help with correct usage:
- An expression like "foo.this" can only be represented as a this
expression (
ThisExpression) containing a simple name.
"this" is a keyword, and therefore invalid as an identifier.
- An expression like "this.foo" can only be represented as a field
access expression (
FieldAccess) containing a this expression
and a simple name. Again, this is because "this" is a keyword, and
therefore invalid as an identifier.
- An expression with "super" can only be represented as a super field
access expression (
SuperFieldAccess). "super" is a also
keyword, and therefore invalid as an identifier.
- An expression like "foo.bar" can be represented either as a
qualified name (
QualifiedName) or as a field access
expression (FieldAccess) containing simple names. Either
is acceptable, and there is no way to choose between them without
information about what the names resolve to
(ASTParser may return either).
- Other expressions ending in an identifier, such as "foo().bar" can
only be represented as field access expressions
(
FieldAccess).
-
Since:
- 2.0
-
See Also:
-
QualifiedName,
ThisExpression,
SuperFieldAccess
-
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
|
|
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
|
EXPRESSION_PROPERTY
public static final
ChildPropertyDescriptor EXPRESSION_PROPERTY
- The "expression" structural property of this node type.
-
Since:
- 3.0
NAME_PROPERTY
public static final
ChildPropertyDescriptor NAME_PROPERTY
- The "name" 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
getExpression
public
Expression getExpression()
- Returns the expression of this field access expression.
-
-
Returns:
- the expression node
setExpression
public void setExpression(
Expression expression)
- Sets the expression of this field access expression.
-
-
Parameters:
-
expression - the new expression
-
Throws:
-
IllegalArgumentException
- if:
- the node belongs to a different AST
- the node already has a parent
- a cycle in would be created
getName
public
SimpleName getName()
- Returns the name of the field accessed in this field access expression.
-
-
Returns:
- the field name
setName
public void setName(
SimpleName fieldName)
- Sets the name of the field accessed in this field access expression.
-
-
Parameters:
-
fieldName - the field name
-
Throws:
-
IllegalArgumentException
- if:
- the node belongs to a different AST
- the node already has a parent
resolveFieldBinding
public
IVariableBinding resolveFieldBinding()
- Resolves and returns the binding for the field accessed by this
expression.
Note that bindings are generally unavailable unless requested when the
AST is being built.
-
-
Returns:
- the variable binding, or
null if the binding cannot
be resolved -
Since:
- 3.0
Copyright (c) IBM Corp. and others 2000, 2008. All Rights Reserved.
|
|