#include <sym.h>
Inheritance diagram for sym_scoped:
Public Member Functions | |
sym_scoped (STRING n) | |
sym_scoped () | |
void | set_scope (pSym scope) |
const pSym | get_parent_scope (void) |
Private Attributes | |
pSym | parent_scope |
These include:
These items can all be found in a symbol table in their local scope.
Subprograms not only have scope, but they also have an associated synbol table.
Exceptions (e.g., objects that are NOT sym_scoped, but have scope information)
Processes
Although a process may have a name, its not clear that this name is useful for anything, except adding code reability. A process is not looked up in the symbol table, so it is not a sym_scoped object (or even a sym derived object). But a process _does_ have an associated symbol table.
Packages
A package has scope (e.g., local types, constants, etc). But packages are in the global scope. Its not clear that packages will survive after elaboration. </p.
Definition at line 332 of file sym.h.
|
Definition at line 337 of file sym.h. References NULL, and parent_scope.
00337 : sym( n ) 00338 { 00339 parent_scope = NULL; 00340 } |
|
Definition at line 342 of file sym.h. References NULL, and parent_scope.
00343 { 00344 parent_scope = NULL; 00345 } |
|
Reimplemented from sym. Definition at line 351 of file sym.h. References parent_scope.
00352 { 00353 return parent_scope; 00354 } |
|
Reimplemented from sym. Definition at line 347 of file sym.h. References parent_scope.
00348 { 00349 parent_scope = scope; 00350 } |
|
Definition at line 334 of file sym.h. Referenced by get_parent_scope(), set_scope(), and sym_scoped(). |