Package org.eclipse.cdt.core.dom.ast
Interface IASTStandardFunctionDeclarator
-
- All Superinterfaces:
IASTAttributeOwner
,IASTDeclarator
,IASTFunctionDeclarator
,IASTNameOwner
,IASTNode
- All Known Subinterfaces:
ICPPASTFunctionDeclarator
,ICPPASTFunctionTryBlockDeclarator
public interface IASTStandardFunctionDeclarator extends IASTFunctionDeclarator
This is a declarator for a non K&R C function.- 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
Fields Modifier and Type Field Description static ASTNodeProperty
FUNCTION_PARAMETER
FUNCTION_PARAMETER
represents the relationship between anIASTStandardFunctionDeclarator
and it's nestedIASTParameterDeclaration
.-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
ATTRIBUTE, ATTRIBUTE_SPECIFIER
-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTDeclarator
DECLARATOR_NAME, EMPTY_DECLARATOR_ARRAY, INITIALIZER, NESTED_DECLARATOR, POINTER_OPERATOR
-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNameOwner
r_declaration, r_definition, r_reference, r_unclear
-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addParameterDeclaration(IASTParameterDeclaration parameter)
Add a parameter.IASTStandardFunctionDeclarator
copy()
Returns a mutable copy of the tree rooted at this node.IASTStandardFunctionDeclarator
copy(IASTNode.CopyStyle style)
Returns a mutable copy of the tree rooted at this node.IScope
getFunctionScope()
Get the scope for this declarator.IASTParameterDeclaration[]
getParameters()
Gets the parameter declarations for the functionvoid
setVarArgs(boolean value)
Set whether or not this function takes a variable number or arguments.boolean
takesVarArgs()
Does this function take a variable number of arguments?-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
addAttribute, addAttributeSpecifier, getAttributes, getAttributeSpecifiers
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTDeclarator
addPointerOperator, getInitializer, getName, getNestedDeclarator, getPointerOperators, setInitializer, setName, setNestedDeclarator
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTNameOwner
getRoleForName
-
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
-
FUNCTION_PARAMETER
static final ASTNodeProperty FUNCTION_PARAMETER
FUNCTION_PARAMETER
represents the relationship between anIASTStandardFunctionDeclarator
and it's nestedIASTParameterDeclaration
.
-
-
Method Detail
-
getFunctionScope
IScope getFunctionScope()
Get the scope for this declarator. Returnsnull
, if this declarator does not declare a function-prototype or function-definition.- Since:
- 5.1
-
getParameters
IASTParameterDeclaration[] getParameters()
Gets the parameter declarations for the function- Returns:
- array of IASTParameterDeclaration
-
addParameterDeclaration
void addParameterDeclaration(IASTParameterDeclaration parameter)
Add a parameter.- Parameters:
parameter
-IASTParameterDeclaration
-
takesVarArgs
boolean takesVarArgs()
Does this function take a variable number of arguments?- Returns:
- boolean
-
setVarArgs
void setVarArgs(boolean value)
Set whether or not this function takes a variable number or arguments.- Parameters:
value
- boolean
-
copy
IASTStandardFunctionDeclarator 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 to
copy(CopyStyle.withoutLocations)
.- Specified by:
copy
in interfaceIASTDeclarator
- Specified by:
copy
in interfaceIASTFunctionDeclarator
- Specified by:
copy
in interfaceIASTNode
- Since:
- 5.1
-
copy
IASTStandardFunctionDeclarator 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 interfaceIASTDeclarator
- Specified by:
copy
in interfaceIASTFunctionDeclarator
- Specified by:
copy
in interfaceIASTNode
- Parameters:
style
-IASTNode.CopyStyle
create a copy with or without locations. Please seeIASTNode.CopyStyle
for restrictions on copies with Locations.- Since:
- 5.3
-
-