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