![]() |
![]() |
#include <cmodule.h>
Public Member Functions | |
CModule (CSymbol *symbol, Coord_t *aLoc) | |
Create a module declaration. | |
virtual CDecl * | Clone (CObstack *heap) |
Create a clone of this declaration. | |
void | InlineParamDecls (int v) |
Set inline parameter attribute. | |
int | InlineParamDecls () |
Get inline parameter attribute. | |
void | InlinePortDecls (int v) |
Set inline port attribute. | |
int | InlinePortDecls () |
Get inline port attribute. | |
void | ModuleDirectlyDefined (int v) |
Set directly defined attribute. | |
int | ModuleDirectlyDefined () |
Get directly defined attribute. | |
int | IsDefined (void) |
Get defined attribute. | |
void | SetDefined (int flag) |
Set defined attribute. | |
void | ModuleIncluded (int v) |
Set included attribute. | |
int | ModuleIncluded () |
Get included attribute. | |
int | IsMacroModule (void) |
Get macro module attribute. | |
void | SetMacroModule (int flag) |
Set macro module attribute. | |
int | IsPrimitive (void) |
Get primitive attribute. | |
void | SetPrimitive (int flag) |
Set primitive attribute. | |
virtual void | Dump (FILE *f) |
Dump macro info to file descriptor. | |
void | SetPorts (CNode *ports) |
Set module port list. | |
CNode * | GetPorts () |
Get modules port list. | |
virtual vector< CFunction * > * | GetFunctionList () |
Get list of functions/tasks. | |
virtual vector< CInstance * > * | GetInstanceList () |
Get list if module instances. | |
virtual vector< CPort * > * | GetPortList () |
Get list if module ports. | |
virtual vector< CPortDir * > * | GetPortDirList () |
Get list if module ports declarations. | |
CDecl * | FindDecl (CSymbol *sym) |
Find declaration in modules scope for given symbol. | |
int | Cell () |
Get cell attribute. | |
void | Cell (int v) |
Set cell attribute. | |
int | Protect () |
Get protect attribute. | |
void | Protect (int v) |
Set protect attribute. | |
int | Precision () |
Get timescale precision. | |
void | Precision (int v) |
Set timescale precision. | |
int | Unit () |
Get timescale unit. | |
void | Unit (int v) |
Set timescale unit. | |
int | HasTimescale () |
Get timescale present attribute. | |
int | DefaultNetType () |
Get default net type attribute. | |
void | DefaultNetType (int v) |
Set default net type attribute. | |
int | UnconnectedDrive () |
Get unconnected drive attribute. | |
void | UnconnectedDrive (int v) |
Set unconnected drive attribute. | |
virtual void | Add (CFunction *function) |
virtual void | Add (CInstance *instance) |
virtual void | Add (CFref *fref) |
virtual void | Add (CVar *var) |
virtual void | Add (CNet *net) |
virtual void | Add (CNode *n) |
virtual void | Add (CParam *param) |
Static Public Member Functions | |
static CModule * | LookupModule (CSymtab< CDecl > &symtab, char *aName) |
Find module declaration from name. |
CModule::CModule | ( | CSymbol * | symbol, |
Coord_t * | aLoc | ||
) |
Create a module declaration.
symbol | name of module. |
aLoc | file coordinates of declaration. |
virtual void CModule::Add | ( | CFunction * | function | ) | [virtual] |
Currently the construct must be added with this routine as well as by adding a node to the code tree.
Add function/task to module.
function | pointer to function/task object |
virtual void CModule::Add | ( | CInstance * | instance | ) | [virtual] |
virtual void CModule::Add | ( | CFref * | fref | ) | [virtual] |
virtual void CModule::Add | ( | CVar * | var | ) | [inline, virtual] |
virtual void CModule::Add | ( | CNet * | net | ) | [inline, virtual] |
virtual void CModule::Add | ( | CNode * | n | ) | [virtual] |
virtual void CModule::Add | ( | CParam * | param | ) | [inline, virtual] |
int CModule::Cell | ( | ) | [inline] |
Get cell attribute.
void CModule::Cell | ( | int | v | ) | [inline] |
Set cell attribute.
v | non-zero if module has been tagged as a cell. |
virtual CDecl* CModule::Clone | ( | CObstack * | heap | ) | [inline, virtual] |
Create a clone of this declaration.
heap | heap to use for allocation. |
Reimplemented from CBlock.
int CModule::DefaultNetType | ( | ) | [inline] |
Get default net type attribute.
void CModule::DefaultNetType | ( | int | v | ) | [inline] |
Set default net type attribute.
v | net type: vpiWire, vpiTri, vpiTri0, vpiWand, vpiTriAnd, vpiTriAnd, vpiTri1, vpiWor, vpiTriOr, VpiTriReg |
virtual void CModule::Dump | ( | FILE * | f | ) | [virtual] |
CDecl* CModule::FindDecl | ( | CSymbol * | sym | ) |
Find declaration in modules scope for given symbol.
sym | symbol to lookup. |
virtual vector<CFunction*>* CModule::GetFunctionList | ( | ) | [virtual] |
Get list of functions/tasks.
virtual vector<CInstance*>* CModule::GetInstanceList | ( | ) | [virtual] |
Get list if module instances.
virtual vector<CPortDir*>* CModule::GetPortDirList | ( | ) | [virtual] |
Get list if module ports declarations.
Reimplemented from CBlock.
virtual vector<CPort*>* CModule::GetPortList | ( | ) | [virtual] |
Get list if module ports.
CNode* CModule::GetPorts | ( | ) | [inline] |
Get modules port list.
int CModule::HasTimescale | ( | ) | [inline] |
Get timescale present attribute.
void CModule::InlineParamDecls | ( | int | v | ) | [inline] |
Set inline parameter attribute.
v | non-zero if parameters have been declared inline. |
int CModule::InlineParamDecls | ( | ) | [inline] |
Get inline parameter attribute.
void CModule::InlinePortDecls | ( | int | v | ) | [inline] |
Set inline port attribute.
v | non-zero if port have been declared inline. |
int CModule::InlinePortDecls | ( | ) | [inline] |
Get inline port attribute.
int CModule::IsDefined | ( | void | ) | [inline] |
Get defined attribute.
int CModule::IsMacroModule | ( | void | ) |
Get macro module attribute.
int CModule::IsPrimitive | ( | void | ) |
Get primitive attribute.
static CModule* CModule::LookupModule | ( | CSymtab< CDecl > & | symtab, |
char * | aName | ||
) | [static] |
Find module declaration from name.
If it doesn't exist create an undefined module object and tie it to name.
symtab | symbol table to search or insert into. |
aName | name of module. |
void CModule::ModuleDirectlyDefined | ( | int | v | ) | [inline] |
Set directly defined attribute.
v | non-zero if module has been defined in a input file directly provide by the command line. |
int CModule::ModuleDirectlyDefined | ( | ) | [inline] |
Get directly defined attribute.
void CModule::ModuleIncluded | ( | int | v | ) | [inline] |
Set included attribute.
v | non-zero if module declaration has been included in a compilation unit. |
int CModule::ModuleIncluded | ( | ) | [inline] |
Get included attribute.
int CModule::Precision | ( | ) | [inline] |
Get timescale precision.
void CModule::Precision | ( | int | v | ) | [inline] |
Set timescale precision.
v | precision: 0: s, -3: ms, -6: us, -9: ns, -12: ps, -15: fs |
int CModule::Protect | ( | ) | [inline] |
Get protect attribute.
void CModule::Protect | ( | int | v | ) | [inline] |
Set protect attribute.
v | non-zero if module has been tagged as protected. |
void CModule::SetDefined | ( | int | flag | ) | [inline] |
Set defined attribute.
flag | non-zero if module has been defined. |
void CModule::SetMacroModule | ( | int | flag | ) |
Set macro module attribute.
flag | non-zero if module has been declare as a macro module. |
void CModule::SetPorts | ( | CNode * | ports | ) |
Set module port list.
ports | port list. |
void CModule::SetPrimitive | ( | int | flag | ) |
Set primitive attribute.
flag | non-zero if module is a udp. |
int CModule::UnconnectedDrive | ( | ) | [inline] |
Get unconnected drive attribute.
void CModule::UnconnectedDrive | ( | int | v | ) | [inline] |
Set unconnected drive attribute.
v | unconnected drive attribute: vpiHighZ, vpiPull0, vpiPull1 |
int CModule::Unit | ( | ) | [inline] |
Get timescale unit.
void CModule::Unit | ( | int | v | ) | [inline] |
Set timescale unit.
v | precision: 0: s, -3: ms, -6: us, -9: ns, -12: ps, -15: fs |