Eclipse CDT
7.0

org.eclipse.cdt.core.dom.ast.cpp
Interface ICPPASTFunctionDefinition

All Superinterfaces:
IASTDeclaration, IASTFunctionDefinition, IASTNode
All Known Subinterfaces:
ICPPASTFunctionWithTryBlock

public interface ICPPASTFunctionDefinition
extends IASTFunctionDefinition

In c++ the a function definition for a constructor may contain member initializers.

Since:
5.1

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
IASTNode.CopyStyle
 
Field Summary
static ASTNodeProperty MEMBER_INITIALIZER
          MEMBER_INITIALIZER is the role of a member initializer in the function definition.
 
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTFunctionDefinition
DECL_SPECIFIER, DECLARATOR, FUNCTION_BODY
 
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTDeclaration
EMPTY_DECLARATION_ARRAY
 
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY
 
Method Summary
 void addMemberInitializer(ICPPASTConstructorChainInitializer initializer)
          Adds a member initializer to this function definition.
 ICPPASTFunctionDefinition copy()
          Returns a mutable copy of the tree rooted at this node.
 ICPPASTFunctionDefinition copy(IASTNode.CopyStyle style)
          Returns a mutable copy of the tree rooted at this node.
 ICPPASTConstructorChainInitializer[] getMemberInitializers()
          Returns the array of associated member initializers.
 boolean isDefaulted()
          Returns whether this is a defaulted function definition.
 boolean isDeleted()
          Returns whether this is a deleted function definition.
 void setIsDefaulted(boolean isDefaulted)
          Make this a defaulted function definition, e.g.: C::C() = default;
 void setIsDeleted(boolean isDeleted)
          Make this a deleted function definition, e.g.: void f() = delete;
 
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTFunctionDefinition
getBody, getDeclarator, getDeclSpecifier, getScope, setBody, setDeclarator, setDeclSpecifier
 
Methods 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 Detail

MEMBER_INITIALIZER

static final ASTNodeProperty MEMBER_INITIALIZER
MEMBER_INITIALIZER is the role of a member initializer in the function definition.

Method Detail

getMemberInitializers

ICPPASTConstructorChainInitializer[] getMemberInitializers()
Returns the array of associated member initializers.


addMemberInitializer

void addMemberInitializer(ICPPASTConstructorChainInitializer initializer)
Adds a member initializer to this function definition.


copy

ICPPASTFunctionDefinition copy()
Description copied from interface: IASTNode
Returns 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

Specified by:
copy in interface IASTDeclaration
Specified by:
copy in interface IASTFunctionDefinition
Specified by:
copy in interface IASTNode
Since:
5.1

copy

ICPPASTFunctionDefinition copy(IASTNode.CopyStyle style)
Description copied from interface: IASTNode
Returns 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:
copy in interface IASTDeclaration
Specified by:
copy in interface IASTFunctionDefinition
Specified by:
copy in interface IASTNode
Parameters:
style - IASTNode.CopyStyle create a copy with or without locations. Please see IASTNode.CopyStyle for 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

Eclipse CDT
7.0

Copyright (c) IBM Corp. and others 2004, 2012. All Rights Reserved.