tm_register_base.g.cc

Go to the documentation of this file.
00001 // This file is automatically generated, do not edit.
00002 
00003 /*!
00004         \file
00005         \brief Target-machine register
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/md/registers/tm_register_base.g.hh>
00015 
00016 package(lestes);
00017 package(md);
00018 package(registers);
00019 
00020 
00021 // ------------- Class tm_register_base follows. -------------
00022 
00023 /*!
00024    \returns The value of tm_register_base::id.
00025    \author lsg
00026  */
00027 tm_register_base::id_type tm_register_base::id_get() const
00028 {
00029         return id;
00030 }
00031 
00032 /*!
00033    \param[in] x The new value to set tm_register_base::id to.
00034    \author lsg
00035  */
00036 void tm_register_base::id_set(tm_register_base::id_type x)
00037 {
00038         tm_register_base::id = x;
00039 }
00040 
00041 /*!
00042    \returns The value of tm_register_base::bitwidth.
00043    \author lsg
00044  */
00045 ulint tm_register_base::bitwidth_get() const
00046 {
00047         return bitwidth;
00048 }
00049 
00050 /*!
00051    \param[in] x The new value to set tm_register_base::bitwidth to.
00052    \author lsg
00053  */
00054 void tm_register_base::bitwidth_set(ulint x)
00055 {
00056         tm_register_base::bitwidth = x;
00057 }
00058 
00059 /*!
00060    \returns The value of tm_register_base::compatible_types.
00061    \author lsg
00062  */
00063 ptr< ::lestes::std::set< ::lestes::md::types::tm_data_type_base::id_type > > tm_register_base::compatible_types_get() const
00064 {
00065         return compatible_types;
00066 }
00067 
00068 /*!
00069    \param[in] x The new value to set tm_register_base::compatible_types to.
00070    \author lsg
00071  */
00072 void tm_register_base::compatible_types_set(const ptr< ::lestes::std::set< ::lestes::md::types::tm_data_type_base::id_type > > & x)
00073 {
00074         tm_register_base::compatible_types = x;
00075 }
00076 
00077 /*!
00078    \returns The value of tm_register_base::aliases.
00079    \author lsg
00080  */
00081 ptr< ::lestes::std::set< tm_register_base::id_type > > tm_register_base::aliases_get() const
00082 {
00083         return aliases;
00084 }
00085 
00086 /*!
00087    \param[in] x The new value to set tm_register_base::aliases to.
00088    \author lsg
00089  */
00090 void tm_register_base::aliases_set(const ptr< ::lestes::std::set< tm_register_base::id_type > > & x)
00091 {
00092         tm_register_base::aliases = x;
00093 }
00094 
00095 /*!
00096    \returns The value of tm_register_base::move_templates.
00097    \author lsg
00098  */
00099 ptr< ::lestes::std::set< ulint > > tm_register_base::move_templates_get() const
00100 {
00101         return move_templates;
00102 }
00103 
00104 /*!
00105    \param[in] x The new value to set tm_register_base::move_templates to.
00106    \author lsg
00107  */
00108 void tm_register_base::move_templates_set(const ptr< ::lestes::std::set< ulint > > & x)
00109 {
00110         tm_register_base::move_templates = x;
00111 }
00112 
00113 /*!
00114    \returns The value of tm_register_base::asm_output.
00115    \author lsg
00116  */
00117 lstring tm_register_base::asm_output_get() const
00118 {
00119         return asm_output;
00120 }
00121 
00122 /*!
00123    \param[in] x The new value to set tm_register_base::asm_output to.
00124    \author lsg
00125  */
00126 void tm_register_base::asm_output_set(lstring x)
00127 {
00128         tm_register_base::asm_output = x;
00129 }
00130 
00131 /*!
00132    \returns The value of tm_register_base::flags.
00133    \author lsg
00134  */
00135 ulint tm_register_base::flags_get() const
00136 {
00137         return flags;
00138 }
00139 
00140 /*!
00141    \param[in] x The new value to set tm_register_base::flags to.
00142    \author lsg
00143  */
00144 void tm_register_base::flags_set(ulint x)
00145 {
00146         tm_register_base::flags = x;
00147 }
00148 
00149 /*!
00150    This factory method for class tm_register_base takes values of all fields as arguments.
00151    \author lsg
00152  */
00153 ptr< tm_register_base > tm_register_base::create(tm_register_base::id_type a__tm_register_base__id,
00154                 ulint a__tm_register_base__bitwidth,
00155                 ptr< ::lestes::std::set< ::lestes::md::types::tm_data_type_base::id_type > > a__tm_register_base__compatible_types,
00156                 ptr< ::lestes::std::set< tm_register_base::id_type > > a__tm_register_base__aliases,
00157                 ptr< ::lestes::std::set< ulint > > a__tm_register_base__move_templates,
00158                 lstring a__tm_register_base__asm_output,
00159                 ulint a__tm_register_base__flags)
00160 {
00161         return ptr< tm_register_base > ( new tm_register_base(a__tm_register_base__id,
00162                 a__tm_register_base__bitwidth,
00163                 a__tm_register_base__compatible_types,
00164                 a__tm_register_base__aliases,
00165                 a__tm_register_base__move_templates,
00166                 a__tm_register_base__asm_output,
00167                 a__tm_register_base__flags) );
00168 }
00169 
00170 /*!
00171    This factory method for class tm_register_base uses initializers.
00172    \author lsg
00173  */
00174 ptr< tm_register_base > tm_register_base::create(tm_register_base::id_type a__tm_register_base__id,
00175                 ulint a__tm_register_base__bitwidth,
00176                 ptr< ::lestes::std::set< ::lestes::md::types::tm_data_type_base::id_type > > a__tm_register_base__compatible_types,
00177                 ptr< ::lestes::std::set< tm_register_base::id_type > > a__tm_register_base__aliases,
00178                 ptr< ::lestes::std::set< ulint > > a__tm_register_base__move_templates,
00179                 lstring a__tm_register_base__asm_output)
00180 {
00181         return ptr< tm_register_base > ( new tm_register_base(a__tm_register_base__id, a__tm_register_base__bitwidth, a__tm_register_base__compatible_types, a__tm_register_base__aliases, a__tm_register_base__move_templates, a__tm_register_base__asm_output, 0) );
00182 }
00183 
00184 /*!
00185    Generated constructor for class tm_register_base.
00186    \author lsg
00187  */
00188 tm_register_base::tm_register_base (tm_register_base::id_type a__tm_register_base__id,
00189                 ulint a__tm_register_base__bitwidth,
00190                 ptr< ::lestes::std::set< ::lestes::md::types::tm_data_type_base::id_type > > a__tm_register_base__compatible_types,
00191                 ptr< ::lestes::std::set< tm_register_base::id_type > > a__tm_register_base__aliases,
00192                 ptr< ::lestes::std::set< ulint > > a__tm_register_base__move_templates,
00193                 lstring a__tm_register_base__asm_output,
00194                 ulint a__tm_register_base__flags)
00195         : ::lestes::std::object(), id(a__tm_register_base__id), bitwidth(a__tm_register_base__bitwidth), compatible_types(checked(a__tm_register_base__compatible_types)), aliases(checked(a__tm_register_base__aliases)), move_templates(checked(a__tm_register_base__move_templates)), asm_output(a__tm_register_base__asm_output), flags(a__tm_register_base__flags)
00196 {}
00197 
00198 ptr< object::reflection_list > tm_register_base::reflection_get() const
00199 {
00200         if (!reflection) {
00201                 typedef class_reflection::field_metadata md;
00202                 typedef class_reflection::field_metadata_list mdlist;
00203                 ptr<mdlist> mdl = mdlist::create();
00204                 mdl->push_back( md::create( "id", "tm_register_base::id_type" ) );
00205                 mdl->push_back( md::create( "bitwidth", "ulint" ) );
00206                 mdl->push_back( md::create( "compatible_types", "set&lt; ::lestes::md::types::tm_data_type_base::id_type &gt;" ) );
00207                 mdl->push_back( md::create( "aliases", "set&lt; tm_register_base::id_type &gt;" ) );
00208                 mdl->push_back( md::create( "move_templates", "set&lt; ulint &gt;" ) );
00209                 mdl->push_back( md::create( "asm_output", "lstring" ) );
00210                 mdl->push_back( md::create( "flags", "ulint" ) );
00211                 reflection = reflection_list::create( ::lestes::std::object::reflection_get() );
00212                 reflection->push_back( class_reflection::create( "tm_register_base", mdl ) );
00213         }
00214         return reflection;
00215 }
00216 
00217 ptr< object::field_list_list > tm_register_base::field_values_get() const
00218 {
00219         ptr < field_list_list > result = ::lestes::std::object::field_values_get();
00220         result->push_back( value_list::create() );
00221         result->back()->push_back( objectize< tm_register_base::id_type > ::create( this->id ) );
00222         result->push_back( value_list::create() );
00223         result->back()->push_back( objectize< ulint > ::create( this->bitwidth ) );
00224         result->push_back( value_list::create() );
00225         result->back()->push_back( this->compatible_types );
00226         result->push_back( value_list::create() );
00227         result->back()->push_back( this->aliases );
00228         result->push_back( value_list::create() );
00229         result->back()->push_back( this->move_templates );
00230         result->push_back( value_list::create() );
00231         result->back()->push_back( objectize< lstring > ::create( this->asm_output ) );
00232         result->push_back( value_list::create() );
00233         result->back()->push_back( objectize< ulint > ::create( this->flags ) );
00234         return result;
00235 }
00236 
00237 
00238 /*!
00239    Marking routine is used for garbage collection.
00240    \author lsg
00241  */
00242 void tm_register_base::gc_mark()
00243 {
00244 	::lestes::std::object::gc_mark();
00245 }
00246 
00247 // End of class tm_register_base.
00248 
00249 
00250 // static data members follow 
00251 ptr<object::reflection_list> tm_register_base::reflection = reflection;
00252 
00253 end_package(registers);
00254 end_package(md);
00255 end_package(lestes);
00256 

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