rasdaman complete source
Classes | Public Member Functions | Public Attributes | List of all members
YSymbolTable Class Reference

#include <symbtbl.hh>

Classes

struct  Scope
 

Public Member Functions

 YSymbolTable ()
 
const YSymbolget_symbol (const char *name) const
 get the corresponding symbol to name More...
 
bool scoped_symbol (YSymbol **result, const char *name, const YWhere &where)
 creates a symbol in the current scoped More...
 
const YSymbolget_defining_symbol () const
 get the symbol that defines this scope More...
 
bool search_scope (const char *, YSymbol *&) const
 search only current scope More...
 
bool search_scopes (const char *, YSymbol *&) const
 search current scope and all abov More...
 
bool search_scopes_above (const YSymbol *, YSymbol *&) const
 search me all scopes above me, and not myself More...
 
bool search_my_scope (const char *, const YSymbol *, YSymbol *&) const
 search a specified scope of a symbol More...
 
bool search_global_scope (const char *, YSymbol *&) const
 search the global_scope More...
 
void insert_symbol (YSymbol *) const
 
void push_scope (YSymbol *)
 
const YSymbolpop_scope ()
 
bool search_this_scope (const char *, const Scope *, YSymbol *&) const
 

Public Attributes

Scopescope
 
Scopeglobal_scope
 

Detailed Description

Contains the all the symbols and the scopetree.

Constructor & Destructor Documentation

YSymbolTable::YSymbolTable ( )

Member Function Documentation

const YSymbol* YSymbolTable::get_defining_symbol ( ) const

get the symbol that defines this scope

const YSymbol* YSymbolTable::get_symbol ( const char *  name) const

get the corresponding symbol to name

void YSymbolTable::insert_symbol ( YSymbol ) const
const YSymbol* YSymbolTable::pop_scope ( )
void YSymbolTable::push_scope ( YSymbol )
bool YSymbolTable::scoped_symbol ( YSymbol **  result,
const char *  name,
const YWhere where 
)

creates a symbol in the current scoped

bool YSymbolTable::search_global_scope ( const char *  ,
YSymbol *&   
) const

search the global_scope

bool YSymbolTable::search_my_scope ( const char *  ,
const YSymbol ,
YSymbol *&   
) const

search a specified scope of a symbol

bool YSymbolTable::search_scope ( const char *  ,
YSymbol *&   
) const

search only current scope

bool YSymbolTable::search_scopes ( const char *  ,
YSymbol *&   
) const

search current scope and all abov

bool YSymbolTable::search_scopes_above ( const YSymbol ,
YSymbol *&   
) const

search me all scopes above me, and not myself

bool YSymbolTable::search_this_scope ( const char *  ,
const Scope ,
YSymbol *&   
) const
inline

Member Data Documentation

Scope* YSymbolTable::global_scope
Scope* YSymbolTable::scope

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