C-Breeze
C Compiler Infrastructure

[ Project home page]
Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

Labels_table Class Reference

#include <symbol.h>

Inheritance diagram for Labels_table:

SymbolTable< labelNode * > List of all members.

Public Member Functions

 Labels_table ()
void mark_nodes (void)
void reset ()
labelNodeinsert (const string &name, labelNode *sym)
labelNodelookup (const string &name)
void print (FILE *out)
string insert_unique (const string &root, labelNode *sym)
void enter_scope ()
void exit_scope ()

Private Member Functions

void shadow (labelNode *create, labelNode *shadowed)
void notify_exit_scope (labelNode *dead)

Constructor & Destructor Documentation

Labels_table::Labels_table  
 

Definition at line 250 of file symbol.cc.


Member Function Documentation

void SymbolTable< labelNode * >::enter_scope   [inherited]
 

void SymbolTable< labelNode * >::exit_scope   [inherited]
 

labelNode * SymbolTable< labelNode * >::insert const string &    name,
labelNode   sym
[inherited]
 

Referenced by goto_label_walker::at_label().

string SymbolTable< labelNode * >::insert_unique const string &    root,
labelNode   sym
[inherited]
 

Referenced by name_mangle_walker::at_label().

labelNode * SymbolTable< labelNode * >::lookup const string &    name [inherited]
 

Referenced by goto_label_walker::at_goto().

void SymbolTable< labelNode * >::mark_nodes void    [inherited]
 

void Labels_table::notify_exit_scope labelNode   dead [private, virtual]
 

Implements SymbolTable< labelNode * >.

Definition at line 292 of file symbol.cc.

References Node::coord(), labelNode::is_undeclared(), Coord::is_unknown(), labelNode::name(), labelNode::references(), CBZ::SyntaxError(), and CBZ::Warning().

void SymbolTable< labelNode * >::print FILE *    out [inherited]
 

void SymbolTable< labelNode * >::reset   [inherited]
 

Referenced by goto_label_walker::fixup().

void Labels_table::shadow labelNode   create,
labelNode   shadowed
[private, virtual]
 

Implements SymbolTable< labelNode * >.

Definition at line 288 of file symbol.cc.


The documentation for this class was generated from the following files:

Generated on August 27, 2003
Back to the C-Breeze home page