#include <ucsym.h>
Collaboration diagram for Uc_scope:
Public Member Functions | |
Uc_scope (Uc_scope *p) | |
~Uc_scope () | |
Uc_scope * | get_parent () |
Uc_symbol * | search (const char *nm) |
Uc_symbol * | search_up (char *nm) |
void | add (Uc_symbol *sym) |
Uc_scope * | add_scope () |
int | add_function_symbol (Uc_function_symbol *fun) |
Private Types | |
typedef std::map< char *, Uc_symbol *, String_compare > | Sym_map |
Private Attributes | |
Uc_scope * | parent |
Sym_map | symbols |
std::vector< Uc_scope * > | scopes |
Definition at line 200 of file ucsym.h.
typedef std::map<char *, Uc_symbol *, String_compare> Uc_scope::Sym_map [private] |
Uc_scope::Uc_scope | ( | Uc_scope * | p | ) | [inline] |
Uc_scope* Uc_scope::get_parent | ( | ) | [inline] |
Uc_symbol* Uc_scope::search | ( | const char * | nm | ) | [inline] |
Definition at line 213 of file ucsym.h.
References symbols.
Referenced by Uc_function::is_dup(), Uc_function::search(), and Uc_function::search_up().
Uc_symbol * Uc_scope::search_up | ( | char * | nm | ) |
void Uc_scope::add | ( | Uc_symbol * | sym | ) | [inline] |
Uc_scope* Uc_scope::add_scope | ( | ) | [inline] |
Definition at line 230 of file ucsym.h.
References scopes, and Uc_scope().
Referenced by Uc_function::push_scope().
Here is the call graph for this function:
int Uc_scope::add_function_symbol | ( | Uc_function_symbol * | fun | ) |
Definition at line 401 of file ucsym.cc.
References Uc_symbol::get_name(), Uc_function_symbol::get_num_parms(), Uc_function_symbol::get_usecode_num(), and Uc_location::yyerror().
Referenced by Uc_function::add_function_symbol(), and Uc_function::add_global_function_symbol().
Here is the call graph for this function:
Uc_scope* Uc_scope::parent [private] |
Sym_map Uc_scope::symbols [private] |
std::vector<Uc_scope *> Uc_scope::scopes [private] |