public interface IASTFieldReference extends IASTExpression, IASTNameOwner
IASTExpression.ValueCategory
IASTNode.CopyStyle
Modifier and Type | Field and Description |
---|---|
static ASTNodeProperty |
FIELD_NAME
FIELD_NAME represents the relationship between a
IASTFieldReference and its IASTName field
name. |
static ASTNodeProperty |
FIELD_OWNER
FIELD_OWNER represents the relationship between a
IASTFieldReference and its IASTExpression
field owner. |
EMPTY_EXPRESSION_ARRAY
EMPTY_NODE_ARRAY
r_declaration, r_definition, r_reference, r_unclear
Modifier and Type | Method and Description |
---|---|
IASTFieldReference |
copy()
Returns a mutable copy of the tree rooted at this node.
|
IASTFieldReference |
copy(IASTNode.CopyStyle style)
Returns a mutable copy of the tree rooted at this node.
|
IASTName |
getFieldName()
Returns the name of the field being dereferenced.
|
IASTExpression |
getFieldOwner()
Returns an expression for the object containing the field.
|
boolean |
isPointerDereference()
Returns true of this is the arrow operator and not the dot operator.
|
void |
setFieldName(IASTName name)
Sets the name of the field.
|
void |
setFieldOwner(IASTExpression expression)
Sets the expression for the object containing the field.
|
void |
setIsPointerDereference(boolean value)
Sets whether or not this is a pointer dereference (default == no).
|
getExpressionType, getValueCategory, isLValue
accept, contains, getChildren, getContainingFilename, getFileLocation, getLeadingSyntax, getNodeLocations, getOriginalNode, getParent, getPropertyInParent, getRawSignature, getSyntax, getTrailingSyntax, getTranslationUnit, isActive, isFrozen, isPartOfTranslationUnitFile, setParent, setPropertyInParent
getRoleForName
static final ASTNodeProperty FIELD_OWNER
FIELD_OWNER
represents the relationship between a
IASTFieldReference
and its IASTExpression
field owner.static final ASTNodeProperty FIELD_NAME
FIELD_NAME
represents the relationship between a
IASTFieldReference
and its IASTName
field
name.IASTExpression getFieldOwner()
void setFieldOwner(IASTExpression expression)
expression
- IASTName getFieldName()
IASTName
)void setFieldName(IASTName name)
name
- the new nameboolean isPointerDereference()
void setIsPointerDereference(boolean value)
value
- the new valueIASTFieldReference copy()
IASTNode
copy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == falsePreprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.
Calling this method is equivalent to copy(CopyStyle.withoutLocations)
.
copy
in interface IASTExpression
copy
in interface IASTInitializerClause
copy
in interface IASTNode
IASTFieldReference copy(IASTNode.CopyStyle style)
IASTNode
copy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == falsePreprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.
copy
in interface IASTExpression
copy
in interface IASTInitializerClause
copy
in interface IASTNode
style
- IASTNode.CopyStyle
create a copy with or without locations. Please see
IASTNode.CopyStyle
for restrictions on copies with Locations.Copyright (c) IBM Corp. and others 2004, 2014. All Rights Reserved.