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