as_class_key_to_ss_struct_base.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_type.g.hh>
00005 #include <lestes/lang/cplus/sem/ss_misc.g.hh>
00006 
00007 #include <lestes/std/list.hh>
00008 #include <lestes/std/pair.hh>
00009 #include <lestes/std/reflect.hh>
00010 
00011 #include <lestes/lang/cplus/sem/as_class_key_to_ss_struct_base.g.hh>
00012 
00013 package(lestes);
00014 package(lang);
00015 package(cplus);
00016 package(sem);
00017 
00018 
00019 // ------------- Class as_class_key_to_ss_struct_base follows. -------------
00020 
00021 /*!
00022    \returns The value of as_class_key_to_ss_struct_base::decl_seq.
00023    \author lsg
00024  */
00025 ptr< ::lestes::lang::cplus::sem::ss_decl_seq > as_class_key_to_ss_struct_base::decl_seq_get() const
00026 {
00027         return decl_seq;
00028 }
00029 
00030 /*!
00031    \param[in] x The new value to set as_class_key_to_ss_struct_base::decl_seq to.
00032    \author lsg
00033  */
00034 void as_class_key_to_ss_struct_base::decl_seq_set(const ptr< ::lestes::lang::cplus::sem::ss_decl_seq > & x)
00035 {
00036         as_class_key_to_ss_struct_base::decl_seq = x;
00037 }
00038 
00039 /*!
00040    \returns The value of as_class_key_to_ss_struct_base::bases.
00041    \author lsg
00042  */
00043 ptr< ::lestes::std::list< srp< ::lestes::lang::cplus::sem::ss_base_specifier > > > as_class_key_to_ss_struct_base::bases_get() const
00044 {
00045         return bases;
00046 }
00047 
00048 /*!
00049    \param[in] x The new value to set as_class_key_to_ss_struct_base::bases to.
00050    \author lsg
00051  */
00052 void as_class_key_to_ss_struct_base::bases_set(const ptr< ::lestes::std::list< srp< ::lestes::lang::cplus::sem::ss_base_specifier > > > & x)
00053 {
00054         as_class_key_to_ss_struct_base::bases = x;
00055 }
00056 
00057 /*!
00058    \returns The value of as_class_key_to_ss_struct_base::struct_base.
00059    \author lsg
00060  */
00061 ptr< ::lestes::lang::cplus::sem::ss_struct_base > as_class_key_to_ss_struct_base::struct_base_get() const
00062 {
00063         return struct_base;
00064 }
00065 
00066 /*!
00067    \param[in] x The new value to set as_class_key_to_ss_struct_base::struct_base to.
00068    \author lsg
00069  */
00070 void as_class_key_to_ss_struct_base::struct_base_set(const ptr< ::lestes::lang::cplus::sem::ss_struct_base > & x)
00071 {
00072         as_class_key_to_ss_struct_base::struct_base = x;
00073 }
00074 
00075 /*!
00076    This factory method for class as_class_key_to_ss_struct_base takes values of all fields as arguments.
00077    \author lsg
00078  */
00079 ptr< as_class_key_to_ss_struct_base > as_class_key_to_ss_struct_base::create(ptr< ::lestes::lang::cplus::sem::ss_decl_seq > a__as_class_key_to_ss_struct_base__decl_seq,
00080                 ptr< ::lestes::std::list< srp< ::lestes::lang::cplus::sem::ss_base_specifier > > > a__as_class_key_to_ss_struct_base__bases,
00081                 ptr< ::lestes::lang::cplus::sem::ss_struct_base > a__as_class_key_to_ss_struct_base__struct_base)
00082 {
00083         return ptr< as_class_key_to_ss_struct_base > ( new as_class_key_to_ss_struct_base(a__as_class_key_to_ss_struct_base__decl_seq,
00084                 a__as_class_key_to_ss_struct_base__bases,
00085                 a__as_class_key_to_ss_struct_base__struct_base) );
00086 }
00087 
00088 /*!
00089    This factory method for class as_class_key_to_ss_struct_base uses initializers.
00090    \author lsg
00091  */
00092 ptr< as_class_key_to_ss_struct_base > as_class_key_to_ss_struct_base::create(ptr< ::lestes::lang::cplus::sem::ss_decl_seq > a__as_class_key_to_ss_struct_base__decl_seq,
00093                 ptr< ::lestes::std::list< srp< ::lestes::lang::cplus::sem::ss_base_specifier > > > a__as_class_key_to_ss_struct_base__bases)
00094 {
00095         return ptr< as_class_key_to_ss_struct_base > ( new as_class_key_to_ss_struct_base(a__as_class_key_to_ss_struct_base__decl_seq, a__as_class_key_to_ss_struct_base__bases, NULL) );
00096 }
00097 
00098 /*!
00099    Generated constructor for class as_class_key_to_ss_struct_base.
00100    \author lsg
00101  */
00102 as_class_key_to_ss_struct_base::as_class_key_to_ss_struct_base (ptr< ::lestes::lang::cplus::sem::ss_decl_seq > a__as_class_key_to_ss_struct_base__decl_seq,
00103                 ptr< ::lestes::std::list< srp< ::lestes::lang::cplus::sem::ss_base_specifier > > > a__as_class_key_to_ss_struct_base__bases,
00104                 ptr< ::lestes::lang::cplus::sem::ss_struct_base > a__as_class_key_to_ss_struct_base__struct_base)
00105         : as_class_key_visitor(), decl_seq(checked(a__as_class_key_to_ss_struct_base__decl_seq)), bases(checked(a__as_class_key_to_ss_struct_base__bases)), struct_base(a__as_class_key_to_ss_struct_base__struct_base)
00106 {}
00107 
00108 ptr< object::reflection_list > as_class_key_to_ss_struct_base::reflection_get() const
00109 {
00110         if (!reflection) {
00111                 typedef class_reflection::field_metadata md;
00112                 typedef class_reflection::field_metadata_list mdlist;
00113                 ptr<mdlist> mdl = mdlist::create();
00114                 mdl->push_back( md::create( "decl_seq", "ss_decl_seq" ) );
00115                 mdl->push_back( md::create( "bases", "list&lt; srp&lt; ::lestes::lang::cplus::sem::ss_base_specifier &gt; &gt;" ) );
00116                 mdl->push_back( md::create( "struct_base", "ss_struct_base" ) );
00117                 reflection = reflection_list::create( as_class_key_visitor::reflection_get() );
00118                 reflection->push_back( class_reflection::create( "as_class_key_to_ss_struct_base", mdl ) );
00119         }
00120         return reflection;
00121 }
00122 
00123 ptr< object::field_list_list > as_class_key_to_ss_struct_base::field_values_get() const
00124 {
00125         ptr < field_list_list > result = as_class_key_visitor::field_values_get();
00126         result->push_back( value_list::create() );
00127         result->back()->push_back( this->decl_seq );
00128         result->push_back( value_list::create() );
00129         result->back()->push_back( this->bases );
00130         result->push_back( value_list::create() );
00131         result->back()->push_back( this->struct_base );
00132         return result;
00133 }
00134 
00135 ptr< ::lestes::lang::cplus::sem::ss_struct_base > as_class_key_to_ss_struct_base::process( const ptr< ::lestes::lang::cplus::sem::as_class_key > & o )
00136 {
00137         lassert2( o, "Cannot visit NULL object." );
00138         o->accept_as_class_key_visitor( ptr< as_class_key_visitor >(this) );
00139         return struct_base_get();
00140 }
00141 
00142 
00143 /*!
00144    Marking routine is used for garbage collection.
00145    \author lsg
00146  */
00147 void as_class_key_to_ss_struct_base::gc_mark()
00148 {
00149         as_class_key_visitor::gc_mark();
00150 }
00151 
00152 // End of class as_class_key_to_ss_struct_base.
00153 
00154 
00155 // static data members follow 
00156 ptr<object::reflection_list> as_class_key_to_ss_struct_base::reflection = reflection;
00157 
00158 end_package(sem);
00159 end_package(cplus);
00160 end_package(lang);
00161 end_package(lestes);
00162 

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