![]() |
|
#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 |
1.7.6.1