public interface ICPPASTFieldReference extends IASTFieldReference, ICPPASTExpression, IASTImplicitNameOwner
IASTExpression.ValueCategory
IASTNode.CopyStyle
FIELD_NAME, FIELD_OWNER
r_declaration, r_definition, r_reference, r_unclear
EMPTY_EXPRESSION_ARRAY
EMPTY_NODE_ARRAY
IMPLICIT_DESTRUCTOR_NAME
IMPLICIT_NAME
Modifier and Type | Method and Description |
---|---|
ICPPASTFieldReference |
copy()
Returns a mutable copy of the tree rooted at this node.
|
ICPPASTFieldReference |
copy(IASTNode.CopyStyle style)
Returns a mutable copy of the tree rooted at this node.
|
ICPPASTExpression |
getFieldOwner()
Returns an expression for the object containing the field.
|
IType |
getFieldOwnerType()
Returns the type of the field owner.
|
boolean |
isTemplate()
Was template keyword used?
|
void |
setIsTemplate(boolean value)
Sets the template keyword used.
|
getFieldName, isPointerDereference, setFieldName, setFieldOwner, setIsPointerDereference
getRoleForName
getExpressionType, getValueCategory, isLValue
getEvaluation
accept, contains, getChildren, getContainingFilename, getFileLocation, getLeadingSyntax, getNodeLocations, getOriginalNode, getParent, getPropertyInParent, getRawSignature, getSyntax, getTrailingSyntax, getTranslationUnit, isActive, isFrozen, isPartOfTranslationUnitFile, setParent, setPropertyInParent
getImplicitDestructorNames
getImplicitNames
boolean isTemplate()
void setIsTemplate(boolean value)
value
- ICPPASTFieldReference 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 IASTFieldReference
copy
in interface IASTInitializerClause
copy
in interface IASTNode
ICPPASTFieldReference 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 IASTFieldReference
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.IType getFieldOwnerType()
ICPPASTExpression getFieldOwner()
IASTFieldReference
getFieldOwner
in interface IASTFieldReference
Copyright (c) IBM Corp. and others 2004, 2014. All Rights Reserved.