Interface ICASTKnRFunctionDeclarator
-
- All Superinterfaces:
IASTAttributeOwner
,IASTDeclarator
,IASTFunctionDeclarator
,IASTNameOwner
,IASTNode
public interface ICASTKnRFunctionDeclarator extends IASTFunctionDeclarator
This is the declarator for a 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 an K&R function declarator and the full parameter declarations.static ASTNodeProperty
PARAMETER_NAME
PARAMETER_NAME
refers to the names qualified in a K&R C function definition.-
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 ICASTKnRFunctionDeclarator
copy()
Returns a mutable copy of the tree rooted at this node.ICASTKnRFunctionDeclarator
copy(IASTNode.CopyStyle style)
Returns a mutable copy of the tree rooted at this node.IASTDeclarator
getDeclaratorForParameterName(IASTName name)
Map declarator to IASTName.IASTDeclaration[]
getParameterDeclarations()
Get parameters declarations.IASTName[]
getParameterNames()
Returns parameter names.void
setParameterDeclarations(IASTDeclaration[] decls)
Sets the parameter lists.void
setParameterNames(IASTName[] names)
Sets the parameter names.-
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
-
PARAMETER_NAME
static final ASTNodeProperty PARAMETER_NAME
PARAMETER_NAME
refers to the names qualified in a K&R C function definition.
-
FUNCTION_PARAMETER
static final ASTNodeProperty FUNCTION_PARAMETER
FUNCTION_PARAMETER
represents the relationship between an K&R function declarator and the full parameter declarations.
-
-
Method Detail
-
setParameterNames
void setParameterNames(IASTName[] names)
Sets the parameter names. TODO - this should change to add- Parameters:
names
-IASTName []
-
getParameterNames
IASTName[] getParameterNames()
Returns parameter names.- Returns:
IASTName []
-
setParameterDeclarations
void setParameterDeclarations(IASTDeclaration[] decls)
Sets the parameter lists.- Parameters:
decls
- TODO - replace w/zadd
-
getParameterDeclarations
IASTDeclaration[] getParameterDeclarations()
Get parameters declarations.- Returns:
IASTDeclaration []
-
getDeclaratorForParameterName
IASTDeclarator getDeclaratorForParameterName(IASTName name)
Map declarator to IASTName.- Parameters:
name
-IASTName
-
copy
ICASTKnRFunctionDeclarator 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
ICASTKnRFunctionDeclarator 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
-
-