#include <sa_context.g.hh>
Inheritance diagram for lestes::lang::cplus::sem::sa_context_manager_concrete:

Public Member Functions | |
| virtual ptr< sa_context > | current () |
| virtual void | push (ptr< sa_context > context) |
| virtual void | pop () |
| virtual ptr< reflection_list > | reflection_get () const |
| for purposes of dumping | |
| virtual ptr< field_list_list > | field_values_get () const |
| for purposes of dumping | |
Static Public Member Functions | |
| static ptr< sa_context_manager_concrete > | instance () |
| static ptr< sa_context_manager_concrete > | create (ptr< ::lestes::std::stack< srp< sa_context > > > a__sa_context_manager_concrete__contexts) |
| First generated factory method for class sa_context_manager_concrete. | |
Protected Member Functions | |
| sa_context_manager_concrete (ptr< ::lestes::std::stack< srp< sa_context > > > a__sa_context_manager_concrete__contexts) | |
| Generated constructor for class sa_context_manager_concrete. | |
| virtual void | gc_mark () |
| Marking routine for class sa_context_manager_concrete. | |
Private Attributes | |
| srp< ::lestes::std::stack< srp< sa_context > > > | contexts |
Static Private Attributes | |
| static ptr< sa_context_manager_concrete > | singleton = singleton |
| static ptr< reflection_list > | reflection = reflection |
Definition at line 149 of file sa_context.g.hh.
| lestes::lang::cplus::sem::sa_context_manager_concrete::sa_context_manager_concrete | ( | ptr< ::lestes::std::stack< srp< sa_context > > > | a__sa_context_manager_concrete__contexts | ) | [protected] |
Generated constructor for class sa_context_manager_concrete.
Generated constructor for class sa_context_manager_concrete.
Definition at line 149 of file sa_context.g.cc.
Referenced by create().
00150 : sa_context_manager(), contexts(checked(a__sa_context_manager_concrete__contexts)) 00151 {}
| ptr< sa_context_manager_concrete > lestes::lang::cplus::sem::sa_context_manager_concrete::instance | ( | void | ) | [static] |
Returns the only instance of the concrete SA context manager.
Reimplemented from lestes::lang::cplus::sem::sa_context_manager.
Definition at line 59 of file sa_context.cc.
References lestes::lang::cplus::sem::ss_access_specifier::ACCESS_PUBLIC, lestes::lang::cplus::sem::sa_context::create(), lestes::lang::cplus::sem::sa_sa_context::create(), lestes::lang::cplus::sem::sa_ss_context::create(), lestes::lang::cplus::sem::sa_as_context::create(), lestes::intercode::intercode::create(), create(), loc, lestes::lang::cplus::sem::ss_decl_seq::root_instance(), and singleton.
Referenced by lestes::lang::cplus::sem::sa_context_manager::instance().
00060 { 00061 if (!singleton) { 00062 ptr< ::lestes::std::stack< srp<sa_context> > > st = 00063 ::lestes::std::stack< srp<sa_context> >::create(); 00064 ptr<ss_decl_seq> decl_seq = ss_decl_seq::root_instance(); 00065 ptr<source_location> loc = decl_seq->location_get(); 00066 ptr<as_name> name = as_name::create(loc,NULL,as_global_namespace_fake_id::create(loc),false); 00067 ptr<sa_as_context> asctx = sa_as_context::create(name,as_access_specifier_public::create(loc)); 00068 ptr<sa_ss_context> ssctx = sa_ss_context::create(decl_seq,ss_access_specifier::ACCESS_PUBLIC); 00069 ptr<sa_sa_context> sactx = sa_sa_context::create(); 00070 ptr<sa_context> ctx = sa_context::create(asctx,ssctx,sactx); 00071 st->push(ctx); 00072 singleton = sa_context_manager_concrete::create(st); 00073 } 00074 return singleton; 00075 }
| ptr< sa_context > lestes::lang::cplus::sem::sa_context_manager_concrete::current | ( | void | ) | [virtual] |
Returns current context.
Implements lestes::lang::cplus::sem::sa_context_manager.
Definition at line 82 of file sa_context.cc.
References checked, contexts, and lassert.
| void lestes::lang::cplus::sem::sa_context_manager_concrete::push | ( | ptr< sa_context > | context | ) | [virtual] |
Implements lestes::lang::cplus::sem::sa_context_manager.
Definition at line 88 of file sa_context.cc.
References contexts, and lassert.
| void lestes::lang::cplus::sem::sa_context_manager_concrete::pop | ( | ) | [virtual] |
Implements lestes::lang::cplus::sem::sa_context_manager.
Definition at line 94 of file sa_context.cc.
References contexts.
00095 { 00096 contexts->pop(); 00097 }
| ptr< sa_context_manager_concrete > lestes::lang::cplus::sem::sa_context_manager_concrete::create | ( | ptr< ::lestes::std::stack< srp< sa_context > > > | a__sa_context_manager_concrete__contexts | ) | [static] |
First generated factory method for class sa_context_manager_concrete.
This factory method for class sa_context_manager_concrete takes values of all fields as arguments.
Definition at line 140 of file sa_context.g.cc.
References sa_context_manager_concrete().
Referenced by instance().
00141 { 00142 return ptr< sa_context_manager_concrete > ( new sa_context_manager_concrete(a__sa_context_manager_concrete__contexts) ); 00143 }
| ptr< object::reflection_list > lestes::lang::cplus::sem::sa_context_manager_concrete::reflection_get | ( | ) | const [virtual] |
for purposes of dumping
Reimplemented from lestes::lang::cplus::sem::sa_context_manager.
Definition at line 153 of file sa_context.g.cc.
References lestes::std::list< T >::create(), reflection, and lestes::lang::cplus::sem::sa_context_manager::reflection_get().
00154 { 00155 if (!reflection) { 00156 typedef class_reflection::field_metadata md; 00157 typedef class_reflection::field_metadata_list mdlist; 00158 ptr<mdlist> mdl = mdlist::create(); 00159 mdl->push_back( md::create( "contexts", "stack< srp< sa_context > >" ) ); 00160 mdl->push_back( md::create( "singleton", "sa_context_manager_concrete" ) ); 00161 reflection = reflection_list::create( sa_context_manager::reflection_get() ); 00162 reflection->push_back( class_reflection::create( "sa_context_manager_concrete", mdl ) ); 00163 } 00164 return reflection; 00165 }
| ptr< object::field_list_list > lestes::lang::cplus::sem::sa_context_manager_concrete::field_values_get | ( | ) | const [virtual] |
for purposes of dumping
Reimplemented from lestes::lang::cplus::sem::sa_context_manager.
Definition at line 167 of file sa_context.g.cc.
References lestes::std::list< T >::create(), and lestes::lang::cplus::sem::sa_context_manager::field_values_get().
00168 { 00169 ptr < field_list_list > result = sa_context_manager::field_values_get(); 00170 result->push_back( value_list::create() ); 00171 result->back()->push_back( this->contexts ); 00172 result->push_back( value_list::create() ); 00173 result->back()->push_back( this->singleton ); 00174 return result; 00175 }
| void lestes::lang::cplus::sem::sa_context_manager_concrete::gc_mark | ( | void | ) | [protected, virtual] |
Marking routine for class sa_context_manager_concrete.
Marking routine is used for garbage collection.
Reimplemented from lestes::lang::cplus::sem::sa_context_manager.
Definition at line 182 of file sa_context.g.cc.
References lestes::lang::cplus::sem::sa_context_manager::gc_mark().
00183 { 00184 sa_context_manager::gc_mark(); 00185 }
srp< ::lestes::std::stack< srp< sa_context > > > lestes::lang::cplus::sem::sa_context_manager_concrete::contexts [private] |
ptr< sa_context_manager_concrete > lestes::lang::cplus::sem::sa_context_manager_concrete::singleton = singleton [static, private] |
Reimplemented from lestes::lang::cplus::sem::sa_context_manager.
Definition at line 181 of file sa_context.g.hh.
Referenced by instance().
ptr< object::reflection_list > lestes::lang::cplus::sem::sa_context_manager_concrete::reflection = reflection [static, private] |
Reimplemented from lestes::lang::cplus::sem::sa_context_manager.
Definition at line 182 of file sa_context.g.hh.
Referenced by reflection_get().
1.5.1-20070107