Eclipse CDT
7.0

org.eclipse.cdt.core.dom.ast.gnu.c
Interface ICASTKnRFunctionDeclarator

All Superinterfaces:
IASTAttributeOwner, IASTDeclarator, IASTFunctionDeclarator, IASTNameOwner, IASTNode

public interface ICASTKnRFunctionDeclarator
extends IASTFunctionDeclarator

This is the declarator for a K&R C Function.


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
IASTNode.CopyStyle
 
Field Summary
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.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.IASTAttributeOwner
ATTRIBUTE
 
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY
 
Method Summary
 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.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.IASTAttributeOwner
addAttribute, getAttributes
 
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

Specified by:
copy in interface IASTDeclarator
Specified by:
copy in interface IASTFunctionDeclarator
Specified by:
copy in interface IASTNode
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 interface IASTDeclarator
Specified by:
copy in interface IASTFunctionDeclarator
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

Eclipse CDT
7.0

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