![]() |
|
Declaration object for parameters. More...
#include <cparam.h>
Public Member Functions | |
| CParam (CSymbol *symbol, Coord_t *aLoc, Decl_t type, CDataType *dataType) | |
| Create parameter declaration. | |
| virtual CDecl * | Clone (CObstack *heap) |
| Create a clone of this declaration. | |
| 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 int | IsWidthConstant (void) |
| Determine if packed width of declaration is constant, ie dependent upon only constants and parameters. | |
| virtual int | IsWidthVolatile (void) |
| Determine if packed width of declaration is volatile, ie depend upon parameters or variables. | |
| virtual int | IsWidthEvaluateable (void) |
| Determine if packed width of declaration can be evaluated. | |
| virtual INT32 | GetWidth (void) |
| Evaluate packed width of declaration. | |
| virtual CNode * | GetWidthExp (void) |
| Get expression representing width of declaration. | |
| virtual CNode * | GetMsb () |
| Get expression for declaration's msb. | |
| virtual CNode * | GetLsb () |
| Get expression for declaration's lsb. | |
| virtual void | Dump (FILE *f) |
| Dump parameter declaration info to file descriptor. | |
| 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. | |
| dataType | parameter data type |
Create a clone of this declaration.
| heap | heap to use for allocation. |
Implements CDecl.
| 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 CNode* CParam::GetLsb | ( | ) | [virtual] |
Get expression for declaration's lsb.
Reimplemented from CDecl.
| virtual CNode* CParam::GetMsb | ( | ) | [virtual] |
Get expression for declaration's msb.
Reimplemented from CDecl.
| virtual NodeType_t CParam::GetNodeType | ( | void | ) | [virtual] |
| virtual INT32 CParam::GetWidth | ( | void | ) | [virtual] |
Evaluate packed width of declaration.
| virtual CNode* CParam::GetWidthExp | ( | void | ) | [virtual] |
Get expression representing width of declaration.
| virtual int CParam::IsWidthConstant | ( | void | ) | [virtual] |
Determine if packed width of declaration is constant, ie dependent upon only constants and parameters.
| virtual int CParam::IsWidthEvaluateable | ( | void | ) | [virtual] |
Determine if packed width of declaration can be evaluated.
| virtual int CParam::IsWidthVolatile | ( | void | ) | [virtual] |
Determine if packed width of declaration is volatile, ie depend upon parameters or variables.
| 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::Specify | ( | int | v | ) | [inline] |
Set specify attribute.
| v | non-zero if declaration is a specparam. |
| int CParam::Specify | ( | void | ) | [inline] |
Get specify attribute.
1.7.1