00001 // This file is automatically generated, do not edit. 00002 00003 /*! 00004 \file 00005 \brief Visitors returning lstring for ss_decl_name. 00006 \author jaz 00007 */ 00008 00009 00010 #include <lestes/std/list.hh> 00011 #include <lestes/std/pair.hh> 00012 #include <lestes/std/reflect.hh> 00013 00014 #include <lestes/lang/cplus/sem/ss_decl_name2lstring_base.g.hh> 00015 00016 package(lestes); 00017 package(lang); 00018 package(cplus); 00019 package(sem); 00020 00021 00022 // ------------- Class ss_decl_name2mangled_name follows. ------------- 00023 00024 /*! 00025 \returns The value of ss_decl_name2mangled_name::singleton_instance. 00026 \author lsg 00027 */ 00028 ptr< ss_decl_name2mangled_name > ss_decl_name2mangled_name::singleton_instance_get() 00029 { 00030 return singleton_instance; 00031 } 00032 00033 /*! 00034 \param[in] x The new value to set ss_decl_name2mangled_name::singleton_instance to. 00035 \author lsg 00036 */ 00037 void ss_decl_name2mangled_name::singleton_instance_set(const ptr< ss_decl_name2mangled_name > & x) 00038 { 00039 ss_decl_name2mangled_name::singleton_instance = x; 00040 } 00041 00042 /*! 00043 This factory method for class ss_decl_name2mangled_name takes values of all fields as arguments. 00044 \author lsg 00045 */ 00046 ptr< ss_decl_name2mangled_name > ss_decl_name2mangled_name::create() 00047 { 00048 return ptr< ss_decl_name2mangled_name > ( new ss_decl_name2mangled_name() ); 00049 } 00050 00051 /*! 00052 Generated constructor for class ss_decl_name2mangled_name. 00053 \author lsg 00054 */ 00055 ss_decl_name2mangled_name::ss_decl_name2mangled_name () 00056 : ss_decl_name2lstring_base() 00057 {} 00058 00059 ptr< object::reflection_list > ss_decl_name2mangled_name::reflection_get() const 00060 { 00061 if (!reflection) { 00062 typedef class_reflection::field_metadata md; 00063 typedef class_reflection::field_metadata_list mdlist; 00064 ptr<mdlist> mdl = mdlist::create(); 00065 mdl->push_back( md::create( "singleton_instance", "ss_decl_name2mangled_name" ) ); 00066 reflection = reflection_list::create( ss_decl_name2lstring_base::reflection_get() ); 00067 reflection->push_back( class_reflection::create( "ss_decl_name2mangled_name", mdl ) ); 00068 } 00069 return reflection; 00070 } 00071 00072 ptr< object::field_list_list > ss_decl_name2mangled_name::field_values_get() const 00073 { 00074 ptr < field_list_list > result = ss_decl_name2lstring_base::field_values_get(); 00075 result->push_back( value_list::create() ); 00076 result->back()->push_back( this->singleton_instance ); 00077 return result; 00078 } 00079 00080 00081 /*! 00082 Marking routine is used for garbage collection. 00083 \author lsg 00084 */ 00085 void ss_decl_name2mangled_name::gc_mark() 00086 { 00087 ss_decl_name2lstring_base::gc_mark(); 00088 } 00089 00090 // End of class ss_decl_name2mangled_name. 00091 00092 00093 // static data members follow 00094 ptr< ss_decl_name2mangled_name > ss_decl_name2mangled_name::singleton_instance = singleton_instance; 00095 ptr<object::reflection_list> ss_decl_name2mangled_name::reflection = reflection; 00096 00097 end_package(sem); 00098 end_package(cplus); 00099 end_package(lang); 00100 end_package(lestes); 00101
1.5.1-20070107