61 vector<CInstance*> instanceList;
62 vector<CFunction*> functionList;
63 vector<CFref*> frefList;
65 vector<CPort*> portList;
68 vector<CPortDir*> portDirList;
75 int moduleDirectlyDefined;
92 CNode* packageImportDecls;
222 virtual void Dump( FILE* f );
269 void Cell(
int v ) { cell = v; }
289 void Precision(
int v ) { precision = v; hasTimescale = TRUE; }
299 void Unit(
int v ) { unit = v; hasTimescale = TRUE; }
398 void FixupPorts(
void );
403 virtual void CodeListChanged() { portDirListValid = FALSE; }
410 #endif // CMODULE_HPP
Declaration object for nets.
Definition: cnet.h:46
void ModuleIncluded(int v)
Set included attribute.
Definition: cmodule.h:171
virtual void Add(CInstance *instance)
void Unit(int v)
Set timescale unit.
Definition: cmodule.h:299
static CModule * LookupModule(CSymtab< CDecl > &symtab, char *aName)
Find module declaration from name.
void InlineParamDecls(int v)
Set inline parameter attribute.
Definition: cmodule.h:118
void SetPorts(CNode *ports)
Set module port list.
virtual void Dump(FILE *f)
Dump macro info to file descriptor.
virtual void Add(CNet *net)
Definition: cmodule.h:371
int IsDefined(void)
Get defined attribute.
Definition: cmodule.h:160
int Protect()
Get protect attribute.
Definition: cmodule.h:274
virtual vector< CInstance * > * GetInstanceList()
Get list if module instances.
int Cell()
Get cell attribute.
Definition: cmodule.h:264
int IsMacroModule(void)
Get macro module attribute.
virtual void PreVisit1(int(*func)(CNode *, void *), void *data)
void InlinePortDecls(int v)
Set inline port attribute.
Definition: cmodule.h:128
int ModuleIncluded()
Get included attribute.
Definition: cmodule.h:177
void Precision(int v)
Set timescale precision.
Definition: cmodule.h:289
void DefaultNetType(int v)
Set default net type attribute.
Definition: cmodule.h:316
virtual vector< CPort * > * GetPortList()
Get list if module ports.
Structure to hold file coordinates.
Definition: cdecl.h:47
Holder for character strings.
Definition: csymbol.h:44
Forward reference declaration.
Definition: cfref.h:51
void UnconnectedDrive(int v)
Set unconnected drive attribute.
Definition: cmodule.h:326
Bulk object allocation object.
Definition: cobstack.h:46
void SetMacroModule(int flag)
Set macro module attribute.
virtual vector< CFunction * > * GetFunctionList()
Get list of functions/tasks.
Primary data structure representing parse tree nodes.
Definition: cnode.h:197
virtual void Add(CFunction *function)
void SetModport(bool flag)
Set modport attribute.
Declaration object for module and gate instances.
Definition: cinstance.h:45
int ModuleDirectlyDefined()
Get directly defined attribute.
Definition: cmodule.h:155
void SetPrimitive(int flag)
Set primitive attribute.
CDecl * FindDecl(CSymbol *sym)
Find declaration in modules scope for given symbol.
virtual void PostSubVisit1(CNode *(*func)(CNode *, void *), void *data)
virtual void Add(CVar *var)
Definition: cmodule.h:362
void SetInterface(bool flag)
Set interface attribute.
void Cell(int v)
Set cell attribute.
Definition: cmodule.h:269
int InlineParamDecls()
Get inline parameter attribute.
Definition: cmodule.h:123
void SetDefined(int flag)
Set defined attribute.
Definition: cmodule.h:165
CModule(CSymbol *symbol, Coord_t *aLoc)
Create a module declaration.
void Protect(int v)
Set protect attribute.
Definition: cmodule.h:279
virtual void Add(CParam *param)
Definition: cmodule.h:389
Base class for describing declaration objects.
Definition: cdecl.h:164
bool IsInterface(void)
Get interface attribute.
Declaration object for variables.
Definition: cvar.h:50
virtual CDecl * Clone(CObstack *heap)
Create a clone of this declaration.
Definition: cmodule.h:113
Declaration object for parameters.
Definition: cparam.h:46
void ModuleDirectlyDefined(int v)
Set directly defined attribute.
Definition: cmodule.h:149
CNode * GetPorts()
Get modules port list.
Definition: cmodule.h:232
virtual void PostVisit1(void(*func)(CNode *, void *), void *data)
int InlinePortDecls()
Get inline port attribute.
Definition: cmodule.h:133
Declaration object for functions and tasks.
Definition: cfunction.h:50
virtual vector< CPortDir * > * GetPortDirList()
Get list if module ports declarations.
CNode * PackageImportDecls()
Get package import declarations.
Definition: cmodule.h:143
Declaration object for input/output/inout statements.
Definition: cportdir.h:45
int DefaultNetType()
Get default net type attribute.
Definition: cmodule.h:310
CSymtab< CDecl > symtab
Definition: cblock.h:63
Declaration class for block constructs.
Definition: cblock.h:52
int Precision()
Get timescale precision.
Definition: cmodule.h:284
int Unit()
Get timescale unit.
Definition: cmodule.h:294
bool IsModport(void)
Get modport attribute.
int IsPrimitive(void)
Get primitive attribute.
int UnconnectedDrive()
Get unconnected drive attribute.
Definition: cmodule.h:321
int HasTimescale()
Get timescale present attribute.
Definition: cmodule.h:304
void PackageImportDecls(CNode *v)
Set package import declarations.
Definition: cmodule.h:138