#include "symtab.h"
Public Member Functions | |
~scope_id_cache (void) | |
Static Public Member Functions | |
static scope_id | alloc (void) |
static void | create_instance (void) |
static void | free (scope_id scope) |
static bool | instance_ok (void) |
static std::list< scope_id > | scopes (void) |
Protected Types | |
typedef std::set< scope_id > ::const_iterator | set_const_iterator |
typedef std::set< scope_id > ::iterator | set_iterator |
Protected Member Functions | |
scope_id_cache (void) | |
Private Member Functions | |
scope_id_cache (const scope_id_cache &) | |
scope_id | do_alloc (void) |
void | do_free (scope_id scope) |
std::list< scope_id > | do_scopes (void) const |
scope_id_cache & | operator= (const scope_id_cache &) |
Static Private Member Functions | |
static void | cleanup_instance (void) |
Private Attributes | |
std::set< scope_id > | free_list |
std::set< scope_id > | in_use |
scope_id | next_available |
Static Private Attributes | |
static scope_id_cache * | instance = 0 |
Definition at line 52 of file symtab.h.
typedef std::set<scope_id>::const_iterator symbol_table::scope_id_cache::set_const_iterator [protected] |
typedef std::set<scope_id>::iterator symbol_table::scope_id_cache::set_iterator [protected] |
symbol_table::scope_id_cache::scope_id_cache | ( | void | ) | [inline, protected] |
Definition at line 63 of file symtab.h.
Referenced by create_instance().
symbol_table::scope_id_cache::~scope_id_cache | ( | void | ) | [inline] |
symbol_table::scope_id_cache::scope_id_cache | ( | const scope_id_cache & | ) | [private] |
static scope_id symbol_table::scope_id_cache::alloc | ( | void | ) | [inline, static] |
static void symbol_table::scope_id_cache::cleanup_instance | ( | void | ) | [inline, static, private] |
Definition at line 114 of file symtab.h.
Referenced by create_instance().
void symbol_table::scope_id_cache::create_instance | ( | void | ) | [static] |
Definition at line 74 of file symtab.cc.
References singleton_cleanup_list::add(), cleanup_instance(), instance, and scope_id_cache().
scope_id symbol_table::scope_id_cache::do_alloc | ( | void | ) | [inline, private] |
void symbol_table::scope_id_cache::do_free | ( | scope_id | scope | ) | [inline, private] |
std::list<scope_id> symbol_table::scope_id_cache::do_scopes | ( | void | ) | const [inline, private] |
static void symbol_table::scope_id_cache::free | ( | scope_id | scope | ) | [inline, static] |
Definition at line 74 of file symtab.h.
Referenced by symbol_table::cleanup(), and symbol_table::free_scope().
static bool symbol_table::scope_id_cache::instance_ok | ( | void | ) | [inline, static] |
scope_id_cache& symbol_table::scope_id_cache::operator= | ( | const scope_id_cache & | ) | [private] |
static std::list<scope_id> symbol_table::scope_id_cache::scopes | ( | void | ) | [inline, static] |
std::set<scope_id> symbol_table::scope_id_cache::free_list [private] |
std::set<scope_id> symbol_table::scope_id_cache::in_use [private] |
symbol_table::scope_id_cache * symbol_table::scope_id_cache::instance = 0 [static, private] |
Definition at line 112 of file symtab.h.
Referenced by create_instance().