ss_expr_funcall.g.cc

Go to the documentation of this file.
00001 // This file is automatically generated, do not edit.
00002 
00003 /*!
00004         \file
00005         \brief Intercode structure for project Lestes
00006         
00007             This file describes a set of classes and data types used for intercode layer -ss-.
00008             It is an output from a XSLT template which generates C++ code.
00009         
00010 */
00011 
00012 #include <lestes/lang/cplus/sem/visitor.v.g.hh>
00013 #include <lestes/lang/cplus/sem/ss_declaration.g.hh>
00014 #include <lestes/lang/cplus/sem/ss_type.g.hh>
00015 #include <lestes/lang/cplus/sem/ss_misc.g.hh>
00016 
00017 #include <lestes/std/list.hh>
00018 #include <lestes/std/pair.hh>
00019 #include <lestes/std/reflect.hh>
00020 
00021 #include <lestes/lang/cplus/sem/ss_expr_funcall.g.hh>
00022 
00023 package(lestes);
00024 package(lang);
00025 package(cplus);
00026 package(sem);
00027 
00028 
00029 // ------------- Class ss_funcall_abstr follows. -------------
00030 
00031 /*!
00032    \returns The value of ss_funcall_abstr::args.
00033    \author lsg
00034  */
00035 ptr< ::lestes::std::list< srp< ss_expression > > > ss_funcall_abstr::args_get() const
00036 {
00037         return args;
00038 }
00039 
00040 /*!
00041    \param[in] x The new value to set ss_funcall_abstr::args to.
00042    \author lsg
00043  */
00044 void ss_funcall_abstr::args_set(const ptr< ::lestes::std::list< srp< ss_expression > > > & x)
00045 {
00046         ss_funcall_abstr::args = x;
00047 }
00048 
00049 /*!
00050    Generated constructor for class ss_funcall_abstr.
00051    \author lsg
00052  */
00053 ss_funcall_abstr::ss_funcall_abstr (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00054                 ptr< ss_type > a__ss_expression__type,
00055                 ptr< ss_sp > a__ss_expression__psp,
00056                 ptr< ss_sp > a__ss_expression__nsp,
00057                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args)
00058         : ss_expression(a__ss_base_with_location__location,
00059                 a__ss_expression__type,
00060                 a__ss_expression__psp,
00061                 a__ss_expression__nsp), args(checked(a__ss_funcall_abstr__args))
00062 {}
00063 
00064 ptr< object::reflection_list > ss_funcall_abstr::reflection_get() const
00065 {
00066         if (!reflection) {
00067                 typedef class_reflection::field_metadata md;
00068                 typedef class_reflection::field_metadata_list mdlist;
00069                 ptr<mdlist> mdl = mdlist::create();
00070                 mdl->push_back( md::create( "args", "list&lt; srp&lt; ss_expression &gt; &gt;" ) );
00071                 reflection = reflection_list::create( ss_expression::reflection_get() );
00072                 reflection->push_back( class_reflection::create( "ss_funcall_abstr", mdl ) );
00073         }
00074         return reflection;
00075 }
00076 
00077 ptr< object::field_list_list > ss_funcall_abstr::field_values_get() const
00078 {
00079         ptr < field_list_list > result = ss_expression::field_values_get();
00080         result->push_back( value_list::create() );
00081         result->back()->push_back( this->args );
00082         return result;
00083 }
00084 
00085 
00086 /*!
00087    Marking routine is used for garbage collection.
00088    \author lsg
00089  */
00090 void ss_funcall_abstr::gc_mark()
00091 {
00092         ss_expression::gc_mark();
00093 }
00094 
00095 // End of class ss_funcall_abstr.
00096 
00097 // ------------- Class ss_pfuncall follows. -------------
00098 
00099 /*!
00100    \returns The value of ss_pfuncall::fun_ptr.
00101    \author lsg
00102  */
00103 ptr< ss_expression > ss_pfuncall::fun_ptr_get() const
00104 {
00105         return fun_ptr;
00106 }
00107 
00108 /*!
00109    \param[in] x The new value to set ss_pfuncall::fun_ptr to.
00110    \author lsg
00111  */
00112 void ss_pfuncall::fun_ptr_set(const ptr< ss_expression > & x)
00113 {
00114         ss_pfuncall::fun_ptr = x;
00115 }
00116 
00117 /*!
00118    \returns The value of ss_pfuncall::object.
00119    \author lsg
00120  */
00121 ptr< ss_expression > ss_pfuncall::object_get() const
00122 {
00123         return object;
00124 }
00125 
00126 /*!
00127    \param[in] x The new value to set ss_pfuncall::object to.
00128    \author lsg
00129  */
00130 void ss_pfuncall::object_set(const ptr< ss_expression > & x)
00131 {
00132         ss_pfuncall::object = x;
00133 }
00134 
00135 void ss_pfuncall::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00136 {
00137         return v->visit_ss_pfuncall( this );
00138 }
00139 
00140 /*!
00141    This factory method for class ss_pfuncall takes values of all fields as arguments.
00142    \author lsg
00143  */
00144 ptr< ss_pfuncall > ss_pfuncall::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00145                 ptr< ss_type > a__ss_expression__type,
00146                 ptr< ss_sp > a__ss_expression__psp,
00147                 ptr< ss_sp > a__ss_expression__nsp,
00148                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args,
00149                 ptr< ss_expression > a__ss_pfuncall__fun_ptr,
00150                 ptr< ss_expression > a__ss_pfuncall__object)
00151 {
00152         return ptr< ss_pfuncall > ( new ss_pfuncall(a__ss_base_with_location__location,
00153                 a__ss_expression__type,
00154                 a__ss_expression__psp,
00155                 a__ss_expression__nsp,
00156                 a__ss_funcall_abstr__args,
00157                 a__ss_pfuncall__fun_ptr,
00158                 a__ss_pfuncall__object) );
00159 }
00160 
00161 /*!
00162    Generated constructor for class ss_pfuncall.
00163    \author lsg
00164  */
00165 ss_pfuncall::ss_pfuncall (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00166                 ptr< ss_type > a__ss_expression__type,
00167                 ptr< ss_sp > a__ss_expression__psp,
00168                 ptr< ss_sp > a__ss_expression__nsp,
00169                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args,
00170                 ptr< ss_expression > a__ss_pfuncall__fun_ptr,
00171                 ptr< ss_expression > a__ss_pfuncall__object)
00172         : ss_funcall_abstr(a__ss_base_with_location__location,
00173                 a__ss_expression__type,
00174                 a__ss_expression__psp,
00175                 a__ss_expression__nsp,
00176                 a__ss_funcall_abstr__args), fun_ptr(checked(a__ss_pfuncall__fun_ptr)), object(checked(a__ss_pfuncall__object))
00177 {}
00178 
00179 ptr< object::reflection_list > ss_pfuncall::reflection_get() const
00180 {
00181         if (!reflection) {
00182                 typedef class_reflection::field_metadata md;
00183                 typedef class_reflection::field_metadata_list mdlist;
00184                 ptr<mdlist> mdl = mdlist::create();
00185                 mdl->push_back( md::create( "fun_ptr", "ss_expression" ) );
00186                 mdl->push_back( md::create( "object", "ss_expression" ) );
00187                 reflection = reflection_list::create( ss_funcall_abstr::reflection_get() );
00188                 reflection->push_back( class_reflection::create( "ss_pfuncall", mdl ) );
00189         }
00190         return reflection;
00191 }
00192 
00193 ptr< object::field_list_list > ss_pfuncall::field_values_get() const
00194 {
00195         ptr < field_list_list > result = ss_funcall_abstr::field_values_get();
00196         result->push_back( value_list::create() );
00197         result->back()->push_back( this->fun_ptr );
00198         result->push_back( value_list::create() );
00199         result->back()->push_back( this->object );
00200         return result;
00201 }
00202 
00203 
00204 /*!
00205    Marking routine is used for garbage collection.
00206    \author lsg
00207  */
00208 void ss_pfuncall::gc_mark()
00209 {
00210         ss_funcall_abstr::gc_mark();
00211 }
00212 
00213 // End of class ss_pfuncall.
00214 
00215 // ------------- Class ss_funcall follows. -------------
00216 
00217 /*!
00218    \returns The value of ss_funcall::function.
00219    \author lsg
00220  */
00221 ptr< ss_function_declaration > ss_funcall::function_get() const
00222 {
00223         return function;
00224 }
00225 
00226 /*!
00227    \param[in] x The new value to set ss_funcall::function to.
00228    \author lsg
00229  */
00230 void ss_funcall::function_set(const ptr< ss_function_declaration > & x)
00231 {
00232         ss_funcall::function = x;
00233 }
00234 
00235 void ss_funcall::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00236 {
00237         return v->visit_ss_funcall( this );
00238 }
00239 
00240 /*!
00241    This factory method for class ss_funcall takes values of all fields as arguments.
00242    \author lsg
00243  */
00244 ptr< ss_funcall > ss_funcall::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00245                 ptr< ss_type > a__ss_expression__type,
00246                 ptr< ss_sp > a__ss_expression__psp,
00247                 ptr< ss_sp > a__ss_expression__nsp,
00248                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args,
00249                 ptr< ss_function_declaration > a__ss_funcall__function)
00250 {
00251         return ptr< ss_funcall > ( new ss_funcall(a__ss_base_with_location__location,
00252                 a__ss_expression__type,
00253                 a__ss_expression__psp,
00254                 a__ss_expression__nsp,
00255                 a__ss_funcall_abstr__args,
00256                 a__ss_funcall__function) );
00257 }
00258 
00259 /*!
00260    Generated constructor for class ss_funcall.
00261    \author lsg
00262  */
00263 ss_funcall::ss_funcall (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00264                 ptr< ss_type > a__ss_expression__type,
00265                 ptr< ss_sp > a__ss_expression__psp,
00266                 ptr< ss_sp > a__ss_expression__nsp,
00267                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args,
00268                 ptr< ss_function_declaration > a__ss_funcall__function)
00269         : ss_funcall_abstr(a__ss_base_with_location__location,
00270                 a__ss_expression__type,
00271                 a__ss_expression__psp,
00272                 a__ss_expression__nsp,
00273                 a__ss_funcall_abstr__args), function(checked(a__ss_funcall__function))
00274 {}
00275 
00276 ptr< object::reflection_list > ss_funcall::reflection_get() const
00277 {
00278         if (!reflection) {
00279                 typedef class_reflection::field_metadata md;
00280                 typedef class_reflection::field_metadata_list mdlist;
00281                 ptr<mdlist> mdl = mdlist::create();
00282                 mdl->push_back( md::create( "function", "ss_function_declaration" ) );
00283                 reflection = reflection_list::create( ss_funcall_abstr::reflection_get() );
00284                 reflection->push_back( class_reflection::create( "ss_funcall", mdl ) );
00285         }
00286         return reflection;
00287 }
00288 
00289 ptr< object::field_list_list > ss_funcall::field_values_get() const
00290 {
00291         ptr < field_list_list > result = ss_funcall_abstr::field_values_get();
00292         result->push_back( value_list::create() );
00293         result->back()->push_back( this->function );
00294         return result;
00295 }
00296 
00297 
00298 /*!
00299    Marking routine is used for garbage collection.
00300    \author lsg
00301  */
00302 void ss_funcall::gc_mark()
00303 {
00304         ss_funcall_abstr::gc_mark();
00305 }
00306 
00307 // End of class ss_funcall.
00308 
00309 // ------------- Class ss_ifuncall follows. -------------
00310 
00311 /*!
00312    \returns The value of ss_ifuncall::fun_ptr.
00313    \author lsg
00314  */
00315 ptr< ss_expression > ss_ifuncall::fun_ptr_get() const
00316 {
00317         return fun_ptr;
00318 }
00319 
00320 /*!
00321    \param[in] x The new value to set ss_ifuncall::fun_ptr to.
00322    \author lsg
00323  */
00324 void ss_ifuncall::fun_ptr_set(const ptr< ss_expression > & x)
00325 {
00326         ss_ifuncall::fun_ptr = x;
00327 }
00328 
00329 void ss_ifuncall::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00330 {
00331         return v->visit_ss_ifuncall( this );
00332 }
00333 
00334 /*!
00335    This factory method for class ss_ifuncall takes values of all fields as arguments.
00336    \author lsg
00337  */
00338 ptr< ss_ifuncall > ss_ifuncall::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00339                 ptr< ss_type > a__ss_expression__type,
00340                 ptr< ss_sp > a__ss_expression__psp,
00341                 ptr< ss_sp > a__ss_expression__nsp,
00342                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args,
00343                 ptr< ss_expression > a__ss_ifuncall__fun_ptr)
00344 {
00345         return ptr< ss_ifuncall > ( new ss_ifuncall(a__ss_base_with_location__location,
00346                 a__ss_expression__type,
00347                 a__ss_expression__psp,
00348                 a__ss_expression__nsp,
00349                 a__ss_funcall_abstr__args,
00350                 a__ss_ifuncall__fun_ptr) );
00351 }
00352 
00353 /*!
00354    Generated constructor for class ss_ifuncall.
00355    \author lsg
00356  */
00357 ss_ifuncall::ss_ifuncall (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00358                 ptr< ss_type > a__ss_expression__type,
00359                 ptr< ss_sp > a__ss_expression__psp,
00360                 ptr< ss_sp > a__ss_expression__nsp,
00361                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args,
00362                 ptr< ss_expression > a__ss_ifuncall__fun_ptr)
00363         : ss_funcall_abstr(a__ss_base_with_location__location,
00364                 a__ss_expression__type,
00365                 a__ss_expression__psp,
00366                 a__ss_expression__nsp,
00367                 a__ss_funcall_abstr__args), fun_ptr(checked(a__ss_ifuncall__fun_ptr))
00368 {}
00369 
00370 ptr< object::reflection_list > ss_ifuncall::reflection_get() const
00371 {
00372         if (!reflection) {
00373                 typedef class_reflection::field_metadata md;
00374                 typedef class_reflection::field_metadata_list mdlist;
00375                 ptr<mdlist> mdl = mdlist::create();
00376                 mdl->push_back( md::create( "fun_ptr", "ss_expression" ) );
00377                 reflection = reflection_list::create( ss_funcall_abstr::reflection_get() );
00378                 reflection->push_back( class_reflection::create( "ss_ifuncall", mdl ) );
00379         }
00380         return reflection;
00381 }
00382 
00383 ptr< object::field_list_list > ss_ifuncall::field_values_get() const
00384 {
00385         ptr < field_list_list > result = ss_funcall_abstr::field_values_get();
00386         result->push_back( value_list::create() );
00387         result->back()->push_back( this->fun_ptr );
00388         return result;
00389 }
00390 
00391 
00392 /*!
00393    Marking routine is used for garbage collection.
00394    \author lsg
00395  */
00396 void ss_ifuncall::gc_mark()
00397 {
00398         ss_funcall_abstr::gc_mark();
00399 }
00400 
00401 // End of class ss_ifuncall.
00402 
00403 // ------------- Class ss_mfuncall follows. -------------
00404 
00405 /*!
00406    \returns The value of ss_mfuncall::function.
00407    \author lsg
00408  */
00409 ptr< ss_function_declaration > ss_mfuncall::function_get() const
00410 {
00411         return function;
00412 }
00413 
00414 /*!
00415    \param[in] x The new value to set ss_mfuncall::function to.
00416    \author lsg
00417  */
00418 void ss_mfuncall::function_set(const ptr< ss_function_declaration > & x)
00419 {
00420         ss_mfuncall::function = x;
00421 }
00422 
00423 /*!
00424    \returns The value of ss_mfuncall::object.
00425    \author lsg
00426  */
00427 ptr< ss_expression > ss_mfuncall::object_get() const
00428 {
00429         return object;
00430 }
00431 
00432 /*!
00433    \param[in] x The new value to set ss_mfuncall::object to.
00434    \author lsg
00435  */
00436 void ss_mfuncall::object_set(const ptr< ss_expression > & x)
00437 {
00438         ss_mfuncall::object = x;
00439 }
00440 
00441 void ss_mfuncall::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00442 {
00443         return v->visit_ss_mfuncall( this );
00444 }
00445 
00446 /*!
00447    This factory method for class ss_mfuncall takes values of all fields as arguments.
00448    \author lsg
00449  */
00450 ptr< ss_mfuncall > ss_mfuncall::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00451                 ptr< ss_type > a__ss_expression__type,
00452                 ptr< ss_sp > a__ss_expression__psp,
00453                 ptr< ss_sp > a__ss_expression__nsp,
00454                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args,
00455                 ptr< ss_function_declaration > a__ss_mfuncall__function,
00456                 ptr< ss_expression > a__ss_mfuncall__object)
00457 {
00458         return ptr< ss_mfuncall > ( new ss_mfuncall(a__ss_base_with_location__location,
00459                 a__ss_expression__type,
00460                 a__ss_expression__psp,
00461                 a__ss_expression__nsp,
00462                 a__ss_funcall_abstr__args,
00463                 a__ss_mfuncall__function,
00464                 a__ss_mfuncall__object) );
00465 }
00466 
00467 /*!
00468    Generated constructor for class ss_mfuncall.
00469    \author lsg
00470  */
00471 ss_mfuncall::ss_mfuncall (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00472                 ptr< ss_type > a__ss_expression__type,
00473                 ptr< ss_sp > a__ss_expression__psp,
00474                 ptr< ss_sp > a__ss_expression__nsp,
00475                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args,
00476                 ptr< ss_function_declaration > a__ss_mfuncall__function,
00477                 ptr< ss_expression > a__ss_mfuncall__object)
00478         : ss_funcall_abstr(a__ss_base_with_location__location,
00479                 a__ss_expression__type,
00480                 a__ss_expression__psp,
00481                 a__ss_expression__nsp,
00482                 a__ss_funcall_abstr__args), function(checked(a__ss_mfuncall__function)), object(checked(a__ss_mfuncall__object))
00483 {}
00484 
00485 ptr< object::reflection_list > ss_mfuncall::reflection_get() const
00486 {
00487         if (!reflection) {
00488                 typedef class_reflection::field_metadata md;
00489                 typedef class_reflection::field_metadata_list mdlist;
00490                 ptr<mdlist> mdl = mdlist::create();
00491                 mdl->push_back( md::create( "function", "ss_function_declaration" ) );
00492                 mdl->push_back( md::create( "object", "ss_expression" ) );
00493                 reflection = reflection_list::create( ss_funcall_abstr::reflection_get() );
00494                 reflection->push_back( class_reflection::create( "ss_mfuncall", mdl ) );
00495         }
00496         return reflection;
00497 }
00498 
00499 ptr< object::field_list_list > ss_mfuncall::field_values_get() const
00500 {
00501         ptr < field_list_list > result = ss_funcall_abstr::field_values_get();
00502         result->push_back( value_list::create() );
00503         result->back()->push_back( this->function );
00504         result->push_back( value_list::create() );
00505         result->back()->push_back( this->object );
00506         return result;
00507 }
00508 
00509 
00510 /*!
00511    Marking routine is used for garbage collection.
00512    \author lsg
00513  */
00514 void ss_mfuncall::gc_mark()
00515 {
00516         ss_funcall_abstr::gc_mark();
00517 }
00518 
00519 // End of class ss_mfuncall.
00520 
00521 // ------------- Class ss_vfuncall follows. -------------
00522 
00523 /*!
00524    \returns The value of ss_vfuncall::function.
00525    \author lsg
00526  */
00527 ptr< ss_function_declaration > ss_vfuncall::function_get() const
00528 {
00529         return function;
00530 }
00531 
00532 /*!
00533    \param[in] x The new value to set ss_vfuncall::function to.
00534    \author lsg
00535  */
00536 void ss_vfuncall::function_set(const ptr< ss_function_declaration > & x)
00537 {
00538         ss_vfuncall::function = x;
00539 }
00540 
00541 /*!
00542    \returns The value of ss_vfuncall::object_ptr.
00543    \author lsg
00544  */
00545 ptr< ss_expression > ss_vfuncall::object_ptr_get() const
00546 {
00547         return object_ptr;
00548 }
00549 
00550 /*!
00551    \param[in] x The new value to set ss_vfuncall::object_ptr to.
00552    \author lsg
00553  */
00554 void ss_vfuncall::object_ptr_set(const ptr< ss_expression > & x)
00555 {
00556         ss_vfuncall::object_ptr = x;
00557 }
00558 
00559 void ss_vfuncall::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00560 {
00561         return v->visit_ss_vfuncall( this );
00562 }
00563 
00564 /*!
00565    This factory method for class ss_vfuncall takes values of all fields as arguments.
00566    \author lsg
00567  */
00568 ptr< ss_vfuncall > ss_vfuncall::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00569                 ptr< ss_type > a__ss_expression__type,
00570                 ptr< ss_sp > a__ss_expression__psp,
00571                 ptr< ss_sp > a__ss_expression__nsp,
00572                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args,
00573                 ptr< ss_function_declaration > a__ss_vfuncall__function,
00574                 ptr< ss_expression > a__ss_vfuncall__object_ptr)
00575 {
00576         return ptr< ss_vfuncall > ( new ss_vfuncall(a__ss_base_with_location__location,
00577                 a__ss_expression__type,
00578                 a__ss_expression__psp,
00579                 a__ss_expression__nsp,
00580                 a__ss_funcall_abstr__args,
00581                 a__ss_vfuncall__function,
00582                 a__ss_vfuncall__object_ptr) );
00583 }
00584 
00585 /*!
00586    Generated constructor for class ss_vfuncall.
00587    \author lsg
00588  */
00589 ss_vfuncall::ss_vfuncall (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00590                 ptr< ss_type > a__ss_expression__type,
00591                 ptr< ss_sp > a__ss_expression__psp,
00592                 ptr< ss_sp > a__ss_expression__nsp,
00593                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args,
00594                 ptr< ss_function_declaration > a__ss_vfuncall__function,
00595                 ptr< ss_expression > a__ss_vfuncall__object_ptr)
00596         : ss_funcall_abstr(a__ss_base_with_location__location,
00597                 a__ss_expression__type,
00598                 a__ss_expression__psp,
00599                 a__ss_expression__nsp,
00600                 a__ss_funcall_abstr__args), function(checked(a__ss_vfuncall__function)), object_ptr(checked(a__ss_vfuncall__object_ptr))
00601 {}
00602 
00603 ptr< object::reflection_list > ss_vfuncall::reflection_get() const
00604 {
00605         if (!reflection) {
00606                 typedef class_reflection::field_metadata md;
00607                 typedef class_reflection::field_metadata_list mdlist;
00608                 ptr<mdlist> mdl = mdlist::create();
00609                 mdl->push_back( md::create( "function", "ss_function_declaration" ) );
00610                 mdl->push_back( md::create( "object_ptr", "ss_expression" ) );
00611                 reflection = reflection_list::create( ss_funcall_abstr::reflection_get() );
00612                 reflection->push_back( class_reflection::create( "ss_vfuncall", mdl ) );
00613         }
00614         return reflection;
00615 }
00616 
00617 ptr< object::field_list_list > ss_vfuncall::field_values_get() const
00618 {
00619         ptr < field_list_list > result = ss_funcall_abstr::field_values_get();
00620         result->push_back( value_list::create() );
00621         result->back()->push_back( this->function );
00622         result->push_back( value_list::create() );
00623         result->back()->push_back( this->object_ptr );
00624         return result;
00625 }
00626 
00627 
00628 /*!
00629    Marking routine is used for garbage collection.
00630    \author lsg
00631  */
00632 void ss_vfuncall::gc_mark()
00633 {
00634         ss_funcall_abstr::gc_mark();
00635 }
00636 
00637 // End of class ss_vfuncall.
00638 
00639 
00640 // static data members follow 
00641 ptr<object::reflection_list> ss_funcall_abstr::reflection = reflection;
00642 ptr<object::reflection_list> ss_pfuncall::reflection = reflection;
00643 ptr<object::reflection_list> ss_funcall::reflection = reflection;
00644 ptr<object::reflection_list> ss_ifuncall::reflection = reflection;
00645 ptr<object::reflection_list> ss_mfuncall::reflection = reflection;
00646 ptr<object::reflection_list> ss_vfuncall::reflection = reflection;
00647 
00648 end_package(sem);
00649 end_package(cplus);
00650 end_package(lang);
00651 end_package(lestes);
00652 

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