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 ASTNodePropertyFUNCTION_PARAMETERFUNCTION_PARAMETERrepresents the relationship between an K&R function declarator and the full parameter declarations.static ASTNodePropertyPARAMETER_NAMEPARAMETER_NAMErefers 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 ICASTKnRFunctionDeclaratorcopy()Returns a mutable copy of the tree rooted at this node.ICASTKnRFunctionDeclaratorcopy(IASTNode.CopyStyle style)Returns a mutable copy of the tree rooted at this node.IASTDeclaratorgetDeclaratorForParameterName(IASTName name)Map declarator to IASTName.IASTDeclaration[]getParameterDeclarations()Get parameters declarations.IASTName[]getParameterNames()Returns parameter names.voidsetParameterDeclarations(IASTDeclaration[] decls)Sets the parameter lists.voidsetParameterNames(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_NAMErefers to the names qualified in a K&R C function definition.
-
FUNCTION_PARAMETER
static final ASTNodeProperty FUNCTION_PARAMETER
FUNCTION_PARAMETERrepresents 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: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
ICASTKnRFunctionDeclarator copy(IASTNode.CopyStyle style)
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
-
-