func_data.g.cc

Go to the documentation of this file.
00001 // This file is automatically generated, do not edit.
00002 
00003 /*!
00004         \file
00005         \author jaz
00006 */
00007 
00008 #include <lestes/lang/cplus/sem/ss_declaration.g.hh>
00009 #include <lestes/backend_v2/intercode/pi.g.hh>
00010 #include <lestes/backend_v2/intercode/ge.g.hh>
00011 #include <lestes/backend_v2/workers/bb_finder.g.hh>
00012 #include <lestes/backend_v2/workers/alloc_int_finder.g.hh>
00013 
00014 #include <lestes/std/list.hh>
00015 #include <lestes/std/pair.hh>
00016 #include <lestes/std/reflect.hh>
00017 
00018 #include <lestes/backend_v2/structs/func_data.g.hh>
00019 
00020 package(lestes);
00021 package(backend_v2);
00022 package(structs);
00023 
00024 
00025 // ------------- Class func_data follows. -------------
00026 
00027 /*!
00028    \returns The value of func_data::function_decl.
00029    \author lsg
00030  */
00031 ptr< ::lestes::lang::cplus::sem::ss_function_declaration > func_data::function_decl_get() const
00032 {
00033         return function_decl;
00034 }
00035 
00036 /*!
00037    \param[in] x The new value to set func_data::function_decl to.
00038    \author lsg
00039  */
00040 void func_data::function_decl_set(const ptr< ::lestes::lang::cplus::sem::ss_function_declaration > & x)
00041 {
00042         func_data::function_decl = x;
00043 }
00044 
00045 /*!
00046    \returns The value of func_data::pi_body.
00047    \author lsg
00048  */
00049 ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::pi_pi > > > func_data::pi_body_get() const
00050 {
00051         return pi_body;
00052 }
00053 
00054 /*!
00055    \param[in] x The new value to set func_data::pi_body to.
00056    \author lsg
00057  */
00058 void func_data::pi_body_set(const ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::pi_pi > > > & x)
00059 {
00060         func_data::pi_body = x;
00061 }
00062 
00063 /*!
00064    \returns The value of func_data::ge_body.
00065    \author lsg
00066  */
00067 ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::ge_pi > > > func_data::ge_body_get() const
00068 {
00069         return ge_body;
00070 }
00071 
00072 /*!
00073    \param[in] x The new value to set func_data::ge_body to.
00074    \author lsg
00075  */
00076 void func_data::ge_body_set(const ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::ge_pi > > > & x)
00077 {
00078         func_data::ge_body = x;
00079 }
00080 
00081 /*!
00082    \returns The value of func_data::bbs.
00083    \author lsg
00084  */
00085 ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::basic_block > > > func_data::bbs_get() const
00086 {
00087         return bbs;
00088 }
00089 
00090 /*!
00091    \param[in] x The new value to set func_data::bbs to.
00092    \author lsg
00093  */
00094 void func_data::bbs_set(const ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::basic_block > > > & x)
00095 {
00096         func_data::bbs = x;
00097 }
00098 
00099 /*!
00100    \returns The value of func_data::alloc_ints.
00101    \author lsg
00102  */
00103 ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::alloc_interval > > > func_data::alloc_ints_get() const
00104 {
00105         return alloc_ints;
00106 }
00107 
00108 /*!
00109    \param[in] x The new value to set func_data::alloc_ints to.
00110    \author lsg
00111  */
00112 void func_data::alloc_ints_set(const ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::alloc_interval > > > & x)
00113 {
00114         func_data::alloc_ints = x;
00115 }
00116 
00117 /*!
00118    This factory method for class func_data takes values of all fields as arguments.
00119    \author lsg
00120  */
00121 ptr< func_data > func_data::create(ptr< ::lestes::lang::cplus::sem::ss_function_declaration > a__func_data__function_decl,
00122                 ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::pi_pi > > > a__func_data__pi_body,
00123                 ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::ge_pi > > > a__func_data__ge_body,
00124                 ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::basic_block > > > a__func_data__bbs,
00125                 ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::alloc_interval > > > a__func_data__alloc_ints)
00126 {
00127         return ptr< func_data > ( new func_data(a__func_data__function_decl,
00128                 a__func_data__pi_body,
00129                 a__func_data__ge_body,
00130                 a__func_data__bbs,
00131                 a__func_data__alloc_ints) );
00132 }
00133 
00134 /*!
00135    This factory method for class func_data uses initializers.
00136    \author lsg
00137  */
00138 ptr< func_data > func_data::create(ptr< ::lestes::lang::cplus::sem::ss_function_declaration > a__func_data__function_decl)
00139 {
00140         return ptr< func_data > ( new func_data(a__func_data__function_decl, ::lestes::std::list< srp< ::lestes::backend_v2::intercode::pi_pi > > ::create(), ::lestes::std::list< srp< ::lestes::backend_v2::intercode::ge_pi > > ::create(), ::lestes::std::vector< srp< ::lestes::backend_v2::workers::basic_block > > ::create(), ::lestes::std::vector< srp< ::lestes::backend_v2::workers::alloc_interval > > ::create()) );
00141 }
00142 
00143 /*!
00144    Generated constructor for class func_data.
00145    \author lsg
00146  */
00147 func_data::func_data (ptr< ::lestes::lang::cplus::sem::ss_function_declaration > a__func_data__function_decl,
00148                 ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::pi_pi > > > a__func_data__pi_body,
00149                 ptr< ::lestes::std::list< srp< ::lestes::backend_v2::intercode::ge_pi > > > a__func_data__ge_body,
00150                 ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::basic_block > > > a__func_data__bbs,
00151                 ptr< ::lestes::std::vector< srp< ::lestes::backend_v2::workers::alloc_interval > > > a__func_data__alloc_ints)
00152         : ::lestes::std::object(), function_decl(checked(a__func_data__function_decl)), pi_body(checked(a__func_data__pi_body)), ge_body(checked(a__func_data__ge_body)), bbs(checked(a__func_data__bbs)), alloc_ints(checked(a__func_data__alloc_ints))
00153 {}
00154 
00155 ptr< object::reflection_list > func_data::reflection_get() const
00156 {
00157         if (!reflection) {
00158                 typedef class_reflection::field_metadata md;
00159                 typedef class_reflection::field_metadata_list mdlist;
00160                 ptr<mdlist> mdl = mdlist::create();
00161                 mdl->push_back( md::create( "function_decl", "ss_function_declaration" ) );
00162                 mdl->push_back( md::create( "pi_body", "list&lt; srp&lt; ::lestes::backend_v2::intercode::pi_pi &gt; &gt;" ) );
00163                 mdl->push_back( md::create( "ge_body", "list&lt; srp&lt; ::lestes::backend_v2::intercode::ge_pi &gt; &gt;" ) );
00164                 mdl->push_back( md::create( "bbs", "vector&lt; srp&lt; ::lestes::backend_v2::workers::basic_block &gt; &gt;" ) );
00165                 mdl->push_back( md::create( "alloc_ints", "vector&lt; srp&lt; ::lestes::backend_v2::workers::alloc_interval &gt; &gt;" ) );
00166                 reflection = reflection_list::create( ::lestes::std::object::reflection_get() );
00167                 reflection->push_back( class_reflection::create( "func_data", mdl ) );
00168         }
00169         return reflection;
00170 }
00171 
00172 ptr< object::field_list_list > func_data::field_values_get() const
00173 {
00174         ptr < field_list_list > result = ::lestes::std::object::field_values_get();
00175         result->push_back( value_list::create() );
00176         result->back()->push_back( this->function_decl );
00177         result->push_back( value_list::create() );
00178         result->back()->push_back( this->pi_body );
00179         result->push_back( value_list::create() );
00180         result->back()->push_back( this->ge_body );
00181         result->push_back( value_list::create() );
00182         result->back()->push_back( this->bbs );
00183         result->push_back( value_list::create() );
00184         result->back()->push_back( this->alloc_ints );
00185         return result;
00186 }
00187 
00188 
00189 /*!
00190    Marking routine is used for garbage collection.
00191    \author lsg
00192  */
00193 void func_data::gc_mark()
00194 {
00195 	::lestes::std::object::gc_mark();
00196 }
00197 
00198 // End of class func_data.
00199 
00200 
00201 // static data members follow 
00202 ptr<object::reflection_list> func_data::reflection = reflection;
00203 
00204 end_package(structs);
00205 end_package(backend_v2);
00206 end_package(lestes);
00207 

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