lestes::md::symbols::symbol_register Class Reference

Register of global symbols. More...

#include <symbol_register.g.hh>

Inheritance diagram for lestes::md::symbols::symbol_register:

Inheritance graph
[legend]
List of all members.

Public Member Functions

ptr< ::lestes::std::set< srp<
::lestes::lang::cplus::sem::ss_declaration > > > 
externals_get () const
 The method externals_get returns the value of the field symbol_register::externals.
void externals_set (const ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > &)
 The method externals_set sets the field symbol_register::externals to the given value.
ptr< ::lestes::std::set< srp<
::lestes::lang::cplus::sem::ss_declaration > > > 
globals_get () const
 The method globals_get returns the value of the field symbol_register::globals.
void globals_set (const ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > &)
 The method globals_set sets the field symbol_register::globals to the given value.
ptr< ::lestes::std::set< srp<
::lestes::lang::cplus::sem::ss_declaration > > > 
internals_get () const
 The method internals_get returns the value of the field symbol_register::internals.
void internals_set (const ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > &)
 The method internals_set sets the field symbol_register::internals to the given value.
void register_external (ptr< ::lestes::lang::cplus::sem::ss_declaration > symbol)
 Registers an external symbol.
void register_global (ptr< ::lestes::lang::cplus::sem::ss_declaration > symbol)
 Registers a global symbol.
void register_internal (ptr< ::lestes::lang::cplus::sem::ss_declaration > symbol)
 Registers an internal symbol.
virtual void register_symbol (ptr< ::lestes::lang::cplus::sem::ss_declaration > symbol)
 Registers a symbol.
void emit_global_declarations (::std::ostream &output)
 Emits global delarations for registered symbols.
virtual ptr< reflection_listreflection_get () const
 for purposes of dumping
virtual ptr< field_list_listfield_values_get () const
 for purposes of dumping

Static Public Member Functions

static ptr< symbol_registersingleton_instance_get ()
 The method singleton_instance_get returns the value of the field symbol_register::singleton_instance.
static void singleton_instance_set (const ptr< symbol_register > &)
 The method singleton_instance_set sets the field symbol_register::singleton_instance to the given value.
static ptr< symbol_registerinstance ()
static ptr< symbol_registercreate (ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > a__symbol_register__externals, ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > a__symbol_register__globals, ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > a__symbol_register__internals)
 First generated factory method for class symbol_register.
static ptr< symbol_registercreate ()
 Second generated factory method for class symbol_register.

Protected Member Functions

 symbol_register (ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > a__symbol_register__externals, ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > a__symbol_register__globals, ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > a__symbol_register__internals)
 Generated constructor for class symbol_register.
virtual void gc_mark ()
 Marking routine for class symbol_register.

Private Attributes

srp< ::lestes::std::set< srp<
::lestes::lang::cplus::sem::ss_declaration > > > 
externals
 Registered external symbols.
srp< ::lestes::std::set< srp<
::lestes::lang::cplus::sem::ss_declaration > > > 
globals
 Registered global symbols.
srp< ::lestes::std::set< srp<
::lestes::lang::cplus::sem::ss_declaration > > > 
internals
 Registered internal symbols.

Static Private Attributes

static ptr< symbol_registersingleton_instance = NULL
static ptr< reflection_listreflection = reflection

Detailed Description

Register of global symbols.

Holds list of global symbols (functions, variables) defined within translation unit. Global asm symbol declarations are generated from it during asm code generation phase.


Constructor & Destructor Documentation

lestes::md::symbols::symbol_register::symbol_register ( ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > >  a__symbol_register__externals,
ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > >  a__symbol_register__globals,
ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > >  a__symbol_register__internals 
) [protected]

Generated constructor for class symbol_register.

Generated constructor for class symbol_register.

Author:
lsg


Member Function Documentation

ptr< symbol_register > lestes::md::symbols::symbol_register::singleton_instance_get (  )  [static]

The method singleton_instance_get returns the value of the field symbol_register::singleton_instance.

Returns:
The value of symbol_register::singleton_instance.
Author:
lsg

void lestes::md::symbols::symbol_register::singleton_instance_set ( const ptr< symbol_register > &  x  )  [static]

The method singleton_instance_set sets the field symbol_register::singleton_instance to the given value.

Parameters:
[in] x The new value to set symbol_register::singleton_instance to.
Author:
lsg

ptr<::lestes::std::set< srp<::lestes::lang::cplus::sem::ss_declaration > > > lestes::md::symbols::symbol_register::externals_get (  )  const

The method externals_get returns the value of the field symbol_register::externals.

Returns:
The value of symbol_register::externals.
Author:
lsg

void lestes::md::symbols::symbol_register::externals_set ( const ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > &  x  ) 

The method externals_set sets the field symbol_register::externals to the given value.

Parameters:
[in] x The new value to set symbol_register::externals to.
Author:
lsg

ptr<::lestes::std::set< srp<::lestes::lang::cplus::sem::ss_declaration > > > lestes::md::symbols::symbol_register::globals_get (  )  const

The method globals_get returns the value of the field symbol_register::globals.

Returns:
The value of symbol_register::globals.
Author:
lsg

void lestes::md::symbols::symbol_register::globals_set ( const ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > &  x  ) 

The method globals_set sets the field symbol_register::globals to the given value.

Parameters:
[in] x The new value to set symbol_register::globals to.
Author:
lsg

ptr<::lestes::std::set< srp<::lestes::lang::cplus::sem::ss_declaration > > > lestes::md::symbols::symbol_register::internals_get (  )  const

The method internals_get returns the value of the field symbol_register::internals.

Returns:
The value of symbol_register::internals.
Author:
lsg

void lestes::md::symbols::symbol_register::internals_set ( const ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > &  x  ) 

The method internals_set sets the field symbol_register::internals to the given value.

Parameters:
[in] x The new value to set symbol_register::internals to.
Author:
lsg

ptr< symbol_register > lestes::md::symbols::symbol_register::instance (  )  [static]

void lestes::md::symbols::symbol_register::register_external ( ptr< ::lestes::lang::cplus::sem::ss_declaration symbol  ) 

Registers an external symbol.

void lestes::md::symbols::symbol_register::register_global ( ptr< ::lestes::lang::cplus::sem::ss_declaration symbol  ) 

Registers a global symbol.

void lestes::md::symbols::symbol_register::register_internal ( ptr< ::lestes::lang::cplus::sem::ss_declaration symbol  ) 

Registers an internal symbol.

virtual void lestes::md::symbols::symbol_register::register_symbol ( ptr< ::lestes::lang::cplus::sem::ss_declaration symbol  )  [virtual]

Registers a symbol.

Implements lestes::md::symbols::symbol_register_base.

void lestes::md::symbols::symbol_register::emit_global_declarations ( ::std::ostream &  output  ) 

Emits global delarations for registered symbols.

Parameters:
output Output.

ptr< symbol_register > lestes::md::symbols::symbol_register::create ( ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > >  a__symbol_register__externals,
ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > >  a__symbol_register__globals,
ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > >  a__symbol_register__internals 
) [static]

First generated factory method for class symbol_register.

This factory method for class symbol_register takes values of all fields as arguments.

Author:
lsg

ptr< symbol_register > lestes::md::symbols::symbol_register::create ( void   )  [static]

Second generated factory method for class symbol_register.

This factory method for class symbol_register uses initializers.

Author:
lsg

ptr< object::reflection_list > lestes::md::symbols::symbol_register::reflection_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::md::symbols::symbol_register_base.

ptr< object::field_list_list > lestes::md::symbols::symbol_register::field_values_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::md::symbols::symbol_register_base.

void lestes::md::symbols::symbol_register::gc_mark ( void   )  [protected, virtual]

Marking routine for class symbol_register.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::md::symbols::symbol_register_base.


Member Data Documentation

ptr< symbol_register > lestes::md::symbols::symbol_register::singleton_instance = NULL [static, private]

srp< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > lestes::md::symbols::symbol_register::externals [private]

Registered external symbols.

srp< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > lestes::md::symbols::symbol_register::globals [private]

Registered global symbols.

srp< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > lestes::md::symbols::symbol_register::internals [private]

Registered internal symbols.

ptr< object::reflection_list > lestes::md::symbols::symbol_register::reflection = reflection [static, private]

Reimplemented from lestes::md::symbols::symbol_register_base.


The documentation for this class was generated from the following files:
Generated on Mon Feb 12 18:49:23 2007 for lestes by doxygen 1.5.1-20070107