Package org.eclipse.cdt.core.dom.ast.cpp
Interface ICPPASTFieldReference
- All Superinterfaces:
IASTExpression,IASTFieldReference,IASTImplicitDestructorNameOwner,IASTImplicitNameOwner,IASTInitializerClause,IASTNameOwner,IASTNode,ICPPASTExpression,ICPPASTInitializerClause
public interface ICPPASTFieldReference
extends IASTFieldReference, ICPPASTExpression, IASTImplicitNameOwner
Certain field references in C++ require the use the keyword template to
specify the parse.
- Restriction:
- This interface is not intended to be implemented by clients.
- Restriction:
- This interface is not intended to be extended by clients.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.eclipse.cdt.core.dom.ast.IASTExpression
IASTExpression.ValueCategoryNested classes/interfaces inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
IASTNode.CopyStyle -
Field Summary
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTExpression
EMPTY_EXPRESSION_ARRAYFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTFieldReference
FIELD_NAME, FIELD_OWNERFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTImplicitDestructorNameOwner
IMPLICIT_DESTRUCTOR_NAMEFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTImplicitNameOwner
IMPLICIT_NAMEFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNameOwner
r_declaration, r_definition, r_reference, r_unclearFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY -
Method Summary
Modifier and TypeMethodDescriptioncopy()Returns a mutable copy of the tree rooted at this node.copy(IASTNode.CopyStyle style) Returns a mutable copy of the tree rooted at this node.Returns an expression for the object containing the field.Returns the type of the field owner.booleanWas template keyword used?voidsetIsTemplate(boolean value) Sets the template keyword used.Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTExpression
getExpressionType, getValueCategory, isLValueMethods inherited from interface org.eclipse.cdt.core.dom.ast.IASTFieldReference
getFieldName, isPointerDereference, setFieldName, setFieldOwner, setIsPointerDereferenceMethods inherited from interface org.eclipse.cdt.core.dom.ast.IASTImplicitDestructorNameOwner
getImplicitDestructorNamesMethods inherited from interface org.eclipse.cdt.core.dom.ast.IASTImplicitNameOwner
getImplicitNamesMethods inherited from interface org.eclipse.cdt.core.dom.ast.IASTNameOwner
getRoleForNameMethods inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
accept, contains, getChildren, getContainingFilename, getFileLocation, getLeadingSyntax, getNodeLocations, getOriginalNode, getParent, getPropertyInParent, getRawSignature, getSyntax, getTrailingSyntax, getTranslationUnit, isActive, isFrozen, isPartOfTranslationUnitFile, setParent, setPropertyInParentMethods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPASTInitializerClause
getEvaluation
-
Method Details
-
isTemplate
boolean isTemplate()Was template keyword used? -
setIsTemplate
void setIsTemplate(boolean value) Sets the template keyword used.- Parameters:
value-
-
copy
ICPPASTFieldReference copy()Description copied from interface:IASTNodeReturns a mutable copy of the tree rooted at this node. The following postconditions hold:copy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == false
Preprocessor 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).- Specified by:
copyin interfaceIASTExpression- Specified by:
copyin interfaceIASTFieldReference- Specified by:
copyin interfaceIASTInitializerClause- Specified by:
copyin interfaceIASTNode- Since:
- 5.1
-
copy
Description copied from interface:IASTNodeReturns a mutable copy of the tree rooted at this node. The following postconditions hold:copy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == false
Preprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.- Specified by:
copyin interfaceIASTExpression- Specified by:
copyin interfaceIASTFieldReference- Specified by:
copyin interfaceIASTInitializerClause- Specified by:
copyin interfaceIASTNode- Parameters:
style-IASTNode.CopyStylecreate a copy with or without locations. Please seeIASTNode.CopyStylefor restrictions on copies with Locations.- Since:
- 5.3
-
getFieldOwnerType
IType getFieldOwnerType()Returns the type of the field owner.- Since:
- 5.4
-
getFieldOwner
ICPPASTExpression getFieldOwner()Description copied from interface:IASTFieldReferenceReturns an expression for the object containing the field.- Specified by:
getFieldOwnerin interfaceIASTFieldReference- Returns:
- the field owner
- Since:
- 5.5
-