Package org.eclipse.cdt.core.dom.ast
Interface IASTStandardFunctionDeclarator
- All Superinterfaces:
IASTAttributeOwner,IASTDeclarator,IASTFunctionDeclarator,IASTNameOwner,IASTNode
- All Known Subinterfaces:
ICPPASTDeductionGuide,ICPPASTFunctionDeclarator,ICPPASTFunctionTryBlockDeclarator
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
FieldsModifier and TypeFieldDescriptionstatic final ASTNodePropertyFUNCTION_PARAMETERrepresents the relationship between anIASTStandardFunctionDeclaratorand it's nestedIASTParameterDeclaration.Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
ATTRIBUTE, ATTRIBUTE_SPECIFIERFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTDeclarator
DECLARATOR_NAME, EMPTY_DECLARATOR_ARRAY, INITIALIZER, NESTED_DECLARATOR, POINTER_OPERATORFields 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 TypeMethodDescriptionvoidaddParameterDeclaration(IASTParameterDeclaration parameter) Add a parameter.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.Get the scope for this declarator.Gets the parameter declarations for the functionvoidsetVarArgs(boolean value) Set whether or not this function takes a variable number or arguments.booleanDoes this function take a variable number of arguments?Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
addAttribute, addAttributeSpecifier, getAttributes, getAttributeSpecifiersMethods inherited from interface org.eclipse.cdt.core.dom.ast.IASTDeclarator
addPointerOperator, getInitializer, getName, getNestedDeclarator, getPointerOperators, setInitializer, setName, setNestedDeclaratorMethods 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, setPropertyInParent
-
Field Details
-
FUNCTION_PARAMETER
FUNCTION_PARAMETERrepresents the relationship between anIASTStandardFunctionDeclaratorand it's nestedIASTParameterDeclaration.
-
-
Method Details
-
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
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
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 interfaceIASTDeclarator- Specified by:
copyin interfaceIASTFunctionDeclarator- 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 interfaceIASTDeclarator- Specified by:
copyin interfaceIASTFunctionDeclarator- 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
-