Package org.eclipse.cdt.core.dom.ast.cpp
Interface ICPPASTFunctionDefinition
- All Superinterfaces:
IASTAttributeOwner,IASTDeclaration,IASTFunctionDefinition,IASTNode
- All Known Subinterfaces:
ICPPASTFunctionWithTryBlock
In c++ the a function definition for a constructor may contain member initializers.
- Since:
- 5.1
- 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.IASTNode
IASTNode.CopyStyle -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ASTNodePropertyMEMBER_INITIALIZERis the role of a member initializer in the function definition.Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
ATTRIBUTE, ATTRIBUTE_SPECIFIERFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTDeclaration
EMPTY_DECLARATION_ARRAYFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTFunctionDefinition
DECL_SPECIFIER, DECLARATOR, FUNCTION_BODYFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY -
Method Summary
Modifier and TypeMethodDescriptionvoidaddMemberInitializer(ICPPASTConstructorChainInitializer initializer) Adds a member initializer to this function definition.copy()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 the array of associated member initializers.booleanReturns whether this is a defaulted function definition.booleanReturns whether this is a deleted function definition.voidsetIsDefaulted(boolean isDefaulted) Make this a defaulted function definition, e.g.: C::C() = default;voidsetIsDeleted(boolean isDeleted) Make this a deleted function definition, e.g.: void f() = delete;Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
addAttribute, addAttributeSpecifier, getAttributes, getAttributeSpecifiersMethods inherited from interface org.eclipse.cdt.core.dom.ast.IASTFunctionDefinition
getBody, getDeclarator, getDeclSpecifier, getScope, setBody, setDeclarator, setDeclSpecifierMethods 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, setPropertyInParent
-
Field Details
-
MEMBER_INITIALIZER
MEMBER_INITIALIZERis the role of a member initializer in the function definition.
-
-
Method Details
-
getMemberInitializers
ICPPASTConstructorChainInitializer[] getMemberInitializers()Returns the array of associated member initializers. -
addMemberInitializer
Adds a member initializer to this function definition. -
copy
ICPPASTFunctionDefinition 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 interfaceIASTDeclaration- Specified by:
copyin interfaceIASTFunctionDefinition- 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 interfaceIASTDeclaration- Specified by:
copyin interfaceIASTFunctionDefinition- 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
-
setIsDefaulted
void setIsDefaulted(boolean isDefaulted) Make this a defaulted function definition, e.g.: C::C() = default;- Since:
- 5.3
-
isDefaulted
boolean isDefaulted()Returns whether this is a defaulted function definition.- Since:
- 5.3
-
setIsDeleted
void setIsDeleted(boolean isDeleted) Make this a deleted function definition, e.g.: void f() = delete;- Since:
- 5.3
-
isDeleted
boolean isDeleted()Returns whether this is a deleted function definition.- Since:
- 5.3
-