![]() |
![]() |
Declaration object for parameters. More...
#include <cparam.h>
Public Member Functions | |
CParam (CSymbol *symbol, Coord_t *aLoc, Decl_t type) | |
Create parameter declaration. | |
CParam (const CParam ¶m) | |
Create a copy of parameter declaration. | |
virtual int | IsWidthConstant (void) |
Determine if width of declaration is constant, ie dependent upon only constants and parameters. | |
virtual int | IsWidthVolatile (void) |
Determine if width of declaration is volatile, ie depend upon parameters or variables. | |
virtual int | IsWidthEvaluateable (void) |
Determine if width of declaration can be evaluated. | |
virtual INT32 | GetWidth (void) |
Evaluate width of declaration. | |
virtual CNode * | GetWidthExp (void) |
Get expression representing width of declaration. | |
virtual int | WidthDirection (void) |
Evaluate current decl width direction. | |
void | Specify (int v) |
Set specify attribute. | |
int | Specify (void) |
Get specify attribute. | |
void | SetExpression (CNode *aExp) |
Set expression assigned to parameter. | |
CNode * | GetExpression (void) |
Get expression assigned to parameter. | |
virtual NodeType_t | GetNodeType (void) |
Get node expression type. | |
virtual void | Dump (FILE *f) |
Dump parameter declaration info to file descriptor. | |
void | SetSubType (Decl_t t) |
Set parameter declaration subtype. | |
Decl_t | GetSubType () |
Get parameter declaration subtype. | |
void | SetInlined (int v) |
Set inlined attribute. | |
int | GetInlined () |
Get inlined attribute. |
Declaration object for parameters.
Create parameter declaration.
symbol | name of declaration. | |
aLoc | file coordinates. | |
type | declaration type: eLOCALPARAM, ePARAM. |
CParam::CParam | ( | const CParam & | param | ) |
Create a copy of parameter declaration.
param | declaration to copy. |
virtual void CParam::Dump | ( | FILE * | f | ) | [virtual] |
Dump parameter declaration info to file descriptor.
f | file descriptor. |
Reimplemented from CDecl.
CNode* CParam::GetExpression | ( | void | ) |
Get expression assigned to parameter.
int CParam::GetInlined | ( | ) | [inline] |
Get inlined attribute.
virtual NodeType_t CParam::GetNodeType | ( | void | ) | [virtual] |
Decl_t CParam::GetSubType | ( | ) | [inline] |
Get parameter declaration subtype.
virtual INT32 CParam::GetWidth | ( | void | ) | [virtual] |
virtual CNode* CParam::GetWidthExp | ( | void | ) | [virtual] |
Get expression representing width of declaration.
Reimplemented from CDecl.
virtual int CParam::IsWidthConstant | ( | void | ) | [virtual] |
Determine if width of declaration is constant, ie dependent upon only constants and parameters.
Reimplemented from CDecl.
virtual int CParam::IsWidthEvaluateable | ( | void | ) | [virtual] |
Determine if width of declaration can be evaluated.
Reimplemented from CDecl.
virtual int CParam::IsWidthVolatile | ( | void | ) | [virtual] |
Determine if width of declaration is volatile, ie depend upon parameters or variables.
Reimplemented from CDecl.
void CParam::SetExpression | ( | CNode * | aExp | ) |
Set expression assigned to parameter.
aExp | value expression. |
void CParam::SetInlined | ( | int | v | ) | [inline] |
Set inlined attribute.
v | non-zero if parameter declaration was inlined in module definition. |
void CParam::SetSubType | ( | Decl_t | t | ) | [inline] |
Set parameter declaration subtype.
t | declaration subtype. |
int CParam::Specify | ( | void | ) | [inline] |
Get specify attribute.
void CParam::Specify | ( | int | v | ) | [inline] |
Set specify attribute.
v | non-zero if declaration is a specparam. |
virtual int CParam::WidthDirection | ( | void | ) | [virtual] |
Evaluate current decl width direction.
Expression must be constant.
Reimplemented from CDecl.