as_id_to_declaration_set.g.cc

Go to the documentation of this file.
00001 // This file is automatically generated, do not edit.
00002 
00003 #include <lestes/lang/cplus/sem/as_decl.g.hh>
00004 #include <lestes/lang/cplus/sem/ss_declaration.g.hh>
00005 
00006 #include <lestes/std/list.hh>
00007 #include <lestes/std/pair.hh>
00008 #include <lestes/std/reflect.hh>
00009 
00010 #include <lestes/lang/cplus/sem/as_id_to_declaration_set.g.hh>
00011 
00012 package(lestes);
00013 package(lang);
00014 package(cplus);
00015 package(sem);
00016 
00017 
00018 // ------------- Class as_id_to_declaration_set follows. -------------
00019 
00020 /*!
00021    \returns The value of as_id_to_declaration_set::declarations.
00022    \author lsg
00023  */
00024 ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > as_id_to_declaration_set::declarations_get() const
00025 {
00026         return declarations;
00027 }
00028 
00029 /*!
00030    \param[in] x The new value to set as_id_to_declaration_set::declarations to.
00031    \author lsg
00032  */
00033 void as_id_to_declaration_set::declarations_set(const ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > & x)
00034 {
00035         as_id_to_declaration_set::declarations = x;
00036 }
00037 
00038 /*!
00039    Static field as_id_to_declaration_set::the_instance.
00040    \author lsg
00041  */
00042 ptr< as_id_to_declaration_set > as_id_to_declaration_set::the_instance = the_instance;
00043 
00044 /*!
00045    Generated instance() method for singleton class as_id_to_declaration_set.
00046    \author lsg
00047  */
00048 ptr< as_id_to_declaration_set > as_id_to_declaration_set::instance()
00049 {
00050          return the_instance ? the_instance : the_instance = new as_id_to_declaration_set(NULL);
00051 }
00052 
00053 /*!
00054    Generated constructor for class as_id_to_declaration_set.
00055    \author lsg
00056  */
00057 as_id_to_declaration_set::as_id_to_declaration_set (ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > a__as_id_to_declaration_set__declarations)
00058         : as_id_visitor(), declarations(a__as_id_to_declaration_set__declarations)
00059 {}
00060 
00061 ptr< object::reflection_list > as_id_to_declaration_set::reflection_get() const
00062 {
00063         if (!reflection) {
00064                 typedef class_reflection::field_metadata md;
00065                 typedef class_reflection::field_metadata_list mdlist;
00066                 ptr<mdlist> mdl = mdlist::create();
00067                 mdl->push_back( md::create( "declarations", "set&lt; srp&lt; ::lestes::lang::cplus::sem::ss_declaration &gt; &gt;" ) );
00068                 reflection = reflection_list::create( as_id_visitor::reflection_get() );
00069                 reflection->push_back( class_reflection::create( "as_id_to_declaration_set", mdl ) );
00070         }
00071         return reflection;
00072 }
00073 
00074 ptr< object::field_list_list > as_id_to_declaration_set::field_values_get() const
00075 {
00076         ptr < field_list_list > result = as_id_visitor::field_values_get();
00077         result->push_back( value_list::create() );
00078         result->back()->push_back( this->declarations );
00079         return result;
00080 }
00081 
00082 ptr< ::lestes::std::set< srp< ::lestes::lang::cplus::sem::ss_declaration > > > as_id_to_declaration_set::process( const ptr< ::lestes::lang::cplus::sem::as_id > & o )
00083 {
00084         lassert2( o, "Cannot visit NULL object." );
00085         o->accept_as_id_visitor( ptr< as_id_visitor >(this) );
00086         return declarations_get();
00087 }
00088 
00089 
00090 /*!
00091    Marking routine is used for garbage collection.
00092    \author lsg
00093  */
00094 void as_id_to_declaration_set::gc_mark()
00095 {
00096         as_id_visitor::gc_mark();
00097 }
00098 
00099 // End of class as_id_to_declaration_set.
00100 
00101 
00102 // static data members follow 
00103 ptr<object::reflection_list> as_id_to_declaration_set::reflection = reflection;
00104 
00105 end_package(sem);
00106 end_package(cplus);
00107 end_package(lang);
00108 end_package(lestes);
00109 

Generated on Mon Feb 12 18:22:27 2007 for lestes by doxygen 1.5.1-20070107