as_expr.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_visitor.v.g.hh>
00004 #include <lestes/lang/cplus/sem/as_decl.g.hh>
00005 #include <lestes/lang/cplus/sem/as_statements.g.hh>
00006 #include <lestes/lang/cplus/lex/cpp_token.hh>
00007 
00008 #include <lestes/std/list.hh>
00009 #include <lestes/std/pair.hh>
00010 #include <lestes/std/reflect.hh>
00011 
00012 #include <lestes/lang/cplus/sem/as_expr.g.hh>
00013 
00014 package(lestes);
00015 package(lang);
00016 package(cplus);
00017 package(sem);
00018 
00019 
00020 // ------------- Class as_expression follows. -------------
00021 
00022 /*!
00023    Generated constructor for class as_expression.
00024    \author lsg
00025  */
00026 as_expression::as_expression (ptr< ::lestes::std::source_location > a__as_base__location)
00027         : as_base(a__as_base__location)
00028 {}
00029 
00030 ptr< object::reflection_list > as_expression::reflection_get() const
00031 {
00032         if (!reflection) {
00033                 typedef class_reflection::field_metadata md;
00034                 typedef class_reflection::field_metadata_list mdlist;
00035                 ptr<mdlist> mdl = mdlist::create();
00036                 reflection = reflection_list::create( ::lestes::intercode::as_base::reflection_get() );
00037                 reflection->push_back( class_reflection::create( "as_expression", mdl ) );
00038         }
00039         return reflection;
00040 }
00041 
00042 ptr< object::field_list_list > as_expression::field_values_get() const
00043 {
00044         ptr < field_list_list > result = ::lestes::intercode::as_base::field_values_get();
00045         return result;
00046 }
00047 
00048 
00049 /*!
00050    Marking routine is used for garbage collection.
00051    \author lsg
00052  */
00053 void as_expression::gc_mark()
00054 {
00055 	::lestes::intercode::as_base::gc_mark();
00056 }
00057 
00058 // End of class as_expression.
00059 
00060 // ------------- Class as_empty_expression follows. -------------
00061 
00062 void as_empty_expression::accept_as_expr_visitor( ptr< as_expr_visitor > v )
00063 {
00064         return v->visit_as_empty_expression( this );
00065 }
00066 
00067 /*!
00068    This factory method for class as_empty_expression takes values of all fields as arguments.
00069    \author lsg
00070  */
00071 ptr< as_empty_expression > as_empty_expression::create(ptr< ::lestes::std::source_location > a__as_base__location)
00072 {
00073         return ptr< as_empty_expression > ( new as_empty_expression(a__as_base__location) );
00074 }
00075 
00076 /*!
00077    Generated constructor for class as_empty_expression.
00078    \author lsg
00079  */
00080 as_empty_expression::as_empty_expression (ptr< ::lestes::std::source_location > a__as_base__location)
00081         : as_expression(a__as_base__location)
00082 {}
00083 
00084 ptr< object::reflection_list > as_empty_expression::reflection_get() const
00085 {
00086         if (!reflection) {
00087                 typedef class_reflection::field_metadata md;
00088                 typedef class_reflection::field_metadata_list mdlist;
00089                 ptr<mdlist> mdl = mdlist::create();
00090                 reflection = reflection_list::create( as_expression::reflection_get() );
00091                 reflection->push_back( class_reflection::create( "as_empty_expression", mdl ) );
00092         }
00093         return reflection;
00094 }
00095 
00096 ptr< object::field_list_list > as_empty_expression::field_values_get() const
00097 {
00098         ptr < field_list_list > result = as_expression::field_values_get();
00099         return result;
00100 }
00101 
00102 
00103 /*!
00104    Marking routine is used for garbage collection.
00105    \author lsg
00106  */
00107 void as_empty_expression::gc_mark()
00108 {
00109         as_expression::gc_mark();
00110 }
00111 
00112 // End of class as_empty_expression.
00113 
00114 // ------------- Class as_binary_expression follows. -------------
00115 
00116 /*!
00117    \returns The value of as_binary_expression::left.
00118    \author lsg
00119  */
00120 ptr< as_expression > as_binary_expression::left_get() const
00121 {
00122         return left;
00123 }
00124 
00125 /*!
00126    \param[in] x The new value to set as_binary_expression::left to.
00127    \author lsg
00128  */
00129 void as_binary_expression::left_set(const ptr< as_expression > & x)
00130 {
00131         as_binary_expression::left = x;
00132 }
00133 
00134 /*!
00135    \returns The value of as_binary_expression::right.
00136    \author lsg
00137  */
00138 ptr< as_expression > as_binary_expression::right_get() const
00139 {
00140         return right;
00141 }
00142 
00143 /*!
00144    \param[in] x The new value to set as_binary_expression::right to.
00145    \author lsg
00146  */
00147 void as_binary_expression::right_set(const ptr< as_expression > & x)
00148 {
00149         as_binary_expression::right = x;
00150 }
00151 
00152 /*!
00153    Generated constructor for class as_binary_expression.
00154    \author lsg
00155  */
00156 as_binary_expression::as_binary_expression (ptr< ::lestes::std::source_location > a__as_base__location,
00157                 ptr< as_expression > a__as_binary_expression__left,
00158                 ptr< as_expression > a__as_binary_expression__right)
00159         : as_expression(a__as_base__location), left(checked(a__as_binary_expression__left)), right(checked(a__as_binary_expression__right))
00160 {}
00161 
00162 ptr< object::reflection_list > as_binary_expression::reflection_get() const
00163 {
00164         if (!reflection) {
00165                 typedef class_reflection::field_metadata md;
00166                 typedef class_reflection::field_metadata_list mdlist;
00167                 ptr<mdlist> mdl = mdlist::create();
00168                 mdl->push_back( md::create( "left", "as_expression" ) );
00169                 mdl->push_back( md::create( "right", "as_expression" ) );
00170                 reflection = reflection_list::create( as_expression::reflection_get() );
00171                 reflection->push_back( class_reflection::create( "as_binary_expression", mdl ) );
00172         }
00173         return reflection;
00174 }
00175 
00176 ptr< object::field_list_list > as_binary_expression::field_values_get() const
00177 {
00178         ptr < field_list_list > result = as_expression::field_values_get();
00179         result->push_back( value_list::create() );
00180         result->back()->push_back( this->left );
00181         result->push_back( value_list::create() );
00182         result->back()->push_back( this->right );
00183         return result;
00184 }
00185 
00186 
00187 /*!
00188    Marking routine is used for garbage collection.
00189    \author lsg
00190  */
00191 void as_binary_expression::gc_mark()
00192 {
00193         as_expression::gc_mark();
00194 }
00195 
00196 // End of class as_binary_expression.
00197 
00198 // ------------- Class as_unary_expression follows. -------------
00199 
00200 /*!
00201    \returns The value of as_unary_expression::expr.
00202    \author lsg
00203  */
00204 ptr< as_expression > as_unary_expression::expr_get() const
00205 {
00206         return expr;
00207 }
00208 
00209 /*!
00210    \param[in] x The new value to set as_unary_expression::expr to.
00211    \author lsg
00212  */
00213 void as_unary_expression::expr_set(const ptr< as_expression > & x)
00214 {
00215         as_unary_expression::expr = x;
00216 }
00217 
00218 /*!
00219    Generated constructor for class as_unary_expression.
00220    \author lsg
00221  */
00222 as_unary_expression::as_unary_expression (ptr< ::lestes::std::source_location > a__as_base__location,
00223                 ptr< as_expression > a__as_unary_expression__expr)
00224         : as_expression(a__as_base__location), expr(checked(a__as_unary_expression__expr))
00225 {}
00226 
00227 ptr< object::reflection_list > as_unary_expression::reflection_get() const
00228 {
00229         if (!reflection) {
00230                 typedef class_reflection::field_metadata md;
00231                 typedef class_reflection::field_metadata_list mdlist;
00232                 ptr<mdlist> mdl = mdlist::create();
00233                 mdl->push_back( md::create( "expr", "as_expression" ) );
00234                 reflection = reflection_list::create( as_expression::reflection_get() );
00235                 reflection->push_back( class_reflection::create( "as_unary_expression", mdl ) );
00236         }
00237         return reflection;
00238 }
00239 
00240 ptr< object::field_list_list > as_unary_expression::field_values_get() const
00241 {
00242         ptr < field_list_list > result = as_expression::field_values_get();
00243         result->push_back( value_list::create() );
00244         result->back()->push_back( this->expr );
00245         return result;
00246 }
00247 
00248 
00249 /*!
00250    Marking routine is used for garbage collection.
00251    \author lsg
00252  */
00253 void as_unary_expression::gc_mark()
00254 {
00255         as_expression::gc_mark();
00256 }
00257 
00258 // End of class as_unary_expression.
00259 
00260 // ------------- Class as_ternary_expression follows. -------------
00261 
00262 /*!
00263    \returns The value of as_ternary_expression::first.
00264    \author lsg
00265  */
00266 ptr< as_expression > as_ternary_expression::first_get() const
00267 {
00268         return first;
00269 }
00270 
00271 /*!
00272    \param[in] x The new value to set as_ternary_expression::first to.
00273    \author lsg
00274  */
00275 void as_ternary_expression::first_set(const ptr< as_expression > & x)
00276 {
00277         as_ternary_expression::first = x;
00278 }
00279 
00280 /*!
00281    \returns The value of as_ternary_expression::second.
00282    \author lsg
00283  */
00284 ptr< as_expression > as_ternary_expression::second_get() const
00285 {
00286         return second;
00287 }
00288 
00289 /*!
00290    \param[in] x The new value to set as_ternary_expression::second to.
00291    \author lsg
00292  */
00293 void as_ternary_expression::second_set(const ptr< as_expression > & x)
00294 {
00295         as_ternary_expression::second = x;
00296 }
00297 
00298 /*!
00299    \returns The value of as_ternary_expression::third.
00300    \author lsg
00301  */
00302 ptr< as_expression > as_ternary_expression::third_get() const
00303 {
00304         return third;
00305 }
00306 
00307 /*!
00308    \param[in] x The new value to set as_ternary_expression::third to.
00309    \author lsg
00310  */
00311 void as_ternary_expression::third_set(const ptr< as_expression > & x)
00312 {
00313         as_ternary_expression::third = x;
00314 }
00315 
00316 /*!
00317    Generated constructor for class as_ternary_expression.
00318    \author lsg
00319  */
00320 as_ternary_expression::as_ternary_expression (ptr< ::lestes::std::source_location > a__as_base__location,
00321                 ptr< as_expression > a__as_ternary_expression__first,
00322                 ptr< as_expression > a__as_ternary_expression__second,
00323                 ptr< as_expression > a__as_ternary_expression__third)
00324         : as_expression(a__as_base__location), first(checked(a__as_ternary_expression__first)), second(checked(a__as_ternary_expression__second)), third(checked(a__as_ternary_expression__third))
00325 {}
00326 
00327 ptr< object::reflection_list > as_ternary_expression::reflection_get() const
00328 {
00329         if (!reflection) {
00330                 typedef class_reflection::field_metadata md;
00331                 typedef class_reflection::field_metadata_list mdlist;
00332                 ptr<mdlist> mdl = mdlist::create();
00333                 mdl->push_back( md::create( "first", "as_expression" ) );
00334                 mdl->push_back( md::create( "second", "as_expression" ) );
00335                 mdl->push_back( md::create( "third", "as_expression" ) );
00336                 reflection = reflection_list::create( as_expression::reflection_get() );
00337                 reflection->push_back( class_reflection::create( "as_ternary_expression", mdl ) );
00338         }
00339         return reflection;
00340 }
00341 
00342 ptr< object::field_list_list > as_ternary_expression::field_values_get() const
00343 {
00344         ptr < field_list_list > result = as_expression::field_values_get();
00345         result->push_back( value_list::create() );
00346         result->back()->push_back( this->first );
00347         result->push_back( value_list::create() );
00348         result->back()->push_back( this->second );
00349         result->push_back( value_list::create() );
00350         result->back()->push_back( this->third );
00351         return result;
00352 }
00353 
00354 
00355 /*!
00356    Marking routine is used for garbage collection.
00357    \author lsg
00358  */
00359 void as_ternary_expression::gc_mark()
00360 {
00361         as_expression::gc_mark();
00362 }
00363 
00364 // End of class as_ternary_expression.
00365 
00366 // ------------- Class as_expression_qmark follows. -------------
00367 
00368 void as_expression_qmark::accept_as_expr_visitor( ptr< as_expr_visitor > v )
00369 {
00370         return v->visit_as_expression_qmark( this );
00371 }
00372 
00373 /*!
00374    This factory method for class as_expression_qmark takes values of all fields as arguments.
00375    \author lsg
00376  */
00377 ptr< as_expression_qmark > as_expression_qmark::create(ptr< ::lestes::std::source_location > a__as_base__location,
00378                 ptr< as_expression > a__as_ternary_expression__first,
00379                 ptr< as_expression > a__as_ternary_expression__second,
00380                 ptr< as_expression > a__as_ternary_expression__third)
00381 {
00382         return ptr< as_expression_qmark > ( new as_expression_qmark(a__as_base__location,
00383                 a__as_ternary_expression__first,
00384                 a__as_ternary_expression__second,
00385                 a__as_ternary_expression__third) );
00386 }
00387 
00388 /*!
00389    Generated constructor for class as_expression_qmark.
00390    \author lsg
00391  */
00392 as_expression_qmark::as_expression_qmark (ptr< ::lestes::std::source_location > a__as_base__location,
00393                 ptr< as_expression > a__as_ternary_expression__first,
00394                 ptr< as_expression > a__as_ternary_expression__second,
00395                 ptr< as_expression > a__as_ternary_expression__third)
00396         : as_ternary_expression(a__as_base__location,
00397                 a__as_ternary_expression__first,
00398                 a__as_ternary_expression__second,
00399                 a__as_ternary_expression__third)
00400 {}
00401 
00402 ptr< object::reflection_list > as_expression_qmark::reflection_get() const
00403 {
00404         if (!reflection) {
00405                 typedef class_reflection::field_metadata md;
00406                 typedef class_reflection::field_metadata_list mdlist;
00407                 ptr<mdlist> mdl = mdlist::create();
00408                 reflection = reflection_list::create( as_ternary_expression::reflection_get() );
00409                 reflection->push_back( class_reflection::create( "as_expression_qmark", mdl ) );
00410         }
00411         return reflection;
00412 }
00413 
00414 ptr< object::field_list_list > as_expression_qmark::field_values_get() const
00415 {
00416         ptr < field_list_list > result = as_ternary_expression::field_values_get();
00417         return result;
00418 }
00419 
00420 
00421 /*!
00422    Marking routine is used for garbage collection.
00423    \author lsg
00424  */
00425 void as_expression_qmark::gc_mark()
00426 {
00427         as_ternary_expression::gc_mark();
00428 }
00429 
00430 // End of class as_expression_qmark.
00431 
00432 // ------------- Class as_expression_comma follows. -------------
00433 
00434 void as_expression_comma::accept_as_expr_visitor( ptr< as_expr_visitor > v )
00435 {
00436         return v->visit_as_expression_comma( this );
00437 }
00438 
00439 /*!
00440    This factory method for class as_expression_comma takes values of all fields as arguments.
00441    \author lsg
00442  */
00443 ptr< as_expression_comma > as_expression_comma::create(ptr< ::lestes::std::source_location > a__as_base__location,
00444                 ptr< as_expression > a__as_binary_expression__left,
00445                 ptr< as_expression > a__as_binary_expression__right)
00446 {
00447         return ptr< as_expression_comma > ( new as_expression_comma(a__as_base__location,
00448                 a__as_binary_expression__left,
00449                 a__as_binary_expression__right) );
00450 }
00451 
00452 /*!
00453    Generated constructor for class as_expression_comma.
00454    \author lsg
00455  */
00456 as_expression_comma::as_expression_comma (ptr< ::lestes::std::source_location > a__as_base__location,
00457                 ptr< as_expression > a__as_binary_expression__left,
00458                 ptr< as_expression > a__as_binary_expression__right)
00459         : as_binary_expression(a__as_base__location,
00460                 a__as_binary_expression__left,
00461                 a__as_binary_expression__right)
00462 {}
00463 
00464 ptr< object::reflection_list > as_expression_comma::reflection_get() const
00465 {
00466         if (!reflection) {
00467                 typedef class_reflection::field_metadata md;
00468                 typedef class_reflection::field_metadata_list mdlist;
00469                 ptr<mdlist> mdl = mdlist::create();
00470                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
00471                 reflection->push_back( class_reflection::create( "as_expression_comma", mdl ) );
00472         }
00473         return reflection;
00474 }
00475 
00476 ptr< object::field_list_list > as_expression_comma::field_values_get() const
00477 {
00478         ptr < field_list_list > result = as_binary_expression::field_values_get();
00479         return result;
00480 }
00481 
00482 
00483 /*!
00484    Marking routine is used for garbage collection.
00485    \author lsg
00486  */
00487 void as_expression_comma::gc_mark()
00488 {
00489         as_binary_expression::gc_mark();
00490 }
00491 
00492 // End of class as_expression_comma.
00493 
00494 // ------------- Class as_expression_equal follows. -------------
00495 
00496 void as_expression_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
00497 {
00498         return v->visit_as_expression_equal( this );
00499 }
00500 
00501 /*!
00502    This factory method for class as_expression_equal takes values of all fields as arguments.
00503    \author lsg
00504  */
00505 ptr< as_expression_equal > as_expression_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
00506                 ptr< as_expression > a__as_binary_expression__left,
00507                 ptr< as_expression > a__as_binary_expression__right)
00508 {
00509         return ptr< as_expression_equal > ( new as_expression_equal(a__as_base__location,
00510                 a__as_binary_expression__left,
00511                 a__as_binary_expression__right) );
00512 }
00513 
00514 /*!
00515    Generated constructor for class as_expression_equal.
00516    \author lsg
00517  */
00518 as_expression_equal::as_expression_equal (ptr< ::lestes::std::source_location > a__as_base__location,
00519                 ptr< as_expression > a__as_binary_expression__left,
00520                 ptr< as_expression > a__as_binary_expression__right)
00521         : as_binary_expression(a__as_base__location,
00522                 a__as_binary_expression__left,
00523                 a__as_binary_expression__right)
00524 {}
00525 
00526 ptr< object::reflection_list > as_expression_equal::reflection_get() const
00527 {
00528         if (!reflection) {
00529                 typedef class_reflection::field_metadata md;
00530                 typedef class_reflection::field_metadata_list mdlist;
00531                 ptr<mdlist> mdl = mdlist::create();
00532                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
00533                 reflection->push_back( class_reflection::create( "as_expression_equal", mdl ) );
00534         }
00535         return reflection;
00536 }
00537 
00538 ptr< object::field_list_list > as_expression_equal::field_values_get() const
00539 {
00540         ptr < field_list_list > result = as_binary_expression::field_values_get();
00541         return result;
00542 }
00543 
00544 
00545 /*!
00546    Marking routine is used for garbage collection.
00547    \author lsg
00548  */
00549 void as_expression_equal::gc_mark()
00550 {
00551         as_binary_expression::gc_mark();
00552 }
00553 
00554 // End of class as_expression_equal.
00555 
00556 // ------------- Class as_expression_plus_equal follows. -------------
00557 
00558 void as_expression_plus_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
00559 {
00560         return v->visit_as_expression_plus_equal( this );
00561 }
00562 
00563 /*!
00564    This factory method for class as_expression_plus_equal takes values of all fields as arguments.
00565    \author lsg
00566  */
00567 ptr< as_expression_plus_equal > as_expression_plus_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
00568                 ptr< as_expression > a__as_binary_expression__left,
00569                 ptr< as_expression > a__as_binary_expression__right)
00570 {
00571         return ptr< as_expression_plus_equal > ( new as_expression_plus_equal(a__as_base__location,
00572                 a__as_binary_expression__left,
00573                 a__as_binary_expression__right) );
00574 }
00575 
00576 /*!
00577    Generated constructor for class as_expression_plus_equal.
00578    \author lsg
00579  */
00580 as_expression_plus_equal::as_expression_plus_equal (ptr< ::lestes::std::source_location > a__as_base__location,
00581                 ptr< as_expression > a__as_binary_expression__left,
00582                 ptr< as_expression > a__as_binary_expression__right)
00583         : as_binary_expression(a__as_base__location,
00584                 a__as_binary_expression__left,
00585                 a__as_binary_expression__right)
00586 {}
00587 
00588 ptr< object::reflection_list > as_expression_plus_equal::reflection_get() const
00589 {
00590         if (!reflection) {
00591                 typedef class_reflection::field_metadata md;
00592                 typedef class_reflection::field_metadata_list mdlist;
00593                 ptr<mdlist> mdl = mdlist::create();
00594                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
00595                 reflection->push_back( class_reflection::create( "as_expression_plus_equal", mdl ) );
00596         }
00597         return reflection;
00598 }
00599 
00600 ptr< object::field_list_list > as_expression_plus_equal::field_values_get() const
00601 {
00602         ptr < field_list_list > result = as_binary_expression::field_values_get();
00603         return result;
00604 }
00605 
00606 
00607 /*!
00608    Marking routine is used for garbage collection.
00609    \author lsg
00610  */
00611 void as_expression_plus_equal::gc_mark()
00612 {
00613         as_binary_expression::gc_mark();
00614 }
00615 
00616 // End of class as_expression_plus_equal.
00617 
00618 // ------------- Class as_expression_minus_equal follows. -------------
00619 
00620 void as_expression_minus_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
00621 {
00622         return v->visit_as_expression_minus_equal( this );
00623 }
00624 
00625 /*!
00626    This factory method for class as_expression_minus_equal takes values of all fields as arguments.
00627    \author lsg
00628  */
00629 ptr< as_expression_minus_equal > as_expression_minus_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
00630                 ptr< as_expression > a__as_binary_expression__left,
00631                 ptr< as_expression > a__as_binary_expression__right)
00632 {
00633         return ptr< as_expression_minus_equal > ( new as_expression_minus_equal(a__as_base__location,
00634                 a__as_binary_expression__left,
00635                 a__as_binary_expression__right) );
00636 }
00637 
00638 /*!
00639    Generated constructor for class as_expression_minus_equal.
00640    \author lsg
00641  */
00642 as_expression_minus_equal::as_expression_minus_equal (ptr< ::lestes::std::source_location > a__as_base__location,
00643                 ptr< as_expression > a__as_binary_expression__left,
00644                 ptr< as_expression > a__as_binary_expression__right)
00645         : as_binary_expression(a__as_base__location,
00646                 a__as_binary_expression__left,
00647                 a__as_binary_expression__right)
00648 {}
00649 
00650 ptr< object::reflection_list > as_expression_minus_equal::reflection_get() const
00651 {
00652         if (!reflection) {
00653                 typedef class_reflection::field_metadata md;
00654                 typedef class_reflection::field_metadata_list mdlist;
00655                 ptr<mdlist> mdl = mdlist::create();
00656                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
00657                 reflection->push_back( class_reflection::create( "as_expression_minus_equal", mdl ) );
00658         }
00659         return reflection;
00660 }
00661 
00662 ptr< object::field_list_list > as_expression_minus_equal::field_values_get() const
00663 {
00664         ptr < field_list_list > result = as_binary_expression::field_values_get();
00665         return result;
00666 }
00667 
00668 
00669 /*!
00670    Marking routine is used for garbage collection.
00671    \author lsg
00672  */
00673 void as_expression_minus_equal::gc_mark()
00674 {
00675         as_binary_expression::gc_mark();
00676 }
00677 
00678 // End of class as_expression_minus_equal.
00679 
00680 // ------------- Class as_expression_star_equal follows. -------------
00681 
00682 void as_expression_star_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
00683 {
00684         return v->visit_as_expression_star_equal( this );
00685 }
00686 
00687 /*!
00688    This factory method for class as_expression_star_equal takes values of all fields as arguments.
00689    \author lsg
00690  */
00691 ptr< as_expression_star_equal > as_expression_star_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
00692                 ptr< as_expression > a__as_binary_expression__left,
00693                 ptr< as_expression > a__as_binary_expression__right)
00694 {
00695         return ptr< as_expression_star_equal > ( new as_expression_star_equal(a__as_base__location,
00696                 a__as_binary_expression__left,
00697                 a__as_binary_expression__right) );
00698 }
00699 
00700 /*!
00701    Generated constructor for class as_expression_star_equal.
00702    \author lsg
00703  */
00704 as_expression_star_equal::as_expression_star_equal (ptr< ::lestes::std::source_location > a__as_base__location,
00705                 ptr< as_expression > a__as_binary_expression__left,
00706                 ptr< as_expression > a__as_binary_expression__right)
00707         : as_binary_expression(a__as_base__location,
00708                 a__as_binary_expression__left,
00709                 a__as_binary_expression__right)
00710 {}
00711 
00712 ptr< object::reflection_list > as_expression_star_equal::reflection_get() const
00713 {
00714         if (!reflection) {
00715                 typedef class_reflection::field_metadata md;
00716                 typedef class_reflection::field_metadata_list mdlist;
00717                 ptr<mdlist> mdl = mdlist::create();
00718                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
00719                 reflection->push_back( class_reflection::create( "as_expression_star_equal", mdl ) );
00720         }
00721         return reflection;
00722 }
00723 
00724 ptr< object::field_list_list > as_expression_star_equal::field_values_get() const
00725 {
00726         ptr < field_list_list > result = as_binary_expression::field_values_get();
00727         return result;
00728 }
00729 
00730 
00731 /*!
00732    Marking routine is used for garbage collection.
00733    \author lsg
00734  */
00735 void as_expression_star_equal::gc_mark()
00736 {
00737         as_binary_expression::gc_mark();
00738 }
00739 
00740 // End of class as_expression_star_equal.
00741 
00742 // ------------- Class as_expression_slash_equal follows. -------------
00743 
00744 void as_expression_slash_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
00745 {
00746         return v->visit_as_expression_slash_equal( this );
00747 }
00748 
00749 /*!
00750    This factory method for class as_expression_slash_equal takes values of all fields as arguments.
00751    \author lsg
00752  */
00753 ptr< as_expression_slash_equal > as_expression_slash_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
00754                 ptr< as_expression > a__as_binary_expression__left,
00755                 ptr< as_expression > a__as_binary_expression__right)
00756 {
00757         return ptr< as_expression_slash_equal > ( new as_expression_slash_equal(a__as_base__location,
00758                 a__as_binary_expression__left,
00759                 a__as_binary_expression__right) );
00760 }
00761 
00762 /*!
00763    Generated constructor for class as_expression_slash_equal.
00764    \author lsg
00765  */
00766 as_expression_slash_equal::as_expression_slash_equal (ptr< ::lestes::std::source_location > a__as_base__location,
00767                 ptr< as_expression > a__as_binary_expression__left,
00768                 ptr< as_expression > a__as_binary_expression__right)
00769         : as_binary_expression(a__as_base__location,
00770                 a__as_binary_expression__left,
00771                 a__as_binary_expression__right)
00772 {}
00773 
00774 ptr< object::reflection_list > as_expression_slash_equal::reflection_get() const
00775 {
00776         if (!reflection) {
00777                 typedef class_reflection::field_metadata md;
00778                 typedef class_reflection::field_metadata_list mdlist;
00779                 ptr<mdlist> mdl = mdlist::create();
00780                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
00781                 reflection->push_back( class_reflection::create( "as_expression_slash_equal", mdl ) );
00782         }
00783         return reflection;
00784 }
00785 
00786 ptr< object::field_list_list > as_expression_slash_equal::field_values_get() const
00787 {
00788         ptr < field_list_list > result = as_binary_expression::field_values_get();
00789         return result;
00790 }
00791 
00792 
00793 /*!
00794    Marking routine is used for garbage collection.
00795    \author lsg
00796  */
00797 void as_expression_slash_equal::gc_mark()
00798 {
00799         as_binary_expression::gc_mark();
00800 }
00801 
00802 // End of class as_expression_slash_equal.
00803 
00804 // ------------- Class as_expression_percent_equal follows. -------------
00805 
00806 void as_expression_percent_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
00807 {
00808         return v->visit_as_expression_percent_equal( this );
00809 }
00810 
00811 /*!
00812    This factory method for class as_expression_percent_equal takes values of all fields as arguments.
00813    \author lsg
00814  */
00815 ptr< as_expression_percent_equal > as_expression_percent_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
00816                 ptr< as_expression > a__as_binary_expression__left,
00817                 ptr< as_expression > a__as_binary_expression__right)
00818 {
00819         return ptr< as_expression_percent_equal > ( new as_expression_percent_equal(a__as_base__location,
00820                 a__as_binary_expression__left,
00821                 a__as_binary_expression__right) );
00822 }
00823 
00824 /*!
00825    Generated constructor for class as_expression_percent_equal.
00826    \author lsg
00827  */
00828 as_expression_percent_equal::as_expression_percent_equal (ptr< ::lestes::std::source_location > a__as_base__location,
00829                 ptr< as_expression > a__as_binary_expression__left,
00830                 ptr< as_expression > a__as_binary_expression__right)
00831         : as_binary_expression(a__as_base__location,
00832                 a__as_binary_expression__left,
00833                 a__as_binary_expression__right)
00834 {}
00835 
00836 ptr< object::reflection_list > as_expression_percent_equal::reflection_get() const
00837 {
00838         if (!reflection) {
00839                 typedef class_reflection::field_metadata md;
00840                 typedef class_reflection::field_metadata_list mdlist;
00841                 ptr<mdlist> mdl = mdlist::create();
00842                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
00843                 reflection->push_back( class_reflection::create( "as_expression_percent_equal", mdl ) );
00844         }
00845         return reflection;
00846 }
00847 
00848 ptr< object::field_list_list > as_expression_percent_equal::field_values_get() const
00849 {
00850         ptr < field_list_list > result = as_binary_expression::field_values_get();
00851         return result;
00852 }
00853 
00854 
00855 /*!
00856    Marking routine is used for garbage collection.
00857    \author lsg
00858  */
00859 void as_expression_percent_equal::gc_mark()
00860 {
00861         as_binary_expression::gc_mark();
00862 }
00863 
00864 // End of class as_expression_percent_equal.
00865 
00866 // ------------- Class as_expression_hat_equal follows. -------------
00867 
00868 void as_expression_hat_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
00869 {
00870         return v->visit_as_expression_hat_equal( this );
00871 }
00872 
00873 /*!
00874    This factory method for class as_expression_hat_equal takes values of all fields as arguments.
00875    \author lsg
00876  */
00877 ptr< as_expression_hat_equal > as_expression_hat_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
00878                 ptr< as_expression > a__as_binary_expression__left,
00879                 ptr< as_expression > a__as_binary_expression__right)
00880 {
00881         return ptr< as_expression_hat_equal > ( new as_expression_hat_equal(a__as_base__location,
00882                 a__as_binary_expression__left,
00883                 a__as_binary_expression__right) );
00884 }
00885 
00886 /*!
00887    Generated constructor for class as_expression_hat_equal.
00888    \author lsg
00889  */
00890 as_expression_hat_equal::as_expression_hat_equal (ptr< ::lestes::std::source_location > a__as_base__location,
00891                 ptr< as_expression > a__as_binary_expression__left,
00892                 ptr< as_expression > a__as_binary_expression__right)
00893         : as_binary_expression(a__as_base__location,
00894                 a__as_binary_expression__left,
00895                 a__as_binary_expression__right)
00896 {}
00897 
00898 ptr< object::reflection_list > as_expression_hat_equal::reflection_get() const
00899 {
00900         if (!reflection) {
00901                 typedef class_reflection::field_metadata md;
00902                 typedef class_reflection::field_metadata_list mdlist;
00903                 ptr<mdlist> mdl = mdlist::create();
00904                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
00905                 reflection->push_back( class_reflection::create( "as_expression_hat_equal", mdl ) );
00906         }
00907         return reflection;
00908 }
00909 
00910 ptr< object::field_list_list > as_expression_hat_equal::field_values_get() const
00911 {
00912         ptr < field_list_list > result = as_binary_expression::field_values_get();
00913         return result;
00914 }
00915 
00916 
00917 /*!
00918    Marking routine is used for garbage collection.
00919    \author lsg
00920  */
00921 void as_expression_hat_equal::gc_mark()
00922 {
00923         as_binary_expression::gc_mark();
00924 }
00925 
00926 // End of class as_expression_hat_equal.
00927 
00928 // ------------- Class as_expression_amp_equal follows. -------------
00929 
00930 void as_expression_amp_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
00931 {
00932         return v->visit_as_expression_amp_equal( this );
00933 }
00934 
00935 /*!
00936    This factory method for class as_expression_amp_equal takes values of all fields as arguments.
00937    \author lsg
00938  */
00939 ptr< as_expression_amp_equal > as_expression_amp_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
00940                 ptr< as_expression > a__as_binary_expression__left,
00941                 ptr< as_expression > a__as_binary_expression__right)
00942 {
00943         return ptr< as_expression_amp_equal > ( new as_expression_amp_equal(a__as_base__location,
00944                 a__as_binary_expression__left,
00945                 a__as_binary_expression__right) );
00946 }
00947 
00948 /*!
00949    Generated constructor for class as_expression_amp_equal.
00950    \author lsg
00951  */
00952 as_expression_amp_equal::as_expression_amp_equal (ptr< ::lestes::std::source_location > a__as_base__location,
00953                 ptr< as_expression > a__as_binary_expression__left,
00954                 ptr< as_expression > a__as_binary_expression__right)
00955         : as_binary_expression(a__as_base__location,
00956                 a__as_binary_expression__left,
00957                 a__as_binary_expression__right)
00958 {}
00959 
00960 ptr< object::reflection_list > as_expression_amp_equal::reflection_get() const
00961 {
00962         if (!reflection) {
00963                 typedef class_reflection::field_metadata md;
00964                 typedef class_reflection::field_metadata_list mdlist;
00965                 ptr<mdlist> mdl = mdlist::create();
00966                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
00967                 reflection->push_back( class_reflection::create( "as_expression_amp_equal", mdl ) );
00968         }
00969         return reflection;
00970 }
00971 
00972 ptr< object::field_list_list > as_expression_amp_equal::field_values_get() const
00973 {
00974         ptr < field_list_list > result = as_binary_expression::field_values_get();
00975         return result;
00976 }
00977 
00978 
00979 /*!
00980    Marking routine is used for garbage collection.
00981    \author lsg
00982  */
00983 void as_expression_amp_equal::gc_mark()
00984 {
00985         as_binary_expression::gc_mark();
00986 }
00987 
00988 // End of class as_expression_amp_equal.
00989 
00990 // ------------- Class as_expression_vbar_equal follows. -------------
00991 
00992 void as_expression_vbar_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
00993 {
00994         return v->visit_as_expression_vbar_equal( this );
00995 }
00996 
00997 /*!
00998    This factory method for class as_expression_vbar_equal takes values of all fields as arguments.
00999    \author lsg
01000  */
01001 ptr< as_expression_vbar_equal > as_expression_vbar_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
01002                 ptr< as_expression > a__as_binary_expression__left,
01003                 ptr< as_expression > a__as_binary_expression__right)
01004 {
01005         return ptr< as_expression_vbar_equal > ( new as_expression_vbar_equal(a__as_base__location,
01006                 a__as_binary_expression__left,
01007                 a__as_binary_expression__right) );
01008 }
01009 
01010 /*!
01011    Generated constructor for class as_expression_vbar_equal.
01012    \author lsg
01013  */
01014 as_expression_vbar_equal::as_expression_vbar_equal (ptr< ::lestes::std::source_location > a__as_base__location,
01015                 ptr< as_expression > a__as_binary_expression__left,
01016                 ptr< as_expression > a__as_binary_expression__right)
01017         : as_binary_expression(a__as_base__location,
01018                 a__as_binary_expression__left,
01019                 a__as_binary_expression__right)
01020 {}
01021 
01022 ptr< object::reflection_list > as_expression_vbar_equal::reflection_get() const
01023 {
01024         if (!reflection) {
01025                 typedef class_reflection::field_metadata md;
01026                 typedef class_reflection::field_metadata_list mdlist;
01027                 ptr<mdlist> mdl = mdlist::create();
01028                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01029                 reflection->push_back( class_reflection::create( "as_expression_vbar_equal", mdl ) );
01030         }
01031         return reflection;
01032 }
01033 
01034 ptr< object::field_list_list > as_expression_vbar_equal::field_values_get() const
01035 {
01036         ptr < field_list_list > result = as_binary_expression::field_values_get();
01037         return result;
01038 }
01039 
01040 
01041 /*!
01042    Marking routine is used for garbage collection.
01043    \author lsg
01044  */
01045 void as_expression_vbar_equal::gc_mark()
01046 {
01047         as_binary_expression::gc_mark();
01048 }
01049 
01050 // End of class as_expression_vbar_equal.
01051 
01052 // ------------- Class as_expression_less_less_equal follows. -------------
01053 
01054 void as_expression_less_less_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01055 {
01056         return v->visit_as_expression_less_less_equal( this );
01057 }
01058 
01059 /*!
01060    This factory method for class as_expression_less_less_equal takes values of all fields as arguments.
01061    \author lsg
01062  */
01063 ptr< as_expression_less_less_equal > as_expression_less_less_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
01064                 ptr< as_expression > a__as_binary_expression__left,
01065                 ptr< as_expression > a__as_binary_expression__right)
01066 {
01067         return ptr< as_expression_less_less_equal > ( new as_expression_less_less_equal(a__as_base__location,
01068                 a__as_binary_expression__left,
01069                 a__as_binary_expression__right) );
01070 }
01071 
01072 /*!
01073    Generated constructor for class as_expression_less_less_equal.
01074    \author lsg
01075  */
01076 as_expression_less_less_equal::as_expression_less_less_equal (ptr< ::lestes::std::source_location > a__as_base__location,
01077                 ptr< as_expression > a__as_binary_expression__left,
01078                 ptr< as_expression > a__as_binary_expression__right)
01079         : as_binary_expression(a__as_base__location,
01080                 a__as_binary_expression__left,
01081                 a__as_binary_expression__right)
01082 {}
01083 
01084 ptr< object::reflection_list > as_expression_less_less_equal::reflection_get() const
01085 {
01086         if (!reflection) {
01087                 typedef class_reflection::field_metadata md;
01088                 typedef class_reflection::field_metadata_list mdlist;
01089                 ptr<mdlist> mdl = mdlist::create();
01090                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01091                 reflection->push_back( class_reflection::create( "as_expression_less_less_equal", mdl ) );
01092         }
01093         return reflection;
01094 }
01095 
01096 ptr< object::field_list_list > as_expression_less_less_equal::field_values_get() const
01097 {
01098         ptr < field_list_list > result = as_binary_expression::field_values_get();
01099         return result;
01100 }
01101 
01102 
01103 /*!
01104    Marking routine is used for garbage collection.
01105    \author lsg
01106  */
01107 void as_expression_less_less_equal::gc_mark()
01108 {
01109         as_binary_expression::gc_mark();
01110 }
01111 
01112 // End of class as_expression_less_less_equal.
01113 
01114 // ------------- Class as_expression_greater_greater_equal follows. -------------
01115 
01116 void as_expression_greater_greater_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01117 {
01118         return v->visit_as_expression_greater_greater_equal( this );
01119 }
01120 
01121 /*!
01122    This factory method for class as_expression_greater_greater_equal takes values of all fields as arguments.
01123    \author lsg
01124  */
01125 ptr< as_expression_greater_greater_equal > as_expression_greater_greater_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
01126                 ptr< as_expression > a__as_binary_expression__left,
01127                 ptr< as_expression > a__as_binary_expression__right)
01128 {
01129         return ptr< as_expression_greater_greater_equal > ( new as_expression_greater_greater_equal(a__as_base__location,
01130                 a__as_binary_expression__left,
01131                 a__as_binary_expression__right) );
01132 }
01133 
01134 /*!
01135    Generated constructor for class as_expression_greater_greater_equal.
01136    \author lsg
01137  */
01138 as_expression_greater_greater_equal::as_expression_greater_greater_equal (ptr< ::lestes::std::source_location > a__as_base__location,
01139                 ptr< as_expression > a__as_binary_expression__left,
01140                 ptr< as_expression > a__as_binary_expression__right)
01141         : as_binary_expression(a__as_base__location,
01142                 a__as_binary_expression__left,
01143                 a__as_binary_expression__right)
01144 {}
01145 
01146 ptr< object::reflection_list > as_expression_greater_greater_equal::reflection_get() const
01147 {
01148         if (!reflection) {
01149                 typedef class_reflection::field_metadata md;
01150                 typedef class_reflection::field_metadata_list mdlist;
01151                 ptr<mdlist> mdl = mdlist::create();
01152                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01153                 reflection->push_back( class_reflection::create( "as_expression_greater_greater_equal", mdl ) );
01154         }
01155         return reflection;
01156 }
01157 
01158 ptr< object::field_list_list > as_expression_greater_greater_equal::field_values_get() const
01159 {
01160         ptr < field_list_list > result = as_binary_expression::field_values_get();
01161         return result;
01162 }
01163 
01164 
01165 /*!
01166    Marking routine is used for garbage collection.
01167    \author lsg
01168  */
01169 void as_expression_greater_greater_equal::gc_mark()
01170 {
01171         as_binary_expression::gc_mark();
01172 }
01173 
01174 // End of class as_expression_greater_greater_equal.
01175 
01176 // ------------- Class as_expression_equal_equal follows. -------------
01177 
01178 void as_expression_equal_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01179 {
01180         return v->visit_as_expression_equal_equal( this );
01181 }
01182 
01183 /*!
01184    This factory method for class as_expression_equal_equal takes values of all fields as arguments.
01185    \author lsg
01186  */
01187 ptr< as_expression_equal_equal > as_expression_equal_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
01188                 ptr< as_expression > a__as_binary_expression__left,
01189                 ptr< as_expression > a__as_binary_expression__right)
01190 {
01191         return ptr< as_expression_equal_equal > ( new as_expression_equal_equal(a__as_base__location,
01192                 a__as_binary_expression__left,
01193                 a__as_binary_expression__right) );
01194 }
01195 
01196 /*!
01197    Generated constructor for class as_expression_equal_equal.
01198    \author lsg
01199  */
01200 as_expression_equal_equal::as_expression_equal_equal (ptr< ::lestes::std::source_location > a__as_base__location,
01201                 ptr< as_expression > a__as_binary_expression__left,
01202                 ptr< as_expression > a__as_binary_expression__right)
01203         : as_binary_expression(a__as_base__location,
01204                 a__as_binary_expression__left,
01205                 a__as_binary_expression__right)
01206 {}
01207 
01208 ptr< object::reflection_list > as_expression_equal_equal::reflection_get() const
01209 {
01210         if (!reflection) {
01211                 typedef class_reflection::field_metadata md;
01212                 typedef class_reflection::field_metadata_list mdlist;
01213                 ptr<mdlist> mdl = mdlist::create();
01214                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01215                 reflection->push_back( class_reflection::create( "as_expression_equal_equal", mdl ) );
01216         }
01217         return reflection;
01218 }
01219 
01220 ptr< object::field_list_list > as_expression_equal_equal::field_values_get() const
01221 {
01222         ptr < field_list_list > result = as_binary_expression::field_values_get();
01223         return result;
01224 }
01225 
01226 
01227 /*!
01228    Marking routine is used for garbage collection.
01229    \author lsg
01230  */
01231 void as_expression_equal_equal::gc_mark()
01232 {
01233         as_binary_expression::gc_mark();
01234 }
01235 
01236 // End of class as_expression_equal_equal.
01237 
01238 // ------------- Class as_expression_exclam_equal follows. -------------
01239 
01240 void as_expression_exclam_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01241 {
01242         return v->visit_as_expression_exclam_equal( this );
01243 }
01244 
01245 /*!
01246    This factory method for class as_expression_exclam_equal takes values of all fields as arguments.
01247    \author lsg
01248  */
01249 ptr< as_expression_exclam_equal > as_expression_exclam_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
01250                 ptr< as_expression > a__as_binary_expression__left,
01251                 ptr< as_expression > a__as_binary_expression__right)
01252 {
01253         return ptr< as_expression_exclam_equal > ( new as_expression_exclam_equal(a__as_base__location,
01254                 a__as_binary_expression__left,
01255                 a__as_binary_expression__right) );
01256 }
01257 
01258 /*!
01259    Generated constructor for class as_expression_exclam_equal.
01260    \author lsg
01261  */
01262 as_expression_exclam_equal::as_expression_exclam_equal (ptr< ::lestes::std::source_location > a__as_base__location,
01263                 ptr< as_expression > a__as_binary_expression__left,
01264                 ptr< as_expression > a__as_binary_expression__right)
01265         : as_binary_expression(a__as_base__location,
01266                 a__as_binary_expression__left,
01267                 a__as_binary_expression__right)
01268 {}
01269 
01270 ptr< object::reflection_list > as_expression_exclam_equal::reflection_get() const
01271 {
01272         if (!reflection) {
01273                 typedef class_reflection::field_metadata md;
01274                 typedef class_reflection::field_metadata_list mdlist;
01275                 ptr<mdlist> mdl = mdlist::create();
01276                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01277                 reflection->push_back( class_reflection::create( "as_expression_exclam_equal", mdl ) );
01278         }
01279         return reflection;
01280 }
01281 
01282 ptr< object::field_list_list > as_expression_exclam_equal::field_values_get() const
01283 {
01284         ptr < field_list_list > result = as_binary_expression::field_values_get();
01285         return result;
01286 }
01287 
01288 
01289 /*!
01290    Marking routine is used for garbage collection.
01291    \author lsg
01292  */
01293 void as_expression_exclam_equal::gc_mark()
01294 {
01295         as_binary_expression::gc_mark();
01296 }
01297 
01298 // End of class as_expression_exclam_equal.
01299 
01300 // ------------- Class as_expression_less_equal follows. -------------
01301 
01302 void as_expression_less_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01303 {
01304         return v->visit_as_expression_less_equal( this );
01305 }
01306 
01307 /*!
01308    This factory method for class as_expression_less_equal takes values of all fields as arguments.
01309    \author lsg
01310  */
01311 ptr< as_expression_less_equal > as_expression_less_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
01312                 ptr< as_expression > a__as_binary_expression__left,
01313                 ptr< as_expression > a__as_binary_expression__right)
01314 {
01315         return ptr< as_expression_less_equal > ( new as_expression_less_equal(a__as_base__location,
01316                 a__as_binary_expression__left,
01317                 a__as_binary_expression__right) );
01318 }
01319 
01320 /*!
01321    Generated constructor for class as_expression_less_equal.
01322    \author lsg
01323  */
01324 as_expression_less_equal::as_expression_less_equal (ptr< ::lestes::std::source_location > a__as_base__location,
01325                 ptr< as_expression > a__as_binary_expression__left,
01326                 ptr< as_expression > a__as_binary_expression__right)
01327         : as_binary_expression(a__as_base__location,
01328                 a__as_binary_expression__left,
01329                 a__as_binary_expression__right)
01330 {}
01331 
01332 ptr< object::reflection_list > as_expression_less_equal::reflection_get() const
01333 {
01334         if (!reflection) {
01335                 typedef class_reflection::field_metadata md;
01336                 typedef class_reflection::field_metadata_list mdlist;
01337                 ptr<mdlist> mdl = mdlist::create();
01338                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01339                 reflection->push_back( class_reflection::create( "as_expression_less_equal", mdl ) );
01340         }
01341         return reflection;
01342 }
01343 
01344 ptr< object::field_list_list > as_expression_less_equal::field_values_get() const
01345 {
01346         ptr < field_list_list > result = as_binary_expression::field_values_get();
01347         return result;
01348 }
01349 
01350 
01351 /*!
01352    Marking routine is used for garbage collection.
01353    \author lsg
01354  */
01355 void as_expression_less_equal::gc_mark()
01356 {
01357         as_binary_expression::gc_mark();
01358 }
01359 
01360 // End of class as_expression_less_equal.
01361 
01362 // ------------- Class as_expression_greater_equal follows. -------------
01363 
01364 void as_expression_greater_equal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01365 {
01366         return v->visit_as_expression_greater_equal( this );
01367 }
01368 
01369 /*!
01370    This factory method for class as_expression_greater_equal takes values of all fields as arguments.
01371    \author lsg
01372  */
01373 ptr< as_expression_greater_equal > as_expression_greater_equal::create(ptr< ::lestes::std::source_location > a__as_base__location,
01374                 ptr< as_expression > a__as_binary_expression__left,
01375                 ptr< as_expression > a__as_binary_expression__right)
01376 {
01377         return ptr< as_expression_greater_equal > ( new as_expression_greater_equal(a__as_base__location,
01378                 a__as_binary_expression__left,
01379                 a__as_binary_expression__right) );
01380 }
01381 
01382 /*!
01383    Generated constructor for class as_expression_greater_equal.
01384    \author lsg
01385  */
01386 as_expression_greater_equal::as_expression_greater_equal (ptr< ::lestes::std::source_location > a__as_base__location,
01387                 ptr< as_expression > a__as_binary_expression__left,
01388                 ptr< as_expression > a__as_binary_expression__right)
01389         : as_binary_expression(a__as_base__location,
01390                 a__as_binary_expression__left,
01391                 a__as_binary_expression__right)
01392 {}
01393 
01394 ptr< object::reflection_list > as_expression_greater_equal::reflection_get() const
01395 {
01396         if (!reflection) {
01397                 typedef class_reflection::field_metadata md;
01398                 typedef class_reflection::field_metadata_list mdlist;
01399                 ptr<mdlist> mdl = mdlist::create();
01400                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01401                 reflection->push_back( class_reflection::create( "as_expression_greater_equal", mdl ) );
01402         }
01403         return reflection;
01404 }
01405 
01406 ptr< object::field_list_list > as_expression_greater_equal::field_values_get() const
01407 {
01408         ptr < field_list_list > result = as_binary_expression::field_values_get();
01409         return result;
01410 }
01411 
01412 
01413 /*!
01414    Marking routine is used for garbage collection.
01415    \author lsg
01416  */
01417 void as_expression_greater_equal::gc_mark()
01418 {
01419         as_binary_expression::gc_mark();
01420 }
01421 
01422 // End of class as_expression_greater_equal.
01423 
01424 // ------------- Class as_expression_less follows. -------------
01425 
01426 void as_expression_less::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01427 {
01428         return v->visit_as_expression_less( this );
01429 }
01430 
01431 /*!
01432    This factory method for class as_expression_less takes values of all fields as arguments.
01433    \author lsg
01434  */
01435 ptr< as_expression_less > as_expression_less::create(ptr< ::lestes::std::source_location > a__as_base__location,
01436                 ptr< as_expression > a__as_binary_expression__left,
01437                 ptr< as_expression > a__as_binary_expression__right)
01438 {
01439         return ptr< as_expression_less > ( new as_expression_less(a__as_base__location,
01440                 a__as_binary_expression__left,
01441                 a__as_binary_expression__right) );
01442 }
01443 
01444 /*!
01445    Generated constructor for class as_expression_less.
01446    \author lsg
01447  */
01448 as_expression_less::as_expression_less (ptr< ::lestes::std::source_location > a__as_base__location,
01449                 ptr< as_expression > a__as_binary_expression__left,
01450                 ptr< as_expression > a__as_binary_expression__right)
01451         : as_binary_expression(a__as_base__location,
01452                 a__as_binary_expression__left,
01453                 a__as_binary_expression__right)
01454 {}
01455 
01456 ptr< object::reflection_list > as_expression_less::reflection_get() const
01457 {
01458         if (!reflection) {
01459                 typedef class_reflection::field_metadata md;
01460                 typedef class_reflection::field_metadata_list mdlist;
01461                 ptr<mdlist> mdl = mdlist::create();
01462                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01463                 reflection->push_back( class_reflection::create( "as_expression_less", mdl ) );
01464         }
01465         return reflection;
01466 }
01467 
01468 ptr< object::field_list_list > as_expression_less::field_values_get() const
01469 {
01470         ptr < field_list_list > result = as_binary_expression::field_values_get();
01471         return result;
01472 }
01473 
01474 
01475 /*!
01476    Marking routine is used for garbage collection.
01477    \author lsg
01478  */
01479 void as_expression_less::gc_mark()
01480 {
01481         as_binary_expression::gc_mark();
01482 }
01483 
01484 // End of class as_expression_less.
01485 
01486 // ------------- Class as_expression_greater follows. -------------
01487 
01488 void as_expression_greater::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01489 {
01490         return v->visit_as_expression_greater( this );
01491 }
01492 
01493 /*!
01494    This factory method for class as_expression_greater takes values of all fields as arguments.
01495    \author lsg
01496  */
01497 ptr< as_expression_greater > as_expression_greater::create(ptr< ::lestes::std::source_location > a__as_base__location,
01498                 ptr< as_expression > a__as_binary_expression__left,
01499                 ptr< as_expression > a__as_binary_expression__right)
01500 {
01501         return ptr< as_expression_greater > ( new as_expression_greater(a__as_base__location,
01502                 a__as_binary_expression__left,
01503                 a__as_binary_expression__right) );
01504 }
01505 
01506 /*!
01507    Generated constructor for class as_expression_greater.
01508    \author lsg
01509  */
01510 as_expression_greater::as_expression_greater (ptr< ::lestes::std::source_location > a__as_base__location,
01511                 ptr< as_expression > a__as_binary_expression__left,
01512                 ptr< as_expression > a__as_binary_expression__right)
01513         : as_binary_expression(a__as_base__location,
01514                 a__as_binary_expression__left,
01515                 a__as_binary_expression__right)
01516 {}
01517 
01518 ptr< object::reflection_list > as_expression_greater::reflection_get() const
01519 {
01520         if (!reflection) {
01521                 typedef class_reflection::field_metadata md;
01522                 typedef class_reflection::field_metadata_list mdlist;
01523                 ptr<mdlist> mdl = mdlist::create();
01524                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01525                 reflection->push_back( class_reflection::create( "as_expression_greater", mdl ) );
01526         }
01527         return reflection;
01528 }
01529 
01530 ptr< object::field_list_list > as_expression_greater::field_values_get() const
01531 {
01532         ptr < field_list_list > result = as_binary_expression::field_values_get();
01533         return result;
01534 }
01535 
01536 
01537 /*!
01538    Marking routine is used for garbage collection.
01539    \author lsg
01540  */
01541 void as_expression_greater::gc_mark()
01542 {
01543         as_binary_expression::gc_mark();
01544 }
01545 
01546 // End of class as_expression_greater.
01547 
01548 // ------------- Class as_expression_vbar_vbar follows. -------------
01549 
01550 void as_expression_vbar_vbar::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01551 {
01552         return v->visit_as_expression_vbar_vbar( this );
01553 }
01554 
01555 /*!
01556    This factory method for class as_expression_vbar_vbar takes values of all fields as arguments.
01557    \author lsg
01558  */
01559 ptr< as_expression_vbar_vbar > as_expression_vbar_vbar::create(ptr< ::lestes::std::source_location > a__as_base__location,
01560                 ptr< as_expression > a__as_binary_expression__left,
01561                 ptr< as_expression > a__as_binary_expression__right)
01562 {
01563         return ptr< as_expression_vbar_vbar > ( new as_expression_vbar_vbar(a__as_base__location,
01564                 a__as_binary_expression__left,
01565                 a__as_binary_expression__right) );
01566 }
01567 
01568 /*!
01569    Generated constructor for class as_expression_vbar_vbar.
01570    \author lsg
01571  */
01572 as_expression_vbar_vbar::as_expression_vbar_vbar (ptr< ::lestes::std::source_location > a__as_base__location,
01573                 ptr< as_expression > a__as_binary_expression__left,
01574                 ptr< as_expression > a__as_binary_expression__right)
01575         : as_binary_expression(a__as_base__location,
01576                 a__as_binary_expression__left,
01577                 a__as_binary_expression__right)
01578 {}
01579 
01580 ptr< object::reflection_list > as_expression_vbar_vbar::reflection_get() const
01581 {
01582         if (!reflection) {
01583                 typedef class_reflection::field_metadata md;
01584                 typedef class_reflection::field_metadata_list mdlist;
01585                 ptr<mdlist> mdl = mdlist::create();
01586                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01587                 reflection->push_back( class_reflection::create( "as_expression_vbar_vbar", mdl ) );
01588         }
01589         return reflection;
01590 }
01591 
01592 ptr< object::field_list_list > as_expression_vbar_vbar::field_values_get() const
01593 {
01594         ptr < field_list_list > result = as_binary_expression::field_values_get();
01595         return result;
01596 }
01597 
01598 
01599 /*!
01600    Marking routine is used for garbage collection.
01601    \author lsg
01602  */
01603 void as_expression_vbar_vbar::gc_mark()
01604 {
01605         as_binary_expression::gc_mark();
01606 }
01607 
01608 // End of class as_expression_vbar_vbar.
01609 
01610 // ------------- Class as_expression_amp_amp follows. -------------
01611 
01612 void as_expression_amp_amp::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01613 {
01614         return v->visit_as_expression_amp_amp( this );
01615 }
01616 
01617 /*!
01618    This factory method for class as_expression_amp_amp takes values of all fields as arguments.
01619    \author lsg
01620  */
01621 ptr< as_expression_amp_amp > as_expression_amp_amp::create(ptr< ::lestes::std::source_location > a__as_base__location,
01622                 ptr< as_expression > a__as_binary_expression__left,
01623                 ptr< as_expression > a__as_binary_expression__right)
01624 {
01625         return ptr< as_expression_amp_amp > ( new as_expression_amp_amp(a__as_base__location,
01626                 a__as_binary_expression__left,
01627                 a__as_binary_expression__right) );
01628 }
01629 
01630 /*!
01631    Generated constructor for class as_expression_amp_amp.
01632    \author lsg
01633  */
01634 as_expression_amp_amp::as_expression_amp_amp (ptr< ::lestes::std::source_location > a__as_base__location,
01635                 ptr< as_expression > a__as_binary_expression__left,
01636                 ptr< as_expression > a__as_binary_expression__right)
01637         : as_binary_expression(a__as_base__location,
01638                 a__as_binary_expression__left,
01639                 a__as_binary_expression__right)
01640 {}
01641 
01642 ptr< object::reflection_list > as_expression_amp_amp::reflection_get() const
01643 {
01644         if (!reflection) {
01645                 typedef class_reflection::field_metadata md;
01646                 typedef class_reflection::field_metadata_list mdlist;
01647                 ptr<mdlist> mdl = mdlist::create();
01648                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01649                 reflection->push_back( class_reflection::create( "as_expression_amp_amp", mdl ) );
01650         }
01651         return reflection;
01652 }
01653 
01654 ptr< object::field_list_list > as_expression_amp_amp::field_values_get() const
01655 {
01656         ptr < field_list_list > result = as_binary_expression::field_values_get();
01657         return result;
01658 }
01659 
01660 
01661 /*!
01662    Marking routine is used for garbage collection.
01663    \author lsg
01664  */
01665 void as_expression_amp_amp::gc_mark()
01666 {
01667         as_binary_expression::gc_mark();
01668 }
01669 
01670 // End of class as_expression_amp_amp.
01671 
01672 // ------------- Class as_expression_vbar follows. -------------
01673 
01674 void as_expression_vbar::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01675 {
01676         return v->visit_as_expression_vbar( this );
01677 }
01678 
01679 /*!
01680    This factory method for class as_expression_vbar takes values of all fields as arguments.
01681    \author lsg
01682  */
01683 ptr< as_expression_vbar > as_expression_vbar::create(ptr< ::lestes::std::source_location > a__as_base__location,
01684                 ptr< as_expression > a__as_binary_expression__left,
01685                 ptr< as_expression > a__as_binary_expression__right)
01686 {
01687         return ptr< as_expression_vbar > ( new as_expression_vbar(a__as_base__location,
01688                 a__as_binary_expression__left,
01689                 a__as_binary_expression__right) );
01690 }
01691 
01692 /*!
01693    Generated constructor for class as_expression_vbar.
01694    \author lsg
01695  */
01696 as_expression_vbar::as_expression_vbar (ptr< ::lestes::std::source_location > a__as_base__location,
01697                 ptr< as_expression > a__as_binary_expression__left,
01698                 ptr< as_expression > a__as_binary_expression__right)
01699         : as_binary_expression(a__as_base__location,
01700                 a__as_binary_expression__left,
01701                 a__as_binary_expression__right)
01702 {}
01703 
01704 ptr< object::reflection_list > as_expression_vbar::reflection_get() const
01705 {
01706         if (!reflection) {
01707                 typedef class_reflection::field_metadata md;
01708                 typedef class_reflection::field_metadata_list mdlist;
01709                 ptr<mdlist> mdl = mdlist::create();
01710                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01711                 reflection->push_back( class_reflection::create( "as_expression_vbar", mdl ) );
01712         }
01713         return reflection;
01714 }
01715 
01716 ptr< object::field_list_list > as_expression_vbar::field_values_get() const
01717 {
01718         ptr < field_list_list > result = as_binary_expression::field_values_get();
01719         return result;
01720 }
01721 
01722 
01723 /*!
01724    Marking routine is used for garbage collection.
01725    \author lsg
01726  */
01727 void as_expression_vbar::gc_mark()
01728 {
01729         as_binary_expression::gc_mark();
01730 }
01731 
01732 // End of class as_expression_vbar.
01733 
01734 // ------------- Class as_expression_amp follows. -------------
01735 
01736 void as_expression_amp::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01737 {
01738         return v->visit_as_expression_amp( this );
01739 }
01740 
01741 /*!
01742    This factory method for class as_expression_amp takes values of all fields as arguments.
01743    \author lsg
01744  */
01745 ptr< as_expression_amp > as_expression_amp::create(ptr< ::lestes::std::source_location > a__as_base__location,
01746                 ptr< as_expression > a__as_binary_expression__left,
01747                 ptr< as_expression > a__as_binary_expression__right)
01748 {
01749         return ptr< as_expression_amp > ( new as_expression_amp(a__as_base__location,
01750                 a__as_binary_expression__left,
01751                 a__as_binary_expression__right) );
01752 }
01753 
01754 /*!
01755    Generated constructor for class as_expression_amp.
01756    \author lsg
01757  */
01758 as_expression_amp::as_expression_amp (ptr< ::lestes::std::source_location > a__as_base__location,
01759                 ptr< as_expression > a__as_binary_expression__left,
01760                 ptr< as_expression > a__as_binary_expression__right)
01761         : as_binary_expression(a__as_base__location,
01762                 a__as_binary_expression__left,
01763                 a__as_binary_expression__right)
01764 {}
01765 
01766 ptr< object::reflection_list > as_expression_amp::reflection_get() const
01767 {
01768         if (!reflection) {
01769                 typedef class_reflection::field_metadata md;
01770                 typedef class_reflection::field_metadata_list mdlist;
01771                 ptr<mdlist> mdl = mdlist::create();
01772                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01773                 reflection->push_back( class_reflection::create( "as_expression_amp", mdl ) );
01774         }
01775         return reflection;
01776 }
01777 
01778 ptr< object::field_list_list > as_expression_amp::field_values_get() const
01779 {
01780         ptr < field_list_list > result = as_binary_expression::field_values_get();
01781         return result;
01782 }
01783 
01784 
01785 /*!
01786    Marking routine is used for garbage collection.
01787    \author lsg
01788  */
01789 void as_expression_amp::gc_mark()
01790 {
01791         as_binary_expression::gc_mark();
01792 }
01793 
01794 // End of class as_expression_amp.
01795 
01796 // ------------- Class as_expression_hat follows. -------------
01797 
01798 void as_expression_hat::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01799 {
01800         return v->visit_as_expression_hat( this );
01801 }
01802 
01803 /*!
01804    This factory method for class as_expression_hat takes values of all fields as arguments.
01805    \author lsg
01806  */
01807 ptr< as_expression_hat > as_expression_hat::create(ptr< ::lestes::std::source_location > a__as_base__location,
01808                 ptr< as_expression > a__as_binary_expression__left,
01809                 ptr< as_expression > a__as_binary_expression__right)
01810 {
01811         return ptr< as_expression_hat > ( new as_expression_hat(a__as_base__location,
01812                 a__as_binary_expression__left,
01813                 a__as_binary_expression__right) );
01814 }
01815 
01816 /*!
01817    Generated constructor for class as_expression_hat.
01818    \author lsg
01819  */
01820 as_expression_hat::as_expression_hat (ptr< ::lestes::std::source_location > a__as_base__location,
01821                 ptr< as_expression > a__as_binary_expression__left,
01822                 ptr< as_expression > a__as_binary_expression__right)
01823         : as_binary_expression(a__as_base__location,
01824                 a__as_binary_expression__left,
01825                 a__as_binary_expression__right)
01826 {}
01827 
01828 ptr< object::reflection_list > as_expression_hat::reflection_get() const
01829 {
01830         if (!reflection) {
01831                 typedef class_reflection::field_metadata md;
01832                 typedef class_reflection::field_metadata_list mdlist;
01833                 ptr<mdlist> mdl = mdlist::create();
01834                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01835                 reflection->push_back( class_reflection::create( "as_expression_hat", mdl ) );
01836         }
01837         return reflection;
01838 }
01839 
01840 ptr< object::field_list_list > as_expression_hat::field_values_get() const
01841 {
01842         ptr < field_list_list > result = as_binary_expression::field_values_get();
01843         return result;
01844 }
01845 
01846 
01847 /*!
01848    Marking routine is used for garbage collection.
01849    \author lsg
01850  */
01851 void as_expression_hat::gc_mark()
01852 {
01853         as_binary_expression::gc_mark();
01854 }
01855 
01856 // End of class as_expression_hat.
01857 
01858 // ------------- Class as_expression_less_less follows. -------------
01859 
01860 void as_expression_less_less::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01861 {
01862         return v->visit_as_expression_less_less( this );
01863 }
01864 
01865 /*!
01866    This factory method for class as_expression_less_less takes values of all fields as arguments.
01867    \author lsg
01868  */
01869 ptr< as_expression_less_less > as_expression_less_less::create(ptr< ::lestes::std::source_location > a__as_base__location,
01870                 ptr< as_expression > a__as_binary_expression__left,
01871                 ptr< as_expression > a__as_binary_expression__right)
01872 {
01873         return ptr< as_expression_less_less > ( new as_expression_less_less(a__as_base__location,
01874                 a__as_binary_expression__left,
01875                 a__as_binary_expression__right) );
01876 }
01877 
01878 /*!
01879    Generated constructor for class as_expression_less_less.
01880    \author lsg
01881  */
01882 as_expression_less_less::as_expression_less_less (ptr< ::lestes::std::source_location > a__as_base__location,
01883                 ptr< as_expression > a__as_binary_expression__left,
01884                 ptr< as_expression > a__as_binary_expression__right)
01885         : as_binary_expression(a__as_base__location,
01886                 a__as_binary_expression__left,
01887                 a__as_binary_expression__right)
01888 {}
01889 
01890 ptr< object::reflection_list > as_expression_less_less::reflection_get() const
01891 {
01892         if (!reflection) {
01893                 typedef class_reflection::field_metadata md;
01894                 typedef class_reflection::field_metadata_list mdlist;
01895                 ptr<mdlist> mdl = mdlist::create();
01896                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01897                 reflection->push_back( class_reflection::create( "as_expression_less_less", mdl ) );
01898         }
01899         return reflection;
01900 }
01901 
01902 ptr< object::field_list_list > as_expression_less_less::field_values_get() const
01903 {
01904         ptr < field_list_list > result = as_binary_expression::field_values_get();
01905         return result;
01906 }
01907 
01908 
01909 /*!
01910    Marking routine is used for garbage collection.
01911    \author lsg
01912  */
01913 void as_expression_less_less::gc_mark()
01914 {
01915         as_binary_expression::gc_mark();
01916 }
01917 
01918 // End of class as_expression_less_less.
01919 
01920 // ------------- Class as_expression_greater_greater follows. -------------
01921 
01922 void as_expression_greater_greater::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01923 {
01924         return v->visit_as_expression_greater_greater( this );
01925 }
01926 
01927 /*!
01928    This factory method for class as_expression_greater_greater takes values of all fields as arguments.
01929    \author lsg
01930  */
01931 ptr< as_expression_greater_greater > as_expression_greater_greater::create(ptr< ::lestes::std::source_location > a__as_base__location,
01932                 ptr< as_expression > a__as_binary_expression__left,
01933                 ptr< as_expression > a__as_binary_expression__right)
01934 {
01935         return ptr< as_expression_greater_greater > ( new as_expression_greater_greater(a__as_base__location,
01936                 a__as_binary_expression__left,
01937                 a__as_binary_expression__right) );
01938 }
01939 
01940 /*!
01941    Generated constructor for class as_expression_greater_greater.
01942    \author lsg
01943  */
01944 as_expression_greater_greater::as_expression_greater_greater (ptr< ::lestes::std::source_location > a__as_base__location,
01945                 ptr< as_expression > a__as_binary_expression__left,
01946                 ptr< as_expression > a__as_binary_expression__right)
01947         : as_binary_expression(a__as_base__location,
01948                 a__as_binary_expression__left,
01949                 a__as_binary_expression__right)
01950 {}
01951 
01952 ptr< object::reflection_list > as_expression_greater_greater::reflection_get() const
01953 {
01954         if (!reflection) {
01955                 typedef class_reflection::field_metadata md;
01956                 typedef class_reflection::field_metadata_list mdlist;
01957                 ptr<mdlist> mdl = mdlist::create();
01958                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
01959                 reflection->push_back( class_reflection::create( "as_expression_greater_greater", mdl ) );
01960         }
01961         return reflection;
01962 }
01963 
01964 ptr< object::field_list_list > as_expression_greater_greater::field_values_get() const
01965 {
01966         ptr < field_list_list > result = as_binary_expression::field_values_get();
01967         return result;
01968 }
01969 
01970 
01971 /*!
01972    Marking routine is used for garbage collection.
01973    \author lsg
01974  */
01975 void as_expression_greater_greater::gc_mark()
01976 {
01977         as_binary_expression::gc_mark();
01978 }
01979 
01980 // End of class as_expression_greater_greater.
01981 
01982 // ------------- Class as_expression_plus follows. -------------
01983 
01984 void as_expression_plus::accept_as_expr_visitor( ptr< as_expr_visitor > v )
01985 {
01986         return v->visit_as_expression_plus( this );
01987 }
01988 
01989 /*!
01990    This factory method for class as_expression_plus takes values of all fields as arguments.
01991    \author lsg
01992  */
01993 ptr< as_expression_plus > as_expression_plus::create(ptr< ::lestes::std::source_location > a__as_base__location,
01994                 ptr< as_expression > a__as_binary_expression__left,
01995                 ptr< as_expression > a__as_binary_expression__right)
01996 {
01997         return ptr< as_expression_plus > ( new as_expression_plus(a__as_base__location,
01998                 a__as_binary_expression__left,
01999                 a__as_binary_expression__right) );
02000 }
02001 
02002 /*!
02003    Generated constructor for class as_expression_plus.
02004    \author lsg
02005  */
02006 as_expression_plus::as_expression_plus (ptr< ::lestes::std::source_location > a__as_base__location,
02007                 ptr< as_expression > a__as_binary_expression__left,
02008                 ptr< as_expression > a__as_binary_expression__right)
02009         : as_binary_expression(a__as_base__location,
02010                 a__as_binary_expression__left,
02011                 a__as_binary_expression__right)
02012 {}
02013 
02014 ptr< object::reflection_list > as_expression_plus::reflection_get() const
02015 {
02016         if (!reflection) {
02017                 typedef class_reflection::field_metadata md;
02018                 typedef class_reflection::field_metadata_list mdlist;
02019                 ptr<mdlist> mdl = mdlist::create();
02020                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
02021                 reflection->push_back( class_reflection::create( "as_expression_plus", mdl ) );
02022         }
02023         return reflection;
02024 }
02025 
02026 ptr< object::field_list_list > as_expression_plus::field_values_get() const
02027 {
02028         ptr < field_list_list > result = as_binary_expression::field_values_get();
02029         return result;
02030 }
02031 
02032 
02033 /*!
02034    Marking routine is used for garbage collection.
02035    \author lsg
02036  */
02037 void as_expression_plus::gc_mark()
02038 {
02039         as_binary_expression::gc_mark();
02040 }
02041 
02042 // End of class as_expression_plus.
02043 
02044 // ------------- Class as_expression_minus follows. -------------
02045 
02046 void as_expression_minus::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02047 {
02048         return v->visit_as_expression_minus( this );
02049 }
02050 
02051 /*!
02052    This factory method for class as_expression_minus takes values of all fields as arguments.
02053    \author lsg
02054  */
02055 ptr< as_expression_minus > as_expression_minus::create(ptr< ::lestes::std::source_location > a__as_base__location,
02056                 ptr< as_expression > a__as_binary_expression__left,
02057                 ptr< as_expression > a__as_binary_expression__right)
02058 {
02059         return ptr< as_expression_minus > ( new as_expression_minus(a__as_base__location,
02060                 a__as_binary_expression__left,
02061                 a__as_binary_expression__right) );
02062 }
02063 
02064 /*!
02065    Generated constructor for class as_expression_minus.
02066    \author lsg
02067  */
02068 as_expression_minus::as_expression_minus (ptr< ::lestes::std::source_location > a__as_base__location,
02069                 ptr< as_expression > a__as_binary_expression__left,
02070                 ptr< as_expression > a__as_binary_expression__right)
02071         : as_binary_expression(a__as_base__location,
02072                 a__as_binary_expression__left,
02073                 a__as_binary_expression__right)
02074 {}
02075 
02076 ptr< object::reflection_list > as_expression_minus::reflection_get() const
02077 {
02078         if (!reflection) {
02079                 typedef class_reflection::field_metadata md;
02080                 typedef class_reflection::field_metadata_list mdlist;
02081                 ptr<mdlist> mdl = mdlist::create();
02082                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
02083                 reflection->push_back( class_reflection::create( "as_expression_minus", mdl ) );
02084         }
02085         return reflection;
02086 }
02087 
02088 ptr< object::field_list_list > as_expression_minus::field_values_get() const
02089 {
02090         ptr < field_list_list > result = as_binary_expression::field_values_get();
02091         return result;
02092 }
02093 
02094 
02095 /*!
02096    Marking routine is used for garbage collection.
02097    \author lsg
02098  */
02099 void as_expression_minus::gc_mark()
02100 {
02101         as_binary_expression::gc_mark();
02102 }
02103 
02104 // End of class as_expression_minus.
02105 
02106 // ------------- Class as_expression_star follows. -------------
02107 
02108 void as_expression_star::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02109 {
02110         return v->visit_as_expression_star( this );
02111 }
02112 
02113 /*!
02114    This factory method for class as_expression_star takes values of all fields as arguments.
02115    \author lsg
02116  */
02117 ptr< as_expression_star > as_expression_star::create(ptr< ::lestes::std::source_location > a__as_base__location,
02118                 ptr< as_expression > a__as_binary_expression__left,
02119                 ptr< as_expression > a__as_binary_expression__right)
02120 {
02121         return ptr< as_expression_star > ( new as_expression_star(a__as_base__location,
02122                 a__as_binary_expression__left,
02123                 a__as_binary_expression__right) );
02124 }
02125 
02126 /*!
02127    Generated constructor for class as_expression_star.
02128    \author lsg
02129  */
02130 as_expression_star::as_expression_star (ptr< ::lestes::std::source_location > a__as_base__location,
02131                 ptr< as_expression > a__as_binary_expression__left,
02132                 ptr< as_expression > a__as_binary_expression__right)
02133         : as_binary_expression(a__as_base__location,
02134                 a__as_binary_expression__left,
02135                 a__as_binary_expression__right)
02136 {}
02137 
02138 ptr< object::reflection_list > as_expression_star::reflection_get() const
02139 {
02140         if (!reflection) {
02141                 typedef class_reflection::field_metadata md;
02142                 typedef class_reflection::field_metadata_list mdlist;
02143                 ptr<mdlist> mdl = mdlist::create();
02144                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
02145                 reflection->push_back( class_reflection::create( "as_expression_star", mdl ) );
02146         }
02147         return reflection;
02148 }
02149 
02150 ptr< object::field_list_list > as_expression_star::field_values_get() const
02151 {
02152         ptr < field_list_list > result = as_binary_expression::field_values_get();
02153         return result;
02154 }
02155 
02156 
02157 /*!
02158    Marking routine is used for garbage collection.
02159    \author lsg
02160  */
02161 void as_expression_star::gc_mark()
02162 {
02163         as_binary_expression::gc_mark();
02164 }
02165 
02166 // End of class as_expression_star.
02167 
02168 // ------------- Class as_expression_slash follows. -------------
02169 
02170 void as_expression_slash::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02171 {
02172         return v->visit_as_expression_slash( this );
02173 }
02174 
02175 /*!
02176    This factory method for class as_expression_slash takes values of all fields as arguments.
02177    \author lsg
02178  */
02179 ptr< as_expression_slash > as_expression_slash::create(ptr< ::lestes::std::source_location > a__as_base__location,
02180                 ptr< as_expression > a__as_binary_expression__left,
02181                 ptr< as_expression > a__as_binary_expression__right)
02182 {
02183         return ptr< as_expression_slash > ( new as_expression_slash(a__as_base__location,
02184                 a__as_binary_expression__left,
02185                 a__as_binary_expression__right) );
02186 }
02187 
02188 /*!
02189    Generated constructor for class as_expression_slash.
02190    \author lsg
02191  */
02192 as_expression_slash::as_expression_slash (ptr< ::lestes::std::source_location > a__as_base__location,
02193                 ptr< as_expression > a__as_binary_expression__left,
02194                 ptr< as_expression > a__as_binary_expression__right)
02195         : as_binary_expression(a__as_base__location,
02196                 a__as_binary_expression__left,
02197                 a__as_binary_expression__right)
02198 {}
02199 
02200 ptr< object::reflection_list > as_expression_slash::reflection_get() const
02201 {
02202         if (!reflection) {
02203                 typedef class_reflection::field_metadata md;
02204                 typedef class_reflection::field_metadata_list mdlist;
02205                 ptr<mdlist> mdl = mdlist::create();
02206                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
02207                 reflection->push_back( class_reflection::create( "as_expression_slash", mdl ) );
02208         }
02209         return reflection;
02210 }
02211 
02212 ptr< object::field_list_list > as_expression_slash::field_values_get() const
02213 {
02214         ptr < field_list_list > result = as_binary_expression::field_values_get();
02215         return result;
02216 }
02217 
02218 
02219 /*!
02220    Marking routine is used for garbage collection.
02221    \author lsg
02222  */
02223 void as_expression_slash::gc_mark()
02224 {
02225         as_binary_expression::gc_mark();
02226 }
02227 
02228 // End of class as_expression_slash.
02229 
02230 // ------------- Class as_expression_percent follows. -------------
02231 
02232 void as_expression_percent::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02233 {
02234         return v->visit_as_expression_percent( this );
02235 }
02236 
02237 /*!
02238    This factory method for class as_expression_percent takes values of all fields as arguments.
02239    \author lsg
02240  */
02241 ptr< as_expression_percent > as_expression_percent::create(ptr< ::lestes::std::source_location > a__as_base__location,
02242                 ptr< as_expression > a__as_binary_expression__left,
02243                 ptr< as_expression > a__as_binary_expression__right)
02244 {
02245         return ptr< as_expression_percent > ( new as_expression_percent(a__as_base__location,
02246                 a__as_binary_expression__left,
02247                 a__as_binary_expression__right) );
02248 }
02249 
02250 /*!
02251    Generated constructor for class as_expression_percent.
02252    \author lsg
02253  */
02254 as_expression_percent::as_expression_percent (ptr< ::lestes::std::source_location > a__as_base__location,
02255                 ptr< as_expression > a__as_binary_expression__left,
02256                 ptr< as_expression > a__as_binary_expression__right)
02257         : as_binary_expression(a__as_base__location,
02258                 a__as_binary_expression__left,
02259                 a__as_binary_expression__right)
02260 {}
02261 
02262 ptr< object::reflection_list > as_expression_percent::reflection_get() const
02263 {
02264         if (!reflection) {
02265                 typedef class_reflection::field_metadata md;
02266                 typedef class_reflection::field_metadata_list mdlist;
02267                 ptr<mdlist> mdl = mdlist::create();
02268                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
02269                 reflection->push_back( class_reflection::create( "as_expression_percent", mdl ) );
02270         }
02271         return reflection;
02272 }
02273 
02274 ptr< object::field_list_list > as_expression_percent::field_values_get() const
02275 {
02276         ptr < field_list_list > result = as_binary_expression::field_values_get();
02277         return result;
02278 }
02279 
02280 
02281 /*!
02282    Marking routine is used for garbage collection.
02283    \author lsg
02284  */
02285 void as_expression_percent::gc_mark()
02286 {
02287         as_binary_expression::gc_mark();
02288 }
02289 
02290 // End of class as_expression_percent.
02291 
02292 // ------------- Class as_expression_dot_star follows. -------------
02293 
02294 void as_expression_dot_star::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02295 {
02296         return v->visit_as_expression_dot_star( this );
02297 }
02298 
02299 /*!
02300    This factory method for class as_expression_dot_star takes values of all fields as arguments.
02301    \author lsg
02302  */
02303 ptr< as_expression_dot_star > as_expression_dot_star::create(ptr< ::lestes::std::source_location > a__as_base__location,
02304                 ptr< as_expression > a__as_binary_expression__left,
02305                 ptr< as_expression > a__as_binary_expression__right)
02306 {
02307         return ptr< as_expression_dot_star > ( new as_expression_dot_star(a__as_base__location,
02308                 a__as_binary_expression__left,
02309                 a__as_binary_expression__right) );
02310 }
02311 
02312 /*!
02313    Generated constructor for class as_expression_dot_star.
02314    \author lsg
02315  */
02316 as_expression_dot_star::as_expression_dot_star (ptr< ::lestes::std::source_location > a__as_base__location,
02317                 ptr< as_expression > a__as_binary_expression__left,
02318                 ptr< as_expression > a__as_binary_expression__right)
02319         : as_binary_expression(a__as_base__location,
02320                 a__as_binary_expression__left,
02321                 a__as_binary_expression__right)
02322 {}
02323 
02324 ptr< object::reflection_list > as_expression_dot_star::reflection_get() const
02325 {
02326         if (!reflection) {
02327                 typedef class_reflection::field_metadata md;
02328                 typedef class_reflection::field_metadata_list mdlist;
02329                 ptr<mdlist> mdl = mdlist::create();
02330                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
02331                 reflection->push_back( class_reflection::create( "as_expression_dot_star", mdl ) );
02332         }
02333         return reflection;
02334 }
02335 
02336 ptr< object::field_list_list > as_expression_dot_star::field_values_get() const
02337 {
02338         ptr < field_list_list > result = as_binary_expression::field_values_get();
02339         return result;
02340 }
02341 
02342 
02343 /*!
02344    Marking routine is used for garbage collection.
02345    \author lsg
02346  */
02347 void as_expression_dot_star::gc_mark()
02348 {
02349         as_binary_expression::gc_mark();
02350 }
02351 
02352 // End of class as_expression_dot_star.
02353 
02354 // ------------- Class as_expression_minus_greater_star follows. -------------
02355 
02356 void as_expression_minus_greater_star::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02357 {
02358         return v->visit_as_expression_minus_greater_star( this );
02359 }
02360 
02361 /*!
02362    This factory method for class as_expression_minus_greater_star takes values of all fields as arguments.
02363    \author lsg
02364  */
02365 ptr< as_expression_minus_greater_star > as_expression_minus_greater_star::create(ptr< ::lestes::std::source_location > a__as_base__location,
02366                 ptr< as_expression > a__as_binary_expression__left,
02367                 ptr< as_expression > a__as_binary_expression__right)
02368 {
02369         return ptr< as_expression_minus_greater_star > ( new as_expression_minus_greater_star(a__as_base__location,
02370                 a__as_binary_expression__left,
02371                 a__as_binary_expression__right) );
02372 }
02373 
02374 /*!
02375    Generated constructor for class as_expression_minus_greater_star.
02376    \author lsg
02377  */
02378 as_expression_minus_greater_star::as_expression_minus_greater_star (ptr< ::lestes::std::source_location > a__as_base__location,
02379                 ptr< as_expression > a__as_binary_expression__left,
02380                 ptr< as_expression > a__as_binary_expression__right)
02381         : as_binary_expression(a__as_base__location,
02382                 a__as_binary_expression__left,
02383                 a__as_binary_expression__right)
02384 {}
02385 
02386 ptr< object::reflection_list > as_expression_minus_greater_star::reflection_get() const
02387 {
02388         if (!reflection) {
02389                 typedef class_reflection::field_metadata md;
02390                 typedef class_reflection::field_metadata_list mdlist;
02391                 ptr<mdlist> mdl = mdlist::create();
02392                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
02393                 reflection->push_back( class_reflection::create( "as_expression_minus_greater_star", mdl ) );
02394         }
02395         return reflection;
02396 }
02397 
02398 ptr< object::field_list_list > as_expression_minus_greater_star::field_values_get() const
02399 {
02400         ptr < field_list_list > result = as_binary_expression::field_values_get();
02401         return result;
02402 }
02403 
02404 
02405 /*!
02406    Marking routine is used for garbage collection.
02407    \author lsg
02408  */
02409 void as_expression_minus_greater_star::gc_mark()
02410 {
02411         as_binary_expression::gc_mark();
02412 }
02413 
02414 // End of class as_expression_minus_greater_star.
02415 
02416 // ------------- Class as_expression_brackets follows. -------------
02417 
02418 void as_expression_brackets::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02419 {
02420         return v->visit_as_expression_brackets( this );
02421 }
02422 
02423 /*!
02424    This factory method for class as_expression_brackets takes values of all fields as arguments.
02425    \author lsg
02426  */
02427 ptr< as_expression_brackets > as_expression_brackets::create(ptr< ::lestes::std::source_location > a__as_base__location,
02428                 ptr< as_expression > a__as_binary_expression__left,
02429                 ptr< as_expression > a__as_binary_expression__right)
02430 {
02431         return ptr< as_expression_brackets > ( new as_expression_brackets(a__as_base__location,
02432                 a__as_binary_expression__left,
02433                 a__as_binary_expression__right) );
02434 }
02435 
02436 /*!
02437    Generated constructor for class as_expression_brackets.
02438    \author lsg
02439  */
02440 as_expression_brackets::as_expression_brackets (ptr< ::lestes::std::source_location > a__as_base__location,
02441                 ptr< as_expression > a__as_binary_expression__left,
02442                 ptr< as_expression > a__as_binary_expression__right)
02443         : as_binary_expression(a__as_base__location,
02444                 a__as_binary_expression__left,
02445                 a__as_binary_expression__right)
02446 {}
02447 
02448 ptr< object::reflection_list > as_expression_brackets::reflection_get() const
02449 {
02450         if (!reflection) {
02451                 typedef class_reflection::field_metadata md;
02452                 typedef class_reflection::field_metadata_list mdlist;
02453                 ptr<mdlist> mdl = mdlist::create();
02454                 reflection = reflection_list::create( as_binary_expression::reflection_get() );
02455                 reflection->push_back( class_reflection::create( "as_expression_brackets", mdl ) );
02456         }
02457         return reflection;
02458 }
02459 
02460 ptr< object::field_list_list > as_expression_brackets::field_values_get() const
02461 {
02462         ptr < field_list_list > result = as_binary_expression::field_values_get();
02463         return result;
02464 }
02465 
02466 
02467 /*!
02468    Marking routine is used for garbage collection.
02469    \author lsg
02470  */
02471 void as_expression_brackets::gc_mark()
02472 {
02473         as_binary_expression::gc_mark();
02474 }
02475 
02476 // End of class as_expression_brackets.
02477 
02478 // ------------- Class as_expression_plus_plus_pre follows. -------------
02479 
02480 void as_expression_plus_plus_pre::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02481 {
02482         return v->visit_as_expression_plus_plus_pre( this );
02483 }
02484 
02485 /*!
02486    This factory method for class as_expression_plus_plus_pre takes values of all fields as arguments.
02487    \author lsg
02488  */
02489 ptr< as_expression_plus_plus_pre > as_expression_plus_plus_pre::create(ptr< ::lestes::std::source_location > a__as_base__location,
02490                 ptr< as_expression > a__as_unary_expression__expr)
02491 {
02492         return ptr< as_expression_plus_plus_pre > ( new as_expression_plus_plus_pre(a__as_base__location,
02493                 a__as_unary_expression__expr) );
02494 }
02495 
02496 /*!
02497    Generated constructor for class as_expression_plus_plus_pre.
02498    \author lsg
02499  */
02500 as_expression_plus_plus_pre::as_expression_plus_plus_pre (ptr< ::lestes::std::source_location > a__as_base__location,
02501                 ptr< as_expression > a__as_unary_expression__expr)
02502         : as_unary_expression(a__as_base__location,
02503                 a__as_unary_expression__expr)
02504 {}
02505 
02506 ptr< object::reflection_list > as_expression_plus_plus_pre::reflection_get() const
02507 {
02508         if (!reflection) {
02509                 typedef class_reflection::field_metadata md;
02510                 typedef class_reflection::field_metadata_list mdlist;
02511                 ptr<mdlist> mdl = mdlist::create();
02512                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
02513                 reflection->push_back( class_reflection::create( "as_expression_plus_plus_pre", mdl ) );
02514         }
02515         return reflection;
02516 }
02517 
02518 ptr< object::field_list_list > as_expression_plus_plus_pre::field_values_get() const
02519 {
02520         ptr < field_list_list > result = as_unary_expression::field_values_get();
02521         return result;
02522 }
02523 
02524 
02525 /*!
02526    Marking routine is used for garbage collection.
02527    \author lsg
02528  */
02529 void as_expression_plus_plus_pre::gc_mark()
02530 {
02531         as_unary_expression::gc_mark();
02532 }
02533 
02534 // End of class as_expression_plus_plus_pre.
02535 
02536 // ------------- Class as_expression_plus_plus_post follows. -------------
02537 
02538 void as_expression_plus_plus_post::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02539 {
02540         return v->visit_as_expression_plus_plus_post( this );
02541 }
02542 
02543 /*!
02544    This factory method for class as_expression_plus_plus_post takes values of all fields as arguments.
02545    \author lsg
02546  */
02547 ptr< as_expression_plus_plus_post > as_expression_plus_plus_post::create(ptr< ::lestes::std::source_location > a__as_base__location,
02548                 ptr< as_expression > a__as_unary_expression__expr)
02549 {
02550         return ptr< as_expression_plus_plus_post > ( new as_expression_plus_plus_post(a__as_base__location,
02551                 a__as_unary_expression__expr) );
02552 }
02553 
02554 /*!
02555    Generated constructor for class as_expression_plus_plus_post.
02556    \author lsg
02557  */
02558 as_expression_plus_plus_post::as_expression_plus_plus_post (ptr< ::lestes::std::source_location > a__as_base__location,
02559                 ptr< as_expression > a__as_unary_expression__expr)
02560         : as_unary_expression(a__as_base__location,
02561                 a__as_unary_expression__expr)
02562 {}
02563 
02564 ptr< object::reflection_list > as_expression_plus_plus_post::reflection_get() const
02565 {
02566         if (!reflection) {
02567                 typedef class_reflection::field_metadata md;
02568                 typedef class_reflection::field_metadata_list mdlist;
02569                 ptr<mdlist> mdl = mdlist::create();
02570                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
02571                 reflection->push_back( class_reflection::create( "as_expression_plus_plus_post", mdl ) );
02572         }
02573         return reflection;
02574 }
02575 
02576 ptr< object::field_list_list > as_expression_plus_plus_post::field_values_get() const
02577 {
02578         ptr < field_list_list > result = as_unary_expression::field_values_get();
02579         return result;
02580 }
02581 
02582 
02583 /*!
02584    Marking routine is used for garbage collection.
02585    \author lsg
02586  */
02587 void as_expression_plus_plus_post::gc_mark()
02588 {
02589         as_unary_expression::gc_mark();
02590 }
02591 
02592 // End of class as_expression_plus_plus_post.
02593 
02594 // ------------- Class as_expression_minus_minus_pre follows. -------------
02595 
02596 void as_expression_minus_minus_pre::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02597 {
02598         return v->visit_as_expression_minus_minus_pre( this );
02599 }
02600 
02601 /*!
02602    This factory method for class as_expression_minus_minus_pre takes values of all fields as arguments.
02603    \author lsg
02604  */
02605 ptr< as_expression_minus_minus_pre > as_expression_minus_minus_pre::create(ptr< ::lestes::std::source_location > a__as_base__location,
02606                 ptr< as_expression > a__as_unary_expression__expr)
02607 {
02608         return ptr< as_expression_minus_minus_pre > ( new as_expression_minus_minus_pre(a__as_base__location,
02609                 a__as_unary_expression__expr) );
02610 }
02611 
02612 /*!
02613    Generated constructor for class as_expression_minus_minus_pre.
02614    \author lsg
02615  */
02616 as_expression_minus_minus_pre::as_expression_minus_minus_pre (ptr< ::lestes::std::source_location > a__as_base__location,
02617                 ptr< as_expression > a__as_unary_expression__expr)
02618         : as_unary_expression(a__as_base__location,
02619                 a__as_unary_expression__expr)
02620 {}
02621 
02622 ptr< object::reflection_list > as_expression_minus_minus_pre::reflection_get() const
02623 {
02624         if (!reflection) {
02625                 typedef class_reflection::field_metadata md;
02626                 typedef class_reflection::field_metadata_list mdlist;
02627                 ptr<mdlist> mdl = mdlist::create();
02628                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
02629                 reflection->push_back( class_reflection::create( "as_expression_minus_minus_pre", mdl ) );
02630         }
02631         return reflection;
02632 }
02633 
02634 ptr< object::field_list_list > as_expression_minus_minus_pre::field_values_get() const
02635 {
02636         ptr < field_list_list > result = as_unary_expression::field_values_get();
02637         return result;
02638 }
02639 
02640 
02641 /*!
02642    Marking routine is used for garbage collection.
02643    \author lsg
02644  */
02645 void as_expression_minus_minus_pre::gc_mark()
02646 {
02647         as_unary_expression::gc_mark();
02648 }
02649 
02650 // End of class as_expression_minus_minus_pre.
02651 
02652 // ------------- Class as_expression_minus_minus_post follows. -------------
02653 
02654 void as_expression_minus_minus_post::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02655 {
02656         return v->visit_as_expression_minus_minus_post( this );
02657 }
02658 
02659 /*!
02660    This factory method for class as_expression_minus_minus_post takes values of all fields as arguments.
02661    \author lsg
02662  */
02663 ptr< as_expression_minus_minus_post > as_expression_minus_minus_post::create(ptr< ::lestes::std::source_location > a__as_base__location,
02664                 ptr< as_expression > a__as_unary_expression__expr)
02665 {
02666         return ptr< as_expression_minus_minus_post > ( new as_expression_minus_minus_post(a__as_base__location,
02667                 a__as_unary_expression__expr) );
02668 }
02669 
02670 /*!
02671    Generated constructor for class as_expression_minus_minus_post.
02672    \author lsg
02673  */
02674 as_expression_minus_minus_post::as_expression_minus_minus_post (ptr< ::lestes::std::source_location > a__as_base__location,
02675                 ptr< as_expression > a__as_unary_expression__expr)
02676         : as_unary_expression(a__as_base__location,
02677                 a__as_unary_expression__expr)
02678 {}
02679 
02680 ptr< object::reflection_list > as_expression_minus_minus_post::reflection_get() const
02681 {
02682         if (!reflection) {
02683                 typedef class_reflection::field_metadata md;
02684                 typedef class_reflection::field_metadata_list mdlist;
02685                 ptr<mdlist> mdl = mdlist::create();
02686                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
02687                 reflection->push_back( class_reflection::create( "as_expression_minus_minus_post", mdl ) );
02688         }
02689         return reflection;
02690 }
02691 
02692 ptr< object::field_list_list > as_expression_minus_minus_post::field_values_get() const
02693 {
02694         ptr < field_list_list > result = as_unary_expression::field_values_get();
02695         return result;
02696 }
02697 
02698 
02699 /*!
02700    Marking routine is used for garbage collection.
02701    \author lsg
02702  */
02703 void as_expression_minus_minus_post::gc_mark()
02704 {
02705         as_unary_expression::gc_mark();
02706 }
02707 
02708 // End of class as_expression_minus_minus_post.
02709 
02710 // ------------- Class as_expression_unary_amp follows. -------------
02711 
02712 void as_expression_unary_amp::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02713 {
02714         return v->visit_as_expression_unary_amp( this );
02715 }
02716 
02717 /*!
02718    This factory method for class as_expression_unary_amp takes values of all fields as arguments.
02719    \author lsg
02720  */
02721 ptr< as_expression_unary_amp > as_expression_unary_amp::create(ptr< ::lestes::std::source_location > a__as_base__location,
02722                 ptr< as_expression > a__as_unary_expression__expr)
02723 {
02724         return ptr< as_expression_unary_amp > ( new as_expression_unary_amp(a__as_base__location,
02725                 a__as_unary_expression__expr) );
02726 }
02727 
02728 /*!
02729    Generated constructor for class as_expression_unary_amp.
02730    \author lsg
02731  */
02732 as_expression_unary_amp::as_expression_unary_amp (ptr< ::lestes::std::source_location > a__as_base__location,
02733                 ptr< as_expression > a__as_unary_expression__expr)
02734         : as_unary_expression(a__as_base__location,
02735                 a__as_unary_expression__expr)
02736 {}
02737 
02738 ptr< object::reflection_list > as_expression_unary_amp::reflection_get() const
02739 {
02740         if (!reflection) {
02741                 typedef class_reflection::field_metadata md;
02742                 typedef class_reflection::field_metadata_list mdlist;
02743                 ptr<mdlist> mdl = mdlist::create();
02744                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
02745                 reflection->push_back( class_reflection::create( "as_expression_unary_amp", mdl ) );
02746         }
02747         return reflection;
02748 }
02749 
02750 ptr< object::field_list_list > as_expression_unary_amp::field_values_get() const
02751 {
02752         ptr < field_list_list > result = as_unary_expression::field_values_get();
02753         return result;
02754 }
02755 
02756 
02757 /*!
02758    Marking routine is used for garbage collection.
02759    \author lsg
02760  */
02761 void as_expression_unary_amp::gc_mark()
02762 {
02763         as_unary_expression::gc_mark();
02764 }
02765 
02766 // End of class as_expression_unary_amp.
02767 
02768 // ------------- Class as_expression_unary_plus follows. -------------
02769 
02770 void as_expression_unary_plus::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02771 {
02772         return v->visit_as_expression_unary_plus( this );
02773 }
02774 
02775 /*!
02776    This factory method for class as_expression_unary_plus takes values of all fields as arguments.
02777    \author lsg
02778  */
02779 ptr< as_expression_unary_plus > as_expression_unary_plus::create(ptr< ::lestes::std::source_location > a__as_base__location,
02780                 ptr< as_expression > a__as_unary_expression__expr)
02781 {
02782         return ptr< as_expression_unary_plus > ( new as_expression_unary_plus(a__as_base__location,
02783                 a__as_unary_expression__expr) );
02784 }
02785 
02786 /*!
02787    Generated constructor for class as_expression_unary_plus.
02788    \author lsg
02789  */
02790 as_expression_unary_plus::as_expression_unary_plus (ptr< ::lestes::std::source_location > a__as_base__location,
02791                 ptr< as_expression > a__as_unary_expression__expr)
02792         : as_unary_expression(a__as_base__location,
02793                 a__as_unary_expression__expr)
02794 {}
02795 
02796 ptr< object::reflection_list > as_expression_unary_plus::reflection_get() const
02797 {
02798         if (!reflection) {
02799                 typedef class_reflection::field_metadata md;
02800                 typedef class_reflection::field_metadata_list mdlist;
02801                 ptr<mdlist> mdl = mdlist::create();
02802                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
02803                 reflection->push_back( class_reflection::create( "as_expression_unary_plus", mdl ) );
02804         }
02805         return reflection;
02806 }
02807 
02808 ptr< object::field_list_list > as_expression_unary_plus::field_values_get() const
02809 {
02810         ptr < field_list_list > result = as_unary_expression::field_values_get();
02811         return result;
02812 }
02813 
02814 
02815 /*!
02816    Marking routine is used for garbage collection.
02817    \author lsg
02818  */
02819 void as_expression_unary_plus::gc_mark()
02820 {
02821         as_unary_expression::gc_mark();
02822 }
02823 
02824 // End of class as_expression_unary_plus.
02825 
02826 // ------------- Class as_expression_unary_minus follows. -------------
02827 
02828 void as_expression_unary_minus::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02829 {
02830         return v->visit_as_expression_unary_minus( this );
02831 }
02832 
02833 /*!
02834    This factory method for class as_expression_unary_minus takes values of all fields as arguments.
02835    \author lsg
02836  */
02837 ptr< as_expression_unary_minus > as_expression_unary_minus::create(ptr< ::lestes::std::source_location > a__as_base__location,
02838                 ptr< as_expression > a__as_unary_expression__expr)
02839 {
02840         return ptr< as_expression_unary_minus > ( new as_expression_unary_minus(a__as_base__location,
02841                 a__as_unary_expression__expr) );
02842 }
02843 
02844 /*!
02845    Generated constructor for class as_expression_unary_minus.
02846    \author lsg
02847  */
02848 as_expression_unary_minus::as_expression_unary_minus (ptr< ::lestes::std::source_location > a__as_base__location,
02849                 ptr< as_expression > a__as_unary_expression__expr)
02850         : as_unary_expression(a__as_base__location,
02851                 a__as_unary_expression__expr)
02852 {}
02853 
02854 ptr< object::reflection_list > as_expression_unary_minus::reflection_get() const
02855 {
02856         if (!reflection) {
02857                 typedef class_reflection::field_metadata md;
02858                 typedef class_reflection::field_metadata_list mdlist;
02859                 ptr<mdlist> mdl = mdlist::create();
02860                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
02861                 reflection->push_back( class_reflection::create( "as_expression_unary_minus", mdl ) );
02862         }
02863         return reflection;
02864 }
02865 
02866 ptr< object::field_list_list > as_expression_unary_minus::field_values_get() const
02867 {
02868         ptr < field_list_list > result = as_unary_expression::field_values_get();
02869         return result;
02870 }
02871 
02872 
02873 /*!
02874    Marking routine is used for garbage collection.
02875    \author lsg
02876  */
02877 void as_expression_unary_minus::gc_mark()
02878 {
02879         as_unary_expression::gc_mark();
02880 }
02881 
02882 // End of class as_expression_unary_minus.
02883 
02884 // ------------- Class as_expression_unary_star follows. -------------
02885 
02886 void as_expression_unary_star::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02887 {
02888         return v->visit_as_expression_unary_star( this );
02889 }
02890 
02891 /*!
02892    This factory method for class as_expression_unary_star takes values of all fields as arguments.
02893    \author lsg
02894  */
02895 ptr< as_expression_unary_star > as_expression_unary_star::create(ptr< ::lestes::std::source_location > a__as_base__location,
02896                 ptr< as_expression > a__as_unary_expression__expr)
02897 {
02898         return ptr< as_expression_unary_star > ( new as_expression_unary_star(a__as_base__location,
02899                 a__as_unary_expression__expr) );
02900 }
02901 
02902 /*!
02903    Generated constructor for class as_expression_unary_star.
02904    \author lsg
02905  */
02906 as_expression_unary_star::as_expression_unary_star (ptr< ::lestes::std::source_location > a__as_base__location,
02907                 ptr< as_expression > a__as_unary_expression__expr)
02908         : as_unary_expression(a__as_base__location,
02909                 a__as_unary_expression__expr)
02910 {}
02911 
02912 ptr< object::reflection_list > as_expression_unary_star::reflection_get() const
02913 {
02914         if (!reflection) {
02915                 typedef class_reflection::field_metadata md;
02916                 typedef class_reflection::field_metadata_list mdlist;
02917                 ptr<mdlist> mdl = mdlist::create();
02918                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
02919                 reflection->push_back( class_reflection::create( "as_expression_unary_star", mdl ) );
02920         }
02921         return reflection;
02922 }
02923 
02924 ptr< object::field_list_list > as_expression_unary_star::field_values_get() const
02925 {
02926         ptr < field_list_list > result = as_unary_expression::field_values_get();
02927         return result;
02928 }
02929 
02930 
02931 /*!
02932    Marking routine is used for garbage collection.
02933    \author lsg
02934  */
02935 void as_expression_unary_star::gc_mark()
02936 {
02937         as_unary_expression::gc_mark();
02938 }
02939 
02940 // End of class as_expression_unary_star.
02941 
02942 // ------------- Class as_expression_tilde follows. -------------
02943 
02944 void as_expression_tilde::accept_as_expr_visitor( ptr< as_expr_visitor > v )
02945 {
02946         return v->visit_as_expression_tilde( this );
02947 }
02948 
02949 /*!
02950    This factory method for class as_expression_tilde takes values of all fields as arguments.
02951    \author lsg
02952  */
02953 ptr< as_expression_tilde > as_expression_tilde::create(ptr< ::lestes::std::source_location > a__as_base__location,
02954                 ptr< as_expression > a__as_unary_expression__expr)
02955 {
02956         return ptr< as_expression_tilde > ( new as_expression_tilde(a__as_base__location,
02957                 a__as_unary_expression__expr) );
02958 }
02959 
02960 /*!
02961    Generated constructor for class as_expression_tilde.
02962    \author lsg
02963  */
02964 as_expression_tilde::as_expression_tilde (ptr< ::lestes::std::source_location > a__as_base__location,
02965                 ptr< as_expression > a__as_unary_expression__expr)
02966         : as_unary_expression(a__as_base__location,
02967                 a__as_unary_expression__expr)
02968 {}
02969 
02970 ptr< object::reflection_list > as_expression_tilde::reflection_get() const
02971 {
02972         if (!reflection) {
02973                 typedef class_reflection::field_metadata md;
02974                 typedef class_reflection::field_metadata_list mdlist;
02975                 ptr<mdlist> mdl = mdlist::create();
02976                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
02977                 reflection->push_back( class_reflection::create( "as_expression_tilde", mdl ) );
02978         }
02979         return reflection;
02980 }
02981 
02982 ptr< object::field_list_list > as_expression_tilde::field_values_get() const
02983 {
02984         ptr < field_list_list > result = as_unary_expression::field_values_get();
02985         return result;
02986 }
02987 
02988 
02989 /*!
02990    Marking routine is used for garbage collection.
02991    \author lsg
02992  */
02993 void as_expression_tilde::gc_mark()
02994 {
02995         as_unary_expression::gc_mark();
02996 }
02997 
02998 // End of class as_expression_tilde.
02999 
03000 // ------------- Class as_expression_exclam follows. -------------
03001 
03002 void as_expression_exclam::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03003 {
03004         return v->visit_as_expression_exclam( this );
03005 }
03006 
03007 /*!
03008    This factory method for class as_expression_exclam takes values of all fields as arguments.
03009    \author lsg
03010  */
03011 ptr< as_expression_exclam > as_expression_exclam::create(ptr< ::lestes::std::source_location > a__as_base__location,
03012                 ptr< as_expression > a__as_unary_expression__expr)
03013 {
03014         return ptr< as_expression_exclam > ( new as_expression_exclam(a__as_base__location,
03015                 a__as_unary_expression__expr) );
03016 }
03017 
03018 /*!
03019    Generated constructor for class as_expression_exclam.
03020    \author lsg
03021  */
03022 as_expression_exclam::as_expression_exclam (ptr< ::lestes::std::source_location > a__as_base__location,
03023                 ptr< as_expression > a__as_unary_expression__expr)
03024         : as_unary_expression(a__as_base__location,
03025                 a__as_unary_expression__expr)
03026 {}
03027 
03028 ptr< object::reflection_list > as_expression_exclam::reflection_get() const
03029 {
03030         if (!reflection) {
03031                 typedef class_reflection::field_metadata md;
03032                 typedef class_reflection::field_metadata_list mdlist;
03033                 ptr<mdlist> mdl = mdlist::create();
03034                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
03035                 reflection->push_back( class_reflection::create( "as_expression_exclam", mdl ) );
03036         }
03037         return reflection;
03038 }
03039 
03040 ptr< object::field_list_list > as_expression_exclam::field_values_get() const
03041 {
03042         ptr < field_list_list > result = as_unary_expression::field_values_get();
03043         return result;
03044 }
03045 
03046 
03047 /*!
03048    Marking routine is used for garbage collection.
03049    \author lsg
03050  */
03051 void as_expression_exclam::gc_mark()
03052 {
03053         as_unary_expression::gc_mark();
03054 }
03055 
03056 // End of class as_expression_exclam.
03057 
03058 // ------------- Class as_expression_sizeof_expr follows. -------------
03059 
03060 void as_expression_sizeof_expr::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03061 {
03062         return v->visit_as_expression_sizeof_expr( this );
03063 }
03064 
03065 /*!
03066    This factory method for class as_expression_sizeof_expr takes values of all fields as arguments.
03067    \author lsg
03068  */
03069 ptr< as_expression_sizeof_expr > as_expression_sizeof_expr::create(ptr< ::lestes::std::source_location > a__as_base__location,
03070                 ptr< as_expression > a__as_unary_expression__expr)
03071 {
03072         return ptr< as_expression_sizeof_expr > ( new as_expression_sizeof_expr(a__as_base__location,
03073                 a__as_unary_expression__expr) );
03074 }
03075 
03076 /*!
03077    Generated constructor for class as_expression_sizeof_expr.
03078    \author lsg
03079  */
03080 as_expression_sizeof_expr::as_expression_sizeof_expr (ptr< ::lestes::std::source_location > a__as_base__location,
03081                 ptr< as_expression > a__as_unary_expression__expr)
03082         : as_unary_expression(a__as_base__location,
03083                 a__as_unary_expression__expr)
03084 {}
03085 
03086 ptr< object::reflection_list > as_expression_sizeof_expr::reflection_get() const
03087 {
03088         if (!reflection) {
03089                 typedef class_reflection::field_metadata md;
03090                 typedef class_reflection::field_metadata_list mdlist;
03091                 ptr<mdlist> mdl = mdlist::create();
03092                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
03093                 reflection->push_back( class_reflection::create( "as_expression_sizeof_expr", mdl ) );
03094         }
03095         return reflection;
03096 }
03097 
03098 ptr< object::field_list_list > as_expression_sizeof_expr::field_values_get() const
03099 {
03100         ptr < field_list_list > result = as_unary_expression::field_values_get();
03101         return result;
03102 }
03103 
03104 
03105 /*!
03106    Marking routine is used for garbage collection.
03107    \author lsg
03108  */
03109 void as_expression_sizeof_expr::gc_mark()
03110 {
03111         as_unary_expression::gc_mark();
03112 }
03113 
03114 // End of class as_expression_sizeof_expr.
03115 
03116 // ------------- Class as_expression_typeid_expr follows. -------------
03117 
03118 void as_expression_typeid_expr::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03119 {
03120         return v->visit_as_expression_typeid_expr( this );
03121 }
03122 
03123 /*!
03124    This factory method for class as_expression_typeid_expr takes values of all fields as arguments.
03125    \author lsg
03126  */
03127 ptr< as_expression_typeid_expr > as_expression_typeid_expr::create(ptr< ::lestes::std::source_location > a__as_base__location,
03128                 ptr< as_expression > a__as_unary_expression__expr)
03129 {
03130         return ptr< as_expression_typeid_expr > ( new as_expression_typeid_expr(a__as_base__location,
03131                 a__as_unary_expression__expr) );
03132 }
03133 
03134 /*!
03135    Generated constructor for class as_expression_typeid_expr.
03136    \author lsg
03137  */
03138 as_expression_typeid_expr::as_expression_typeid_expr (ptr< ::lestes::std::source_location > a__as_base__location,
03139                 ptr< as_expression > a__as_unary_expression__expr)
03140         : as_unary_expression(a__as_base__location,
03141                 a__as_unary_expression__expr)
03142 {}
03143 
03144 ptr< object::reflection_list > as_expression_typeid_expr::reflection_get() const
03145 {
03146         if (!reflection) {
03147                 typedef class_reflection::field_metadata md;
03148                 typedef class_reflection::field_metadata_list mdlist;
03149                 ptr<mdlist> mdl = mdlist::create();
03150                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
03151                 reflection->push_back( class_reflection::create( "as_expression_typeid_expr", mdl ) );
03152         }
03153         return reflection;
03154 }
03155 
03156 ptr< object::field_list_list > as_expression_typeid_expr::field_values_get() const
03157 {
03158         ptr < field_list_list > result = as_unary_expression::field_values_get();
03159         return result;
03160 }
03161 
03162 
03163 /*!
03164    Marking routine is used for garbage collection.
03165    \author lsg
03166  */
03167 void as_expression_typeid_expr::gc_mark()
03168 {
03169         as_unary_expression::gc_mark();
03170 }
03171 
03172 // End of class as_expression_typeid_expr.
03173 
03174 // ------------- Class as_expression_delete_base follows. -------------
03175 
03176 /*!
03177    \returns The value of as_expression_delete_base::context.
03178    \author lsg
03179  */
03180 ptr< as_name > as_expression_delete_base::context_get() const
03181 {
03182         return context;
03183 }
03184 
03185 /*!
03186    \param[in] x The new value to set as_expression_delete_base::context to.
03187    \author lsg
03188  */
03189 void as_expression_delete_base::context_set(const ptr< as_name > & x)
03190 {
03191         as_expression_delete_base::context = x;
03192 }
03193 
03194 void as_expression_delete_base::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03195 {
03196         return v->visit_as_expression_delete_base( this );
03197 }
03198 
03199 /*!
03200    This factory method for class as_expression_delete_base takes values of all fields as arguments.
03201    \author lsg
03202  */
03203 ptr< as_expression_delete_base > as_expression_delete_base::create(ptr< ::lestes::std::source_location > a__as_base__location,
03204                 ptr< as_expression > a__as_unary_expression__expr,
03205                 ptr< as_name > a__as_expression_delete_base__context)
03206 {
03207         return ptr< as_expression_delete_base > ( new as_expression_delete_base(a__as_base__location,
03208                 a__as_unary_expression__expr,
03209                 a__as_expression_delete_base__context) );
03210 }
03211 
03212 /*!
03213    Generated constructor for class as_expression_delete_base.
03214    \author lsg
03215  */
03216 as_expression_delete_base::as_expression_delete_base (ptr< ::lestes::std::source_location > a__as_base__location,
03217                 ptr< as_expression > a__as_unary_expression__expr,
03218                 ptr< as_name > a__as_expression_delete_base__context)
03219         : as_unary_expression(a__as_base__location,
03220                 a__as_unary_expression__expr), context(checked(a__as_expression_delete_base__context))
03221 {}
03222 
03223 ptr< object::reflection_list > as_expression_delete_base::reflection_get() const
03224 {
03225         if (!reflection) {
03226                 typedef class_reflection::field_metadata md;
03227                 typedef class_reflection::field_metadata_list mdlist;
03228                 ptr<mdlist> mdl = mdlist::create();
03229                 mdl->push_back( md::create( "context", "as_name" ) );
03230                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
03231                 reflection->push_back( class_reflection::create( "as_expression_delete_base", mdl ) );
03232         }
03233         return reflection;
03234 }
03235 
03236 ptr< object::field_list_list > as_expression_delete_base::field_values_get() const
03237 {
03238         ptr < field_list_list > result = as_unary_expression::field_values_get();
03239         result->push_back( value_list::create() );
03240         result->back()->push_back( this->context );
03241         return result;
03242 }
03243 
03244 
03245 /*!
03246    Marking routine is used for garbage collection.
03247    \author lsg
03248  */
03249 void as_expression_delete_base::gc_mark()
03250 {
03251         as_unary_expression::gc_mark();
03252 }
03253 
03254 // End of class as_expression_delete_base.
03255 
03256 // ------------- Class as_expression_delete follows. -------------
03257 
03258 void as_expression_delete::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03259 {
03260         return v->visit_as_expression_delete( this );
03261 }
03262 
03263 /*!
03264    This factory method for class as_expression_delete takes values of all fields as arguments.
03265    \author lsg
03266  */
03267 ptr< as_expression_delete > as_expression_delete::create(ptr< ::lestes::std::source_location > a__as_base__location,
03268                 ptr< as_expression > a__as_unary_expression__expr,
03269                 ptr< as_name > a__as_expression_delete_base__context)
03270 {
03271         return ptr< as_expression_delete > ( new as_expression_delete(a__as_base__location,
03272                 a__as_unary_expression__expr,
03273                 a__as_expression_delete_base__context) );
03274 }
03275 
03276 /*!
03277    Generated constructor for class as_expression_delete.
03278    \author lsg
03279  */
03280 as_expression_delete::as_expression_delete (ptr< ::lestes::std::source_location > a__as_base__location,
03281                 ptr< as_expression > a__as_unary_expression__expr,
03282                 ptr< as_name > a__as_expression_delete_base__context)
03283         : as_expression_delete_base(a__as_base__location,
03284                 a__as_unary_expression__expr,
03285                 a__as_expression_delete_base__context)
03286 {}
03287 
03288 ptr< object::reflection_list > as_expression_delete::reflection_get() const
03289 {
03290         if (!reflection) {
03291                 typedef class_reflection::field_metadata md;
03292                 typedef class_reflection::field_metadata_list mdlist;
03293                 ptr<mdlist> mdl = mdlist::create();
03294                 reflection = reflection_list::create( as_expression_delete_base::reflection_get() );
03295                 reflection->push_back( class_reflection::create( "as_expression_delete", mdl ) );
03296         }
03297         return reflection;
03298 }
03299 
03300 ptr< object::field_list_list > as_expression_delete::field_values_get() const
03301 {
03302         ptr < field_list_list > result = as_expression_delete_base::field_values_get();
03303         return result;
03304 }
03305 
03306 
03307 /*!
03308    Marking routine is used for garbage collection.
03309    \author lsg
03310  */
03311 void as_expression_delete::gc_mark()
03312 {
03313         as_expression_delete_base::gc_mark();
03314 }
03315 
03316 // End of class as_expression_delete.
03317 
03318 // ------------- Class as_expression_delete_array follows. -------------
03319 
03320 void as_expression_delete_array::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03321 {
03322         return v->visit_as_expression_delete_array( this );
03323 }
03324 
03325 /*!
03326    This factory method for class as_expression_delete_array takes values of all fields as arguments.
03327    \author lsg
03328  */
03329 ptr< as_expression_delete_array > as_expression_delete_array::create(ptr< ::lestes::std::source_location > a__as_base__location,
03330                 ptr< as_expression > a__as_unary_expression__expr,
03331                 ptr< as_name > a__as_expression_delete_base__context)
03332 {
03333         return ptr< as_expression_delete_array > ( new as_expression_delete_array(a__as_base__location,
03334                 a__as_unary_expression__expr,
03335                 a__as_expression_delete_base__context) );
03336 }
03337 
03338 /*!
03339    Generated constructor for class as_expression_delete_array.
03340    \author lsg
03341  */
03342 as_expression_delete_array::as_expression_delete_array (ptr< ::lestes::std::source_location > a__as_base__location,
03343                 ptr< as_expression > a__as_unary_expression__expr,
03344                 ptr< as_name > a__as_expression_delete_base__context)
03345         : as_expression_delete_base(a__as_base__location,
03346                 a__as_unary_expression__expr,
03347                 a__as_expression_delete_base__context)
03348 {}
03349 
03350 ptr< object::reflection_list > as_expression_delete_array::reflection_get() const
03351 {
03352         if (!reflection) {
03353                 typedef class_reflection::field_metadata md;
03354                 typedef class_reflection::field_metadata_list mdlist;
03355                 ptr<mdlist> mdl = mdlist::create();
03356                 reflection = reflection_list::create( as_expression_delete_base::reflection_get() );
03357                 reflection->push_back( class_reflection::create( "as_expression_delete_array", mdl ) );
03358         }
03359         return reflection;
03360 }
03361 
03362 ptr< object::field_list_list > as_expression_delete_array::field_values_get() const
03363 {
03364         ptr < field_list_list > result = as_expression_delete_base::field_values_get();
03365         return result;
03366 }
03367 
03368 
03369 /*!
03370    Marking routine is used for garbage collection.
03371    \author lsg
03372  */
03373 void as_expression_delete_array::gc_mark()
03374 {
03375         as_expression_delete_base::gc_mark();
03376 }
03377 
03378 // End of class as_expression_delete_array.
03379 
03380 // ------------- Class as_expression_throw follows. -------------
03381 
03382 void as_expression_throw::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03383 {
03384         return v->visit_as_expression_throw( this );
03385 }
03386 
03387 /*!
03388    This factory method for class as_expression_throw takes values of all fields as arguments.
03389    \author lsg
03390  */
03391 ptr< as_expression_throw > as_expression_throw::create(ptr< ::lestes::std::source_location > a__as_base__location,
03392                 ptr< as_expression > a__as_unary_expression__expr)
03393 {
03394         return ptr< as_expression_throw > ( new as_expression_throw(a__as_base__location,
03395                 a__as_unary_expression__expr) );
03396 }
03397 
03398 /*!
03399    Generated constructor for class as_expression_throw.
03400    \author lsg
03401  */
03402 as_expression_throw::as_expression_throw (ptr< ::lestes::std::source_location > a__as_base__location,
03403                 ptr< as_expression > a__as_unary_expression__expr)
03404         : as_unary_expression(a__as_base__location,
03405                 a__as_unary_expression__expr)
03406 {}
03407 
03408 ptr< object::reflection_list > as_expression_throw::reflection_get() const
03409 {
03410         if (!reflection) {
03411                 typedef class_reflection::field_metadata md;
03412                 typedef class_reflection::field_metadata_list mdlist;
03413                 ptr<mdlist> mdl = mdlist::create();
03414                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
03415                 reflection->push_back( class_reflection::create( "as_expression_throw", mdl ) );
03416         }
03417         return reflection;
03418 }
03419 
03420 ptr< object::field_list_list > as_expression_throw::field_values_get() const
03421 {
03422         ptr < field_list_list > result = as_unary_expression::field_values_get();
03423         return result;
03424 }
03425 
03426 
03427 /*!
03428    Marking routine is used for garbage collection.
03429    \author lsg
03430  */
03431 void as_expression_throw::gc_mark()
03432 {
03433         as_unary_expression::gc_mark();
03434 }
03435 
03436 // End of class as_expression_throw.
03437 
03438 // ------------- Class as_expression_sizeof_type follows. -------------
03439 
03440 /*!
03441    \returns The value of as_expression_sizeof_type::type_id.
03442    \author lsg
03443  */
03444 ptr< as_type_id > as_expression_sizeof_type::type_id_get() const
03445 {
03446         return type_id;
03447 }
03448 
03449 /*!
03450    \param[in] x The new value to set as_expression_sizeof_type::type_id to.
03451    \author lsg
03452  */
03453 void as_expression_sizeof_type::type_id_set(const ptr< as_type_id > & x)
03454 {
03455         as_expression_sizeof_type::type_id = x;
03456 }
03457 
03458 void as_expression_sizeof_type::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03459 {
03460         return v->visit_as_expression_sizeof_type( this );
03461 }
03462 
03463 /*!
03464    This factory method for class as_expression_sizeof_type takes values of all fields as arguments.
03465    \author lsg
03466  */
03467 ptr< as_expression_sizeof_type > as_expression_sizeof_type::create(ptr< ::lestes::std::source_location > a__as_base__location,
03468                 ptr< as_type_id > a__as_expression_sizeof_type__type_id)
03469 {
03470         return ptr< as_expression_sizeof_type > ( new as_expression_sizeof_type(a__as_base__location,
03471                 a__as_expression_sizeof_type__type_id) );
03472 }
03473 
03474 /*!
03475    Generated constructor for class as_expression_sizeof_type.
03476    \author lsg
03477  */
03478 as_expression_sizeof_type::as_expression_sizeof_type (ptr< ::lestes::std::source_location > a__as_base__location,
03479                 ptr< as_type_id > a__as_expression_sizeof_type__type_id)
03480         : as_expression(a__as_base__location), type_id(checked(a__as_expression_sizeof_type__type_id))
03481 {}
03482 
03483 ptr< object::reflection_list > as_expression_sizeof_type::reflection_get() const
03484 {
03485         if (!reflection) {
03486                 typedef class_reflection::field_metadata md;
03487                 typedef class_reflection::field_metadata_list mdlist;
03488                 ptr<mdlist> mdl = mdlist::create();
03489                 mdl->push_back( md::create( "type_id", "as_type_id" ) );
03490                 reflection = reflection_list::create( as_expression::reflection_get() );
03491                 reflection->push_back( class_reflection::create( "as_expression_sizeof_type", mdl ) );
03492         }
03493         return reflection;
03494 }
03495 
03496 ptr< object::field_list_list > as_expression_sizeof_type::field_values_get() const
03497 {
03498         ptr < field_list_list > result = as_expression::field_values_get();
03499         result->push_back( value_list::create() );
03500         result->back()->push_back( this->type_id );
03501         return result;
03502 }
03503 
03504 
03505 /*!
03506    Marking routine is used for garbage collection.
03507    \author lsg
03508  */
03509 void as_expression_sizeof_type::gc_mark()
03510 {
03511         as_expression::gc_mark();
03512 }
03513 
03514 // End of class as_expression_sizeof_type.
03515 
03516 // ------------- Class as_expression_typeid_type follows. -------------
03517 
03518 /*!
03519    \returns The value of as_expression_typeid_type::type_id.
03520    \author lsg
03521  */
03522 ptr< as_type_id > as_expression_typeid_type::type_id_get() const
03523 {
03524         return type_id;
03525 }
03526 
03527 /*!
03528    \param[in] x The new value to set as_expression_typeid_type::type_id to.
03529    \author lsg
03530  */
03531 void as_expression_typeid_type::type_id_set(const ptr< as_type_id > & x)
03532 {
03533         as_expression_typeid_type::type_id = x;
03534 }
03535 
03536 void as_expression_typeid_type::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03537 {
03538         return v->visit_as_expression_typeid_type( this );
03539 }
03540 
03541 /*!
03542    This factory method for class as_expression_typeid_type takes values of all fields as arguments.
03543    \author lsg
03544  */
03545 ptr< as_expression_typeid_type > as_expression_typeid_type::create(ptr< ::lestes::std::source_location > a__as_base__location,
03546                 ptr< as_type_id > a__as_expression_typeid_type__type_id)
03547 {
03548         return ptr< as_expression_typeid_type > ( new as_expression_typeid_type(a__as_base__location,
03549                 a__as_expression_typeid_type__type_id) );
03550 }
03551 
03552 /*!
03553    Generated constructor for class as_expression_typeid_type.
03554    \author lsg
03555  */
03556 as_expression_typeid_type::as_expression_typeid_type (ptr< ::lestes::std::source_location > a__as_base__location,
03557                 ptr< as_type_id > a__as_expression_typeid_type__type_id)
03558         : as_expression(a__as_base__location), type_id(checked(a__as_expression_typeid_type__type_id))
03559 {}
03560 
03561 ptr< object::reflection_list > as_expression_typeid_type::reflection_get() const
03562 {
03563         if (!reflection) {
03564                 typedef class_reflection::field_metadata md;
03565                 typedef class_reflection::field_metadata_list mdlist;
03566                 ptr<mdlist> mdl = mdlist::create();
03567                 mdl->push_back( md::create( "type_id", "as_type_id" ) );
03568                 reflection = reflection_list::create( as_expression::reflection_get() );
03569                 reflection->push_back( class_reflection::create( "as_expression_typeid_type", mdl ) );
03570         }
03571         return reflection;
03572 }
03573 
03574 ptr< object::field_list_list > as_expression_typeid_type::field_values_get() const
03575 {
03576         ptr < field_list_list > result = as_expression::field_values_get();
03577         result->push_back( value_list::create() );
03578         result->back()->push_back( this->type_id );
03579         return result;
03580 }
03581 
03582 
03583 /*!
03584    Marking routine is used for garbage collection.
03585    \author lsg
03586  */
03587 void as_expression_typeid_type::gc_mark()
03588 {
03589         as_expression::gc_mark();
03590 }
03591 
03592 // End of class as_expression_typeid_type.
03593 
03594 // ------------- Class as_expression_new follows. -------------
03595 
03596 /*!
03597    \returns The value of as_expression_new::context.
03598    \author lsg
03599  */
03600 ptr< as_name > as_expression_new::context_get() const
03601 {
03602         return context;
03603 }
03604 
03605 /*!
03606    \param[in] x The new value to set as_expression_new::context to.
03607    \author lsg
03608  */
03609 void as_expression_new::context_set(const ptr< as_name > & x)
03610 {
03611         as_expression_new::context = x;
03612 }
03613 
03614 /*!
03615    \returns The value of as_expression_new::new_placement.
03616    \author lsg
03617  */
03618 ptr< ::lestes::std::list< srp< as_expression > > > as_expression_new::new_placement_get() const
03619 {
03620         return new_placement;
03621 }
03622 
03623 /*!
03624    \param[in] x The new value to set as_expression_new::new_placement to.
03625    \author lsg
03626  */
03627 void as_expression_new::new_placement_set(const ptr< ::lestes::std::list< srp< as_expression > > > & x)
03628 {
03629         as_expression_new::new_placement = x;
03630 }
03631 
03632 /*!
03633    \returns The value of as_expression_new::type_id.
03634    \author lsg
03635  */
03636 ptr< as_type_id > as_expression_new::type_id_get() const
03637 {
03638         return type_id;
03639 }
03640 
03641 /*!
03642    \param[in] x The new value to set as_expression_new::type_id to.
03643    \author lsg
03644  */
03645 void as_expression_new::type_id_set(const ptr< as_type_id > & x)
03646 {
03647         as_expression_new::type_id = x;
03648 }
03649 
03650 /*!
03651    \returns The value of as_expression_new::initializer.
03652    \author lsg
03653  */
03654 ptr< as_initializer > as_expression_new::initializer_get() const
03655 {
03656         return initializer;
03657 }
03658 
03659 /*!
03660    \param[in] x The new value to set as_expression_new::initializer to.
03661    \author lsg
03662  */
03663 void as_expression_new::initializer_set(const ptr< as_initializer > & x)
03664 {
03665         as_expression_new::initializer = x;
03666 }
03667 
03668 void as_expression_new::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03669 {
03670         return v->visit_as_expression_new( this );
03671 }
03672 
03673 /*!
03674    This factory method for class as_expression_new takes values of all fields as arguments.
03675    \author lsg
03676  */
03677 ptr< as_expression_new > as_expression_new::create(ptr< ::lestes::std::source_location > a__as_base__location,
03678                 ptr< as_name > a__as_expression_new__context,
03679                 ptr< ::lestes::std::list< srp< as_expression > > > a__as_expression_new__new_placement,
03680                 ptr< as_type_id > a__as_expression_new__type_id,
03681                 ptr< as_initializer > a__as_expression_new__initializer)
03682 {
03683         return ptr< as_expression_new > ( new as_expression_new(a__as_base__location,
03684                 a__as_expression_new__context,
03685                 a__as_expression_new__new_placement,
03686                 a__as_expression_new__type_id,
03687                 a__as_expression_new__initializer) );
03688 }
03689 
03690 /*!
03691    Generated constructor for class as_expression_new.
03692    \author lsg
03693  */
03694 as_expression_new::as_expression_new (ptr< ::lestes::std::source_location > a__as_base__location,
03695                 ptr< as_name > a__as_expression_new__context,
03696                 ptr< ::lestes::std::list< srp< as_expression > > > a__as_expression_new__new_placement,
03697                 ptr< as_type_id > a__as_expression_new__type_id,
03698                 ptr< as_initializer > a__as_expression_new__initializer)
03699         : as_expression(a__as_base__location), context(checked(a__as_expression_new__context)), new_placement(checked(a__as_expression_new__new_placement)), type_id(checked(a__as_expression_new__type_id)), initializer(a__as_expression_new__initializer)
03700 {}
03701 
03702 ptr< object::reflection_list > as_expression_new::reflection_get() const
03703 {
03704         if (!reflection) {
03705                 typedef class_reflection::field_metadata md;
03706                 typedef class_reflection::field_metadata_list mdlist;
03707                 ptr<mdlist> mdl = mdlist::create();
03708                 mdl->push_back( md::create( "context", "as_name" ) );
03709                 mdl->push_back( md::create( "new_placement", "list&lt; srp&lt; as_expression &gt; &gt;" ) );
03710                 mdl->push_back( md::create( "type_id", "as_type_id" ) );
03711                 mdl->push_back( md::create( "initializer", "as_initializer" ) );
03712                 reflection = reflection_list::create( as_expression::reflection_get() );
03713                 reflection->push_back( class_reflection::create( "as_expression_new", mdl ) );
03714         }
03715         return reflection;
03716 }
03717 
03718 ptr< object::field_list_list > as_expression_new::field_values_get() const
03719 {
03720         ptr < field_list_list > result = as_expression::field_values_get();
03721         result->push_back( value_list::create() );
03722         result->back()->push_back( this->context );
03723         result->push_back( value_list::create() );
03724         result->back()->push_back( this->new_placement );
03725         result->push_back( value_list::create() );
03726         result->back()->push_back( this->type_id );
03727         result->push_back( value_list::create() );
03728         result->back()->push_back( this->initializer );
03729         return result;
03730 }
03731 
03732 
03733 /*!
03734    Marking routine is used for garbage collection.
03735    \author lsg
03736  */
03737 void as_expression_new::gc_mark()
03738 {
03739         as_expression::gc_mark();
03740 }
03741 
03742 // End of class as_expression_new.
03743 
03744 // ------------- Class as_this_expression follows. -------------
03745 
03746 void as_this_expression::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03747 {
03748         return v->visit_as_this_expression( this );
03749 }
03750 
03751 /*!
03752    This factory method for class as_this_expression takes values of all fields as arguments.
03753    \author lsg
03754  */
03755 ptr< as_this_expression > as_this_expression::create(ptr< ::lestes::std::source_location > a__as_base__location)
03756 {
03757         return ptr< as_this_expression > ( new as_this_expression(a__as_base__location) );
03758 }
03759 
03760 /*!
03761    Generated constructor for class as_this_expression.
03762    \author lsg
03763  */
03764 as_this_expression::as_this_expression (ptr< ::lestes::std::source_location > a__as_base__location)
03765         : as_expression(a__as_base__location)
03766 {}
03767 
03768 ptr< object::reflection_list > as_this_expression::reflection_get() const
03769 {
03770         if (!reflection) {
03771                 typedef class_reflection::field_metadata md;
03772                 typedef class_reflection::field_metadata_list mdlist;
03773                 ptr<mdlist> mdl = mdlist::create();
03774                 reflection = reflection_list::create( as_expression::reflection_get() );
03775                 reflection->push_back( class_reflection::create( "as_this_expression", mdl ) );
03776         }
03777         return reflection;
03778 }
03779 
03780 ptr< object::field_list_list > as_this_expression::field_values_get() const
03781 {
03782         ptr < field_list_list > result = as_expression::field_values_get();
03783         return result;
03784 }
03785 
03786 
03787 /*!
03788    Marking routine is used for garbage collection.
03789    \author lsg
03790  */
03791 void as_this_expression::gc_mark()
03792 {
03793         as_expression::gc_mark();
03794 }
03795 
03796 // End of class as_this_expression.
03797 
03798 // ------------- Class as_literal follows. -------------
03799 
03800 /*!
03801    \returns The value of as_literal::kind.
03802    \author lsg
03803  */
03804 as_literal::literal_kind as_literal::kind_get() const
03805 {
03806         return kind;
03807 }
03808 
03809 /*!
03810    \param[in] x The new value to set as_literal::kind to.
03811    \author lsg
03812  */
03813 void as_literal::kind_set(literal_kind x)
03814 {
03815         as_literal::kind = x;
03816 }
03817 
03818 /*!
03819    \returns The value of as_literal::value.
03820    \author lsg
03821  */
03822 ptr< ::lestes::lang::cplus::lex::cpp_token > as_literal::value_get() const
03823 {
03824         return value;
03825 }
03826 
03827 /*!
03828    \param[in] x The new value to set as_literal::value to.
03829    \author lsg
03830  */
03831 void as_literal::value_set(const ptr< ::lestes::lang::cplus::lex::cpp_token > & x)
03832 {
03833         as_literal::value = x;
03834 }
03835 
03836 void as_literal::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03837 {
03838         return v->visit_as_literal( this );
03839 }
03840 
03841 /*!
03842    This factory method for class as_literal takes values of all fields as arguments.
03843    \author lsg
03844  */
03845 ptr< as_literal > as_literal::create(ptr< ::lestes::std::source_location > a__as_base__location,
03846                 literal_kind a__as_literal__kind,
03847                 ptr< ::lestes::lang::cplus::lex::cpp_token > a__as_literal__value)
03848 {
03849         return ptr< as_literal > ( new as_literal(a__as_base__location,
03850                 a__as_literal__kind,
03851                 a__as_literal__value) );
03852 }
03853 
03854 /*!
03855    Generated constructor for class as_literal.
03856    \author lsg
03857  */
03858 as_literal::as_literal (ptr< ::lestes::std::source_location > a__as_base__location,
03859                 literal_kind a__as_literal__kind,
03860                 ptr< ::lestes::lang::cplus::lex::cpp_token > a__as_literal__value)
03861         : as_expression(a__as_base__location), kind(a__as_literal__kind), value(checked(a__as_literal__value))
03862 {}
03863 
03864 ptr< object::reflection_list > as_literal::reflection_get() const
03865 {
03866         if (!reflection) {
03867                 typedef class_reflection::field_metadata md;
03868                 typedef class_reflection::field_metadata_list mdlist;
03869                 ptr<mdlist> mdl = mdlist::create();
03870                 mdl->push_back( md::create( "kind", "literal_kind" ) );
03871                 mdl->push_back( md::create( "value", "cpp_token" ) );
03872                 reflection = reflection_list::create( as_expression::reflection_get() );
03873                 reflection->push_back( class_reflection::create( "as_literal", mdl ) );
03874         }
03875         return reflection;
03876 }
03877 
03878 ptr< object::field_list_list > as_literal::field_values_get() const
03879 {
03880         ptr < field_list_list > result = as_expression::field_values_get();
03881         result->push_back( value_list::create() );
03882         result->back()->push_back( objectize< literal_kind > ::create( this->kind ) );
03883         result->push_back( value_list::create() );
03884         result->back()->push_back( this->value );
03885         return result;
03886 }
03887 
03888 
03889 /*!
03890    Marking routine is used for garbage collection.
03891    \author lsg
03892  */
03893 void as_literal::gc_mark()
03894 {
03895         as_expression::gc_mark();
03896 }
03897 
03898 // End of class as_literal.
03899 
03900 // ------------- Class as_name_expression follows. -------------
03901 
03902 /*!
03903    \returns The value of as_name_expression::name.
03904    \author lsg
03905  */
03906 ptr< as_name > as_name_expression::name_get() const
03907 {
03908         return name;
03909 }
03910 
03911 /*!
03912    \param[in] x The new value to set as_name_expression::name to.
03913    \author lsg
03914  */
03915 void as_name_expression::name_set(const ptr< as_name > & x)
03916 {
03917         as_name_expression::name = x;
03918 }
03919 
03920 void as_name_expression::accept_as_expr_visitor( ptr< as_expr_visitor > v )
03921 {
03922         return v->visit_as_name_expression( this );
03923 }
03924 
03925 /*!
03926    This factory method for class as_name_expression takes values of all fields as arguments.
03927    \author lsg
03928  */
03929 ptr< as_name_expression > as_name_expression::create(ptr< ::lestes::std::source_location > a__as_base__location,
03930                 ptr< as_name > a__as_name_expression__name)
03931 {
03932         return ptr< as_name_expression > ( new as_name_expression(a__as_base__location,
03933                 a__as_name_expression__name) );
03934 }
03935 
03936 /*!
03937    Generated constructor for class as_name_expression.
03938    \author lsg
03939  */
03940 as_name_expression::as_name_expression (ptr< ::lestes::std::source_location > a__as_base__location,
03941                 ptr< as_name > a__as_name_expression__name)
03942         : as_expression(a__as_base__location), name(checked(a__as_name_expression__name))
03943 {}
03944 
03945 ptr< object::reflection_list > as_name_expression::reflection_get() const
03946 {
03947         if (!reflection) {
03948                 typedef class_reflection::field_metadata md;
03949                 typedef class_reflection::field_metadata_list mdlist;
03950                 ptr<mdlist> mdl = mdlist::create();
03951                 mdl->push_back( md::create( "name", "as_name" ) );
03952                 reflection = reflection_list::create( as_expression::reflection_get() );
03953                 reflection->push_back( class_reflection::create( "as_name_expression", mdl ) );
03954         }
03955         return reflection;
03956 }
03957 
03958 ptr< object::field_list_list > as_name_expression::field_values_get() const
03959 {
03960         ptr < field_list_list > result = as_expression::field_values_get();
03961         result->push_back( value_list::create() );
03962         result->back()->push_back( this->name );
03963         return result;
03964 }
03965 
03966 
03967 /*!
03968    Marking routine is used for garbage collection.
03969    \author lsg
03970  */
03971 void as_name_expression::gc_mark()
03972 {
03973         as_expression::gc_mark();
03974 }
03975 
03976 // End of class as_name_expression.
03977 
03978 // ------------- Class as_expression_cast_base follows. -------------
03979 
03980 /*!
03981    \returns The value of as_expression_cast_base::type_id.
03982    \author lsg
03983  */
03984 ptr< as_type_id > as_expression_cast_base::type_id_get() const
03985 {
03986         return type_id;
03987 }
03988 
03989 /*!
03990    \param[in] x The new value to set as_expression_cast_base::type_id to.
03991    \author lsg
03992  */
03993 void as_expression_cast_base::type_id_set(const ptr< as_type_id > & x)
03994 {
03995         as_expression_cast_base::type_id = x;
03996 }
03997 
03998 /*!
03999    Generated constructor for class as_expression_cast_base.
04000    \author lsg
04001  */
04002 as_expression_cast_base::as_expression_cast_base (ptr< ::lestes::std::source_location > a__as_base__location,
04003                 ptr< as_type_id > a__as_expression_cast_base__type_id)
04004         : as_expression(a__as_base__location), type_id(checked(a__as_expression_cast_base__type_id))
04005 {}
04006 
04007 ptr< object::reflection_list > as_expression_cast_base::reflection_get() const
04008 {
04009         if (!reflection) {
04010                 typedef class_reflection::field_metadata md;
04011                 typedef class_reflection::field_metadata_list mdlist;
04012                 ptr<mdlist> mdl = mdlist::create();
04013                 mdl->push_back( md::create( "type_id", "as_type_id" ) );
04014                 reflection = reflection_list::create( as_expression::reflection_get() );
04015                 reflection->push_back( class_reflection::create( "as_expression_cast_base", mdl ) );
04016         }
04017         return reflection;
04018 }
04019 
04020 ptr< object::field_list_list > as_expression_cast_base::field_values_get() const
04021 {
04022         ptr < field_list_list > result = as_expression::field_values_get();
04023         result->push_back( value_list::create() );
04024         result->back()->push_back( this->type_id );
04025         return result;
04026 }
04027 
04028 
04029 /*!
04030    Marking routine is used for garbage collection.
04031    \author lsg
04032  */
04033 void as_expression_cast_base::gc_mark()
04034 {
04035         as_expression::gc_mark();
04036 }
04037 
04038 // End of class as_expression_cast_base.
04039 
04040 // ------------- Class as_expression_cast_base_one follows. -------------
04041 
04042 /*!
04043    \returns The value of as_expression_cast_base_one::expr.
04044    \author lsg
04045  */
04046 ptr< as_expression > as_expression_cast_base_one::expr_get() const
04047 {
04048         return expr;
04049 }
04050 
04051 /*!
04052    \param[in] x The new value to set as_expression_cast_base_one::expr to.
04053    \author lsg
04054  */
04055 void as_expression_cast_base_one::expr_set(const ptr< as_expression > & x)
04056 {
04057         as_expression_cast_base_one::expr = x;
04058 }
04059 
04060 /*!
04061    Generated constructor for class as_expression_cast_base_one.
04062    \author lsg
04063  */
04064 as_expression_cast_base_one::as_expression_cast_base_one (ptr< ::lestes::std::source_location > a__as_base__location,
04065                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04066                 ptr< as_expression > a__as_expression_cast_base_one__expr)
04067         : as_expression_cast_base(a__as_base__location,
04068                 a__as_expression_cast_base__type_id), expr(checked(a__as_expression_cast_base_one__expr))
04069 {}
04070 
04071 ptr< object::reflection_list > as_expression_cast_base_one::reflection_get() const
04072 {
04073         if (!reflection) {
04074                 typedef class_reflection::field_metadata md;
04075                 typedef class_reflection::field_metadata_list mdlist;
04076                 ptr<mdlist> mdl = mdlist::create();
04077                 mdl->push_back( md::create( "expr", "as_expression" ) );
04078                 reflection = reflection_list::create( as_expression_cast_base::reflection_get() );
04079                 reflection->push_back( class_reflection::create( "as_expression_cast_base_one", mdl ) );
04080         }
04081         return reflection;
04082 }
04083 
04084 ptr< object::field_list_list > as_expression_cast_base_one::field_values_get() const
04085 {
04086         ptr < field_list_list > result = as_expression_cast_base::field_values_get();
04087         result->push_back( value_list::create() );
04088         result->back()->push_back( this->expr );
04089         return result;
04090 }
04091 
04092 
04093 /*!
04094    Marking routine is used for garbage collection.
04095    \author lsg
04096  */
04097 void as_expression_cast_base_one::gc_mark()
04098 {
04099         as_expression_cast_base::gc_mark();
04100 }
04101 
04102 // End of class as_expression_cast_base_one.
04103 
04104 // ------------- Class as_expression_cast_base_list follows. -------------
04105 
04106 /*!
04107    \returns The value of as_expression_cast_base_list::expressions.
04108    \author lsg
04109  */
04110 ptr< ::lestes::std::list< srp< as_expression > > > as_expression_cast_base_list::expressions_get() const
04111 {
04112         return expressions;
04113 }
04114 
04115 /*!
04116    \param[in] x The new value to set as_expression_cast_base_list::expressions to.
04117    \author lsg
04118  */
04119 void as_expression_cast_base_list::expressions_set(const ptr< ::lestes::std::list< srp< as_expression > > > & x)
04120 {
04121         as_expression_cast_base_list::expressions = x;
04122 }
04123 
04124 /*!
04125    Generated constructor for class as_expression_cast_base_list.
04126    \author lsg
04127  */
04128 as_expression_cast_base_list::as_expression_cast_base_list (ptr< ::lestes::std::source_location > a__as_base__location,
04129                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04130                 ptr< ::lestes::std::list< srp< as_expression > > > a__as_expression_cast_base_list__expressions)
04131         : as_expression_cast_base(a__as_base__location,
04132                 a__as_expression_cast_base__type_id), expressions(checked(a__as_expression_cast_base_list__expressions))
04133 {}
04134 
04135 ptr< object::reflection_list > as_expression_cast_base_list::reflection_get() const
04136 {
04137         if (!reflection) {
04138                 typedef class_reflection::field_metadata md;
04139                 typedef class_reflection::field_metadata_list mdlist;
04140                 ptr<mdlist> mdl = mdlist::create();
04141                 mdl->push_back( md::create( "expressions", "list&lt; srp&lt; as_expression &gt; &gt;" ) );
04142                 reflection = reflection_list::create( as_expression_cast_base::reflection_get() );
04143                 reflection->push_back( class_reflection::create( "as_expression_cast_base_list", mdl ) );
04144         }
04145         return reflection;
04146 }
04147 
04148 ptr< object::field_list_list > as_expression_cast_base_list::field_values_get() const
04149 {
04150         ptr < field_list_list > result = as_expression_cast_base::field_values_get();
04151         result->push_back( value_list::create() );
04152         result->back()->push_back( this->expressions );
04153         return result;
04154 }
04155 
04156 
04157 /*!
04158    Marking routine is used for garbage collection.
04159    \author lsg
04160  */
04161 void as_expression_cast_base_list::gc_mark()
04162 {
04163         as_expression_cast_base::gc_mark();
04164 }
04165 
04166 // End of class as_expression_cast_base_list.
04167 
04168 // ------------- Class as_expression_reinterpret_cast follows. -------------
04169 
04170 void as_expression_reinterpret_cast::accept_as_expr_visitor( ptr< as_expr_visitor > v )
04171 {
04172         return v->visit_as_expression_reinterpret_cast( this );
04173 }
04174 
04175 /*!
04176    This factory method for class as_expression_reinterpret_cast takes values of all fields as arguments.
04177    \author lsg
04178  */
04179 ptr< as_expression_reinterpret_cast > as_expression_reinterpret_cast::create(ptr< ::lestes::std::source_location > a__as_base__location,
04180                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04181                 ptr< as_expression > a__as_expression_cast_base_one__expr)
04182 {
04183         return ptr< as_expression_reinterpret_cast > ( new as_expression_reinterpret_cast(a__as_base__location,
04184                 a__as_expression_cast_base__type_id,
04185                 a__as_expression_cast_base_one__expr) );
04186 }
04187 
04188 /*!
04189    Generated constructor for class as_expression_reinterpret_cast.
04190    \author lsg
04191  */
04192 as_expression_reinterpret_cast::as_expression_reinterpret_cast (ptr< ::lestes::std::source_location > a__as_base__location,
04193                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04194                 ptr< as_expression > a__as_expression_cast_base_one__expr)
04195         : as_expression_cast_base_one(a__as_base__location,
04196                 a__as_expression_cast_base__type_id,
04197                 a__as_expression_cast_base_one__expr)
04198 {}
04199 
04200 ptr< object::reflection_list > as_expression_reinterpret_cast::reflection_get() const
04201 {
04202         if (!reflection) {
04203                 typedef class_reflection::field_metadata md;
04204                 typedef class_reflection::field_metadata_list mdlist;
04205                 ptr<mdlist> mdl = mdlist::create();
04206                 reflection = reflection_list::create( as_expression_cast_base_one::reflection_get() );
04207                 reflection->push_back( class_reflection::create( "as_expression_reinterpret_cast", mdl ) );
04208         }
04209         return reflection;
04210 }
04211 
04212 ptr< object::field_list_list > as_expression_reinterpret_cast::field_values_get() const
04213 {
04214         ptr < field_list_list > result = as_expression_cast_base_one::field_values_get();
04215         return result;
04216 }
04217 
04218 
04219 /*!
04220    Marking routine is used for garbage collection.
04221    \author lsg
04222  */
04223 void as_expression_reinterpret_cast::gc_mark()
04224 {
04225         as_expression_cast_base_one::gc_mark();
04226 }
04227 
04228 // End of class as_expression_reinterpret_cast.
04229 
04230 // ------------- Class as_expression_dynamic_cast follows. -------------
04231 
04232 void as_expression_dynamic_cast::accept_as_expr_visitor( ptr< as_expr_visitor > v )
04233 {
04234         return v->visit_as_expression_dynamic_cast( this );
04235 }
04236 
04237 /*!
04238    This factory method for class as_expression_dynamic_cast takes values of all fields as arguments.
04239    \author lsg
04240  */
04241 ptr< as_expression_dynamic_cast > as_expression_dynamic_cast::create(ptr< ::lestes::std::source_location > a__as_base__location,
04242                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04243                 ptr< as_expression > a__as_expression_cast_base_one__expr)
04244 {
04245         return ptr< as_expression_dynamic_cast > ( new as_expression_dynamic_cast(a__as_base__location,
04246                 a__as_expression_cast_base__type_id,
04247                 a__as_expression_cast_base_one__expr) );
04248 }
04249 
04250 /*!
04251    Generated constructor for class as_expression_dynamic_cast.
04252    \author lsg
04253  */
04254 as_expression_dynamic_cast::as_expression_dynamic_cast (ptr< ::lestes::std::source_location > a__as_base__location,
04255                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04256                 ptr< as_expression > a__as_expression_cast_base_one__expr)
04257         : as_expression_cast_base_one(a__as_base__location,
04258                 a__as_expression_cast_base__type_id,
04259                 a__as_expression_cast_base_one__expr)
04260 {}
04261 
04262 ptr< object::reflection_list > as_expression_dynamic_cast::reflection_get() const
04263 {
04264         if (!reflection) {
04265                 typedef class_reflection::field_metadata md;
04266                 typedef class_reflection::field_metadata_list mdlist;
04267                 ptr<mdlist> mdl = mdlist::create();
04268                 reflection = reflection_list::create( as_expression_cast_base_one::reflection_get() );
04269                 reflection->push_back( class_reflection::create( "as_expression_dynamic_cast", mdl ) );
04270         }
04271         return reflection;
04272 }
04273 
04274 ptr< object::field_list_list > as_expression_dynamic_cast::field_values_get() const
04275 {
04276         ptr < field_list_list > result = as_expression_cast_base_one::field_values_get();
04277         return result;
04278 }
04279 
04280 
04281 /*!
04282    Marking routine is used for garbage collection.
04283    \author lsg
04284  */
04285 void as_expression_dynamic_cast::gc_mark()
04286 {
04287         as_expression_cast_base_one::gc_mark();
04288 }
04289 
04290 // End of class as_expression_dynamic_cast.
04291 
04292 // ------------- Class as_expression_static_cast follows. -------------
04293 
04294 void as_expression_static_cast::accept_as_expr_visitor( ptr< as_expr_visitor > v )
04295 {
04296         return v->visit_as_expression_static_cast( this );
04297 }
04298 
04299 /*!
04300    This factory method for class as_expression_static_cast takes values of all fields as arguments.
04301    \author lsg
04302  */
04303 ptr< as_expression_static_cast > as_expression_static_cast::create(ptr< ::lestes::std::source_location > a__as_base__location,
04304                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04305                 ptr< as_expression > a__as_expression_cast_base_one__expr)
04306 {
04307         return ptr< as_expression_static_cast > ( new as_expression_static_cast(a__as_base__location,
04308                 a__as_expression_cast_base__type_id,
04309                 a__as_expression_cast_base_one__expr) );
04310 }
04311 
04312 /*!
04313    Generated constructor for class as_expression_static_cast.
04314    \author lsg
04315  */
04316 as_expression_static_cast::as_expression_static_cast (ptr< ::lestes::std::source_location > a__as_base__location,
04317                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04318                 ptr< as_expression > a__as_expression_cast_base_one__expr)
04319         : as_expression_cast_base_one(a__as_base__location,
04320                 a__as_expression_cast_base__type_id,
04321                 a__as_expression_cast_base_one__expr)
04322 {}
04323 
04324 ptr< object::reflection_list > as_expression_static_cast::reflection_get() const
04325 {
04326         if (!reflection) {
04327                 typedef class_reflection::field_metadata md;
04328                 typedef class_reflection::field_metadata_list mdlist;
04329                 ptr<mdlist> mdl = mdlist::create();
04330                 reflection = reflection_list::create( as_expression_cast_base_one::reflection_get() );
04331                 reflection->push_back( class_reflection::create( "as_expression_static_cast", mdl ) );
04332         }
04333         return reflection;
04334 }
04335 
04336 ptr< object::field_list_list > as_expression_static_cast::field_values_get() const
04337 {
04338         ptr < field_list_list > result = as_expression_cast_base_one::field_values_get();
04339         return result;
04340 }
04341 
04342 
04343 /*!
04344    Marking routine is used for garbage collection.
04345    \author lsg
04346  */
04347 void as_expression_static_cast::gc_mark()
04348 {
04349         as_expression_cast_base_one::gc_mark();
04350 }
04351 
04352 // End of class as_expression_static_cast.
04353 
04354 // ------------- Class as_expression_const_cast follows. -------------
04355 
04356 void as_expression_const_cast::accept_as_expr_visitor( ptr< as_expr_visitor > v )
04357 {
04358         return v->visit_as_expression_const_cast( this );
04359 }
04360 
04361 /*!
04362    This factory method for class as_expression_const_cast takes values of all fields as arguments.
04363    \author lsg
04364  */
04365 ptr< as_expression_const_cast > as_expression_const_cast::create(ptr< ::lestes::std::source_location > a__as_base__location,
04366                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04367                 ptr< as_expression > a__as_expression_cast_base_one__expr)
04368 {
04369         return ptr< as_expression_const_cast > ( new as_expression_const_cast(a__as_base__location,
04370                 a__as_expression_cast_base__type_id,
04371                 a__as_expression_cast_base_one__expr) );
04372 }
04373 
04374 /*!
04375    Generated constructor for class as_expression_const_cast.
04376    \author lsg
04377  */
04378 as_expression_const_cast::as_expression_const_cast (ptr< ::lestes::std::source_location > a__as_base__location,
04379                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04380                 ptr< as_expression > a__as_expression_cast_base_one__expr)
04381         : as_expression_cast_base_one(a__as_base__location,
04382                 a__as_expression_cast_base__type_id,
04383                 a__as_expression_cast_base_one__expr)
04384 {}
04385 
04386 ptr< object::reflection_list > as_expression_const_cast::reflection_get() const
04387 {
04388         if (!reflection) {
04389                 typedef class_reflection::field_metadata md;
04390                 typedef class_reflection::field_metadata_list mdlist;
04391                 ptr<mdlist> mdl = mdlist::create();
04392                 reflection = reflection_list::create( as_expression_cast_base_one::reflection_get() );
04393                 reflection->push_back( class_reflection::create( "as_expression_const_cast", mdl ) );
04394         }
04395         return reflection;
04396 }
04397 
04398 ptr< object::field_list_list > as_expression_const_cast::field_values_get() const
04399 {
04400         ptr < field_list_list > result = as_expression_cast_base_one::field_values_get();
04401         return result;
04402 }
04403 
04404 
04405 /*!
04406    Marking routine is used for garbage collection.
04407    \author lsg
04408  */
04409 void as_expression_const_cast::gc_mark()
04410 {
04411         as_expression_cast_base_one::gc_mark();
04412 }
04413 
04414 // End of class as_expression_const_cast.
04415 
04416 // ------------- Class as_expression_old_style_cast follows. -------------
04417 
04418 void as_expression_old_style_cast::accept_as_expr_visitor( ptr< as_expr_visitor > v )
04419 {
04420         return v->visit_as_expression_old_style_cast( this );
04421 }
04422 
04423 /*!
04424    This factory method for class as_expression_old_style_cast takes values of all fields as arguments.
04425    \author lsg
04426  */
04427 ptr< as_expression_old_style_cast > as_expression_old_style_cast::create(ptr< ::lestes::std::source_location > a__as_base__location,
04428                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04429                 ptr< as_expression > a__as_expression_cast_base_one__expr)
04430 {
04431         return ptr< as_expression_old_style_cast > ( new as_expression_old_style_cast(a__as_base__location,
04432                 a__as_expression_cast_base__type_id,
04433                 a__as_expression_cast_base_one__expr) );
04434 }
04435 
04436 /*!
04437    Generated constructor for class as_expression_old_style_cast.
04438    \author lsg
04439  */
04440 as_expression_old_style_cast::as_expression_old_style_cast (ptr< ::lestes::std::source_location > a__as_base__location,
04441                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04442                 ptr< as_expression > a__as_expression_cast_base_one__expr)
04443         : as_expression_cast_base_one(a__as_base__location,
04444                 a__as_expression_cast_base__type_id,
04445                 a__as_expression_cast_base_one__expr)
04446 {}
04447 
04448 ptr< object::reflection_list > as_expression_old_style_cast::reflection_get() const
04449 {
04450         if (!reflection) {
04451                 typedef class_reflection::field_metadata md;
04452                 typedef class_reflection::field_metadata_list mdlist;
04453                 ptr<mdlist> mdl = mdlist::create();
04454                 reflection = reflection_list::create( as_expression_cast_base_one::reflection_get() );
04455                 reflection->push_back( class_reflection::create( "as_expression_old_style_cast", mdl ) );
04456         }
04457         return reflection;
04458 }
04459 
04460 ptr< object::field_list_list > as_expression_old_style_cast::field_values_get() const
04461 {
04462         ptr < field_list_list > result = as_expression_cast_base_one::field_values_get();
04463         return result;
04464 }
04465 
04466 
04467 /*!
04468    Marking routine is used for garbage collection.
04469    \author lsg
04470  */
04471 void as_expression_old_style_cast::gc_mark()
04472 {
04473         as_expression_cast_base_one::gc_mark();
04474 }
04475 
04476 // End of class as_expression_old_style_cast.
04477 
04478 // ------------- Class as_expression_functional_style_cast follows. -------------
04479 
04480 void as_expression_functional_style_cast::accept_as_expr_visitor( ptr< as_expr_visitor > v )
04481 {
04482         return v->visit_as_expression_functional_style_cast( this );
04483 }
04484 
04485 /*!
04486    This factory method for class as_expression_functional_style_cast takes values of all fields as arguments.
04487    \author lsg
04488  */
04489 ptr< as_expression_functional_style_cast > as_expression_functional_style_cast::create(ptr< ::lestes::std::source_location > a__as_base__location,
04490                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04491                 ptr< ::lestes::std::list< srp< as_expression > > > a__as_expression_cast_base_list__expressions)
04492 {
04493         return ptr< as_expression_functional_style_cast > ( new as_expression_functional_style_cast(a__as_base__location,
04494                 a__as_expression_cast_base__type_id,
04495                 a__as_expression_cast_base_list__expressions) );
04496 }
04497 
04498 /*!
04499    Generated constructor for class as_expression_functional_style_cast.
04500    \author lsg
04501  */
04502 as_expression_functional_style_cast::as_expression_functional_style_cast (ptr< ::lestes::std::source_location > a__as_base__location,
04503                 ptr< as_type_id > a__as_expression_cast_base__type_id,
04504                 ptr< ::lestes::std::list< srp< as_expression > > > a__as_expression_cast_base_list__expressions)
04505         : as_expression_cast_base_list(a__as_base__location,
04506                 a__as_expression_cast_base__type_id,
04507                 a__as_expression_cast_base_list__expressions)
04508 {}
04509 
04510 ptr< object::reflection_list > as_expression_functional_style_cast::reflection_get() const
04511 {
04512         if (!reflection) {
04513                 typedef class_reflection::field_metadata md;
04514                 typedef class_reflection::field_metadata_list mdlist;
04515                 ptr<mdlist> mdl = mdlist::create();
04516                 reflection = reflection_list::create( as_expression_cast_base_list::reflection_get() );
04517                 reflection->push_back( class_reflection::create( "as_expression_functional_style_cast", mdl ) );
04518         }
04519         return reflection;
04520 }
04521 
04522 ptr< object::field_list_list > as_expression_functional_style_cast::field_values_get() const
04523 {
04524         ptr < field_list_list > result = as_expression_cast_base_list::field_values_get();
04525         return result;
04526 }
04527 
04528 
04529 /*!
04530    Marking routine is used for garbage collection.
04531    \author lsg
04532  */
04533 void as_expression_functional_style_cast::gc_mark()
04534 {
04535         as_expression_cast_base_list::gc_mark();
04536 }
04537 
04538 // End of class as_expression_functional_style_cast.
04539 
04540 // ------------- Class as_postfix_expression follows. -------------
04541 
04542 /*!
04543    Generated constructor for class as_postfix_expression.
04544    \author lsg
04545  */
04546 as_postfix_expression::as_postfix_expression (ptr< ::lestes::std::source_location > a__as_base__location)
04547         : as_expression(a__as_base__location)
04548 {}
04549 
04550 ptr< object::reflection_list > as_postfix_expression::reflection_get() const
04551 {
04552         if (!reflection) {
04553                 typedef class_reflection::field_metadata md;
04554                 typedef class_reflection::field_metadata_list mdlist;
04555                 ptr<mdlist> mdl = mdlist::create();
04556                 reflection = reflection_list::create( as_expression::reflection_get() );
04557                 reflection->push_back( class_reflection::create( "as_postfix_expression", mdl ) );
04558         }
04559         return reflection;
04560 }
04561 
04562 ptr< object::field_list_list > as_postfix_expression::field_values_get() const
04563 {
04564         ptr < field_list_list > result = as_expression::field_values_get();
04565         return result;
04566 }
04567 
04568 
04569 /*!
04570    Marking routine is used for garbage collection.
04571    \author lsg
04572  */
04573 void as_postfix_expression::gc_mark()
04574 {
04575         as_expression::gc_mark();
04576 }
04577 
04578 // End of class as_postfix_expression.
04579 
04580 // ------------- Class as_expression_member_access follows. -------------
04581 
04582 /*!
04583    \returns The value of as_expression_member_access::prefix.
04584    \author lsg
04585  */
04586 ptr< as_expression > as_expression_member_access::prefix_get() const
04587 {
04588         return prefix;
04589 }
04590 
04591 /*!
04592    \param[in] x The new value to set as_expression_member_access::prefix to.
04593    \author lsg
04594  */
04595 void as_expression_member_access::prefix_set(const ptr< as_expression > & x)
04596 {
04597         as_expression_member_access::prefix = x;
04598 }
04599 
04600 /*!
04601    \returns The value of as_expression_member_access::postfix.
04602    \author lsg
04603  */
04604 ptr< as_name > as_expression_member_access::postfix_get() const
04605 {
04606         return postfix;
04607 }
04608 
04609 /*!
04610    \param[in] x The new value to set as_expression_member_access::postfix to.
04611    \author lsg
04612  */
04613 void as_expression_member_access::postfix_set(const ptr< as_name > & x)
04614 {
04615         as_expression_member_access::postfix = x;
04616 }
04617 
04618 /*!
04619    Generated constructor for class as_expression_member_access.
04620    \author lsg
04621  */
04622 as_expression_member_access::as_expression_member_access (ptr< ::lestes::std::source_location > a__as_base__location,
04623                 ptr< as_expression > a__as_expression_member_access__prefix,
04624                 ptr< as_name > a__as_expression_member_access__postfix)
04625         : as_postfix_expression(a__as_base__location), prefix(checked(a__as_expression_member_access__prefix)), postfix(checked(a__as_expression_member_access__postfix))
04626 {}
04627 
04628 ptr< object::reflection_list > as_expression_member_access::reflection_get() const
04629 {
04630         if (!reflection) {
04631                 typedef class_reflection::field_metadata md;
04632                 typedef class_reflection::field_metadata_list mdlist;
04633                 ptr<mdlist> mdl = mdlist::create();
04634                 mdl->push_back( md::create( "prefix", "as_expression" ) );
04635                 mdl->push_back( md::create( "postfix", "as_name" ) );
04636                 reflection = reflection_list::create( as_postfix_expression::reflection_get() );
04637                 reflection->push_back( class_reflection::create( "as_expression_member_access", mdl ) );
04638         }
04639         return reflection;
04640 }
04641 
04642 ptr< object::field_list_list > as_expression_member_access::field_values_get() const
04643 {
04644         ptr < field_list_list > result = as_postfix_expression::field_values_get();
04645         result->push_back( value_list::create() );
04646         result->back()->push_back( this->prefix );
04647         result->push_back( value_list::create() );
04648         result->back()->push_back( this->postfix );
04649         return result;
04650 }
04651 
04652 
04653 /*!
04654    Marking routine is used for garbage collection.
04655    \author lsg
04656  */
04657 void as_expression_member_access::gc_mark()
04658 {
04659         as_postfix_expression::gc_mark();
04660 }
04661 
04662 // End of class as_expression_member_access.
04663 
04664 // ------------- Class as_expression_member_access_dot follows. -------------
04665 
04666 void as_expression_member_access_dot::accept_as_expr_visitor( ptr< as_expr_visitor > v )
04667 {
04668         return v->visit_as_expression_member_access_dot( this );
04669 }
04670 
04671 /*!
04672    This factory method for class as_expression_member_access_dot takes values of all fields as arguments.
04673    \author lsg
04674  */
04675 ptr< as_expression_member_access_dot > as_expression_member_access_dot::create(ptr< ::lestes::std::source_location > a__as_base__location,
04676                 ptr< as_expression > a__as_expression_member_access__prefix,
04677                 ptr< as_name > a__as_expression_member_access__postfix)
04678 {
04679         return ptr< as_expression_member_access_dot > ( new as_expression_member_access_dot(a__as_base__location,
04680                 a__as_expression_member_access__prefix,
04681                 a__as_expression_member_access__postfix) );
04682 }
04683 
04684 /*!
04685    Generated constructor for class as_expression_member_access_dot.
04686    \author lsg
04687  */
04688 as_expression_member_access_dot::as_expression_member_access_dot (ptr< ::lestes::std::source_location > a__as_base__location,
04689                 ptr< as_expression > a__as_expression_member_access__prefix,
04690                 ptr< as_name > a__as_expression_member_access__postfix)
04691         : as_expression_member_access(a__as_base__location,
04692                 a__as_expression_member_access__prefix,
04693                 a__as_expression_member_access__postfix)
04694 {}
04695 
04696 ptr< object::reflection_list > as_expression_member_access_dot::reflection_get() const
04697 {
04698         if (!reflection) {
04699                 typedef class_reflection::field_metadata md;
04700                 typedef class_reflection::field_metadata_list mdlist;
04701                 ptr<mdlist> mdl = mdlist::create();
04702                 reflection = reflection_list::create( as_expression_member_access::reflection_get() );
04703                 reflection->push_back( class_reflection::create( "as_expression_member_access_dot", mdl ) );
04704         }
04705         return reflection;
04706 }
04707 
04708 ptr< object::field_list_list > as_expression_member_access_dot::field_values_get() const
04709 {
04710         ptr < field_list_list > result = as_expression_member_access::field_values_get();
04711         return result;
04712 }
04713 
04714 
04715 /*!
04716    Marking routine is used for garbage collection.
04717    \author lsg
04718  */
04719 void as_expression_member_access_dot::gc_mark()
04720 {
04721         as_expression_member_access::gc_mark();
04722 }
04723 
04724 // End of class as_expression_member_access_dot.
04725 
04726 // ------------- Class as_expression_member_access_arrow follows. -------------
04727 
04728 void as_expression_member_access_arrow::accept_as_expr_visitor( ptr< as_expr_visitor > v )
04729 {
04730         return v->visit_as_expression_member_access_arrow( this );
04731 }
04732 
04733 /*!
04734    This factory method for class as_expression_member_access_arrow takes values of all fields as arguments.
04735    \author lsg
04736  */
04737 ptr< as_expression_member_access_arrow > as_expression_member_access_arrow::create(ptr< ::lestes::std::source_location > a__as_base__location,
04738                 ptr< as_expression > a__as_expression_member_access__prefix,
04739                 ptr< as_name > a__as_expression_member_access__postfix)
04740 {
04741         return ptr< as_expression_member_access_arrow > ( new as_expression_member_access_arrow(a__as_base__location,
04742                 a__as_expression_member_access__prefix,
04743                 a__as_expression_member_access__postfix) );
04744 }
04745 
04746 /*!
04747    Generated constructor for class as_expression_member_access_arrow.
04748    \author lsg
04749  */
04750 as_expression_member_access_arrow::as_expression_member_access_arrow (ptr< ::lestes::std::source_location > a__as_base__location,
04751                 ptr< as_expression > a__as_expression_member_access__prefix,
04752                 ptr< as_name > a__as_expression_member_access__postfix)
04753         : as_expression_member_access(a__as_base__location,
04754                 a__as_expression_member_access__prefix,
04755                 a__as_expression_member_access__postfix)
04756 {}
04757 
04758 ptr< object::reflection_list > as_expression_member_access_arrow::reflection_get() const
04759 {
04760         if (!reflection) {
04761                 typedef class_reflection::field_metadata md;
04762                 typedef class_reflection::field_metadata_list mdlist;
04763                 ptr<mdlist> mdl = mdlist::create();
04764                 reflection = reflection_list::create( as_expression_member_access::reflection_get() );
04765                 reflection->push_back( class_reflection::create( "as_expression_member_access_arrow", mdl ) );
04766         }
04767         return reflection;
04768 }
04769 
04770 ptr< object::field_list_list > as_expression_member_access_arrow::field_values_get() const
04771 {
04772         ptr < field_list_list > result = as_expression_member_access::field_values_get();
04773         return result;
04774 }
04775 
04776 
04777 /*!
04778    Marking routine is used for garbage collection.
04779    \author lsg
04780  */
04781 void as_expression_member_access_arrow::gc_mark()
04782 {
04783         as_expression_member_access::gc_mark();
04784 }
04785 
04786 // End of class as_expression_member_access_arrow.
04787 
04788 // ------------- Class as_expression_pseudo_destruct_dot follows. -------------
04789 
04790 void as_expression_pseudo_destruct_dot::accept_as_expr_visitor( ptr< as_expr_visitor > v )
04791 {
04792         return v->visit_as_expression_pseudo_destruct_dot( this );
04793 }
04794 
04795 /*!
04796    This factory method for class as_expression_pseudo_destruct_dot takes values of all fields as arguments.
04797    \author lsg
04798  */
04799 ptr< as_expression_pseudo_destruct_dot > as_expression_pseudo_destruct_dot::create(ptr< ::lestes::std::source_location > a__as_base__location,
04800                 ptr< as_expression > a__as_expression_member_access__prefix,
04801                 ptr< as_name > a__as_expression_member_access__postfix)
04802 {
04803         return ptr< as_expression_pseudo_destruct_dot > ( new as_expression_pseudo_destruct_dot(a__as_base__location,
04804                 a__as_expression_member_access__prefix,
04805                 a__as_expression_member_access__postfix) );
04806 }
04807 
04808 /*!
04809    Generated constructor for class as_expression_pseudo_destruct_dot.
04810    \author lsg
04811  */
04812 as_expression_pseudo_destruct_dot::as_expression_pseudo_destruct_dot (ptr< ::lestes::std::source_location > a__as_base__location,
04813                 ptr< as_expression > a__as_expression_member_access__prefix,
04814                 ptr< as_name > a__as_expression_member_access__postfix)
04815         : as_expression_member_access(a__as_base__location,
04816                 a__as_expression_member_access__prefix,
04817                 a__as_expression_member_access__postfix)
04818 {}
04819 
04820 ptr< object::reflection_list > as_expression_pseudo_destruct_dot::reflection_get() const
04821 {
04822         if (!reflection) {
04823                 typedef class_reflection::field_metadata md;
04824                 typedef class_reflection::field_metadata_list mdlist;
04825                 ptr<mdlist> mdl = mdlist::create();
04826                 reflection = reflection_list::create( as_expression_member_access::reflection_get() );
04827                 reflection->push_back( class_reflection::create( "as_expression_pseudo_destruct_dot", mdl ) );
04828         }
04829         return reflection;
04830 }
04831 
04832 ptr< object::field_list_list > as_expression_pseudo_destruct_dot::field_values_get() const
04833 {
04834         ptr < field_list_list > result = as_expression_member_access::field_values_get();
04835         return result;
04836 }
04837 
04838 
04839 /*!
04840    Marking routine is used for garbage collection.
04841    \author lsg
04842  */
04843 void as_expression_pseudo_destruct_dot::gc_mark()
04844 {
04845         as_expression_member_access::gc_mark();
04846 }
04847 
04848 // End of class as_expression_pseudo_destruct_dot.
04849 
04850 // ------------- Class as_expression_pseudo_destruct_arrow follows. -------------
04851 
04852 void as_expression_pseudo_destruct_arrow::accept_as_expr_visitor( ptr< as_expr_visitor > v )
04853 {
04854         return v->visit_as_expression_pseudo_destruct_arrow( this );
04855 }
04856 
04857 /*!
04858    This factory method for class as_expression_pseudo_destruct_arrow takes values of all fields as arguments.
04859    \author lsg
04860  */
04861 ptr< as_expression_pseudo_destruct_arrow > as_expression_pseudo_destruct_arrow::create(ptr< ::lestes::std::source_location > a__as_base__location,
04862                 ptr< as_expression > a__as_expression_member_access__prefix,
04863                 ptr< as_name > a__as_expression_member_access__postfix)
04864 {
04865         return ptr< as_expression_pseudo_destruct_arrow > ( new as_expression_pseudo_destruct_arrow(a__as_base__location,
04866                 a__as_expression_member_access__prefix,
04867                 a__as_expression_member_access__postfix) );
04868 }
04869 
04870 /*!
04871    Generated constructor for class as_expression_pseudo_destruct_arrow.
04872    \author lsg
04873  */
04874 as_expression_pseudo_destruct_arrow::as_expression_pseudo_destruct_arrow (ptr< ::lestes::std::source_location > a__as_base__location,
04875                 ptr< as_expression > a__as_expression_member_access__prefix,
04876                 ptr< as_name > a__as_expression_member_access__postfix)
04877         : as_expression_member_access(a__as_base__location,
04878                 a__as_expression_member_access__prefix,
04879                 a__as_expression_member_access__postfix)
04880 {}
04881 
04882 ptr< object::reflection_list > as_expression_pseudo_destruct_arrow::reflection_get() const
04883 {
04884         if (!reflection) {
04885                 typedef class_reflection::field_metadata md;
04886                 typedef class_reflection::field_metadata_list mdlist;
04887                 ptr<mdlist> mdl = mdlist::create();
04888                 reflection = reflection_list::create( as_expression_member_access::reflection_get() );
04889                 reflection->push_back( class_reflection::create( "as_expression_pseudo_destruct_arrow", mdl ) );
04890         }
04891         return reflection;
04892 }
04893 
04894 ptr< object::field_list_list > as_expression_pseudo_destruct_arrow::field_values_get() const
04895 {
04896         ptr < field_list_list > result = as_expression_member_access::field_values_get();
04897         return result;
04898 }
04899 
04900 
04901 /*!
04902    Marking routine is used for garbage collection.
04903    \author lsg
04904  */
04905 void as_expression_pseudo_destruct_arrow::gc_mark()
04906 {
04907         as_expression_member_access::gc_mark();
04908 }
04909 
04910 // End of class as_expression_pseudo_destruct_arrow.
04911 
04912 // ------------- Class as_expression_function_call follows. -------------
04913 
04914 /*!
04915    \returns The value of as_expression_function_call::prefix.
04916    \author lsg
04917  */
04918 ptr< as_expression > as_expression_function_call::prefix_get() const
04919 {
04920         return prefix;
04921 }
04922 
04923 /*!
04924    \param[in] x The new value to set as_expression_function_call::prefix to.
04925    \author lsg
04926  */
04927 void as_expression_function_call::prefix_set(const ptr< as_expression > & x)
04928 {
04929         as_expression_function_call::prefix = x;
04930 }
04931 
04932 /*!
04933    \returns The value of as_expression_function_call::arguments.
04934    \author lsg
04935  */
04936 ptr< ::lestes::std::list< srp< as_expression > > > as_expression_function_call::arguments_get() const
04937 {
04938         return arguments;
04939 }
04940 
04941 /*!
04942    \param[in] x The new value to set as_expression_function_call::arguments to.
04943    \author lsg
04944  */
04945 void as_expression_function_call::arguments_set(const ptr< ::lestes::std::list< srp< as_expression > > > & x)
04946 {
04947         as_expression_function_call::arguments = x;
04948 }
04949 
04950 void as_expression_function_call::accept_as_expr_visitor( ptr< as_expr_visitor > v )
04951 {
04952         return v->visit_as_expression_function_call( this );
04953 }
04954 
04955 /*!
04956    This factory method for class as_expression_function_call takes values of all fields as arguments.
04957    \author lsg
04958  */
04959 ptr< as_expression_function_call > as_expression_function_call::create(ptr< ::lestes::std::source_location > a__as_base__location,
04960                 ptr< as_expression > a__as_expression_function_call__prefix,
04961                 ptr< ::lestes::std::list< srp< as_expression > > > a__as_expression_function_call__arguments)
04962 {
04963         return ptr< as_expression_function_call > ( new as_expression_function_call(a__as_base__location,
04964                 a__as_expression_function_call__prefix,
04965                 a__as_expression_function_call__arguments) );
04966 }
04967 
04968 /*!
04969    Generated constructor for class as_expression_function_call.
04970    \author lsg
04971  */
04972 as_expression_function_call::as_expression_function_call (ptr< ::lestes::std::source_location > a__as_base__location,
04973                 ptr< as_expression > a__as_expression_function_call__prefix,
04974                 ptr< ::lestes::std::list< srp< as_expression > > > a__as_expression_function_call__arguments)
04975         : as_expression(a__as_base__location), prefix(checked(a__as_expression_function_call__prefix)), arguments(checked(a__as_expression_function_call__arguments))
04976 {}
04977 
04978 ptr< object::reflection_list > as_expression_function_call::reflection_get() const
04979 {
04980         if (!reflection) {
04981                 typedef class_reflection::field_metadata md;
04982                 typedef class_reflection::field_metadata_list mdlist;
04983                 ptr<mdlist> mdl = mdlist::create();
04984                 mdl->push_back( md::create( "prefix", "as_expression" ) );
04985                 mdl->push_back( md::create( "arguments", "list&lt; srp&lt; as_expression &gt; &gt;" ) );
04986                 reflection = reflection_list::create( as_expression::reflection_get() );
04987                 reflection->push_back( class_reflection::create( "as_expression_function_call", mdl ) );
04988         }
04989         return reflection;
04990 }
04991 
04992 ptr< object::field_list_list > as_expression_function_call::field_values_get() const
04993 {
04994         ptr < field_list_list > result = as_expression::field_values_get();
04995         result->push_back( value_list::create() );
04996         result->back()->push_back( this->prefix );
04997         result->push_back( value_list::create() );
04998         result->back()->push_back( this->arguments );
04999         return result;
05000 }
05001 
05002 
05003 /*!
05004    Marking routine is used for garbage collection.
05005    \author lsg
05006  */
05007 void as_expression_function_call::gc_mark()
05008 {
05009         as_expression::gc_mark();
05010 }
05011 
05012 // End of class as_expression_function_call.
05013 
05014 // ------------- Class as_constant_expression follows. -------------
05015 
05016 void as_constant_expression::accept_as_expr_visitor( ptr< as_expr_visitor > v )
05017 {
05018         return v->visit_as_constant_expression( this );
05019 }
05020 
05021 /*!
05022    This factory method for class as_constant_expression takes values of all fields as arguments.
05023    \author lsg
05024  */
05025 ptr< as_constant_expression > as_constant_expression::create(ptr< ::lestes::std::source_location > a__as_base__location,
05026                 ptr< as_expression > a__as_unary_expression__expr)
05027 {
05028         return ptr< as_constant_expression > ( new as_constant_expression(a__as_base__location,
05029                 a__as_unary_expression__expr) );
05030 }
05031 
05032 /*!
05033    Generated constructor for class as_constant_expression.
05034    \author lsg
05035  */
05036 as_constant_expression::as_constant_expression (ptr< ::lestes::std::source_location > a__as_base__location,
05037                 ptr< as_expression > a__as_unary_expression__expr)
05038         : as_unary_expression(a__as_base__location,
05039                 a__as_unary_expression__expr)
05040 {}
05041 
05042 ptr< object::reflection_list > as_constant_expression::reflection_get() const
05043 {
05044         if (!reflection) {
05045                 typedef class_reflection::field_metadata md;
05046                 typedef class_reflection::field_metadata_list mdlist;
05047                 ptr<mdlist> mdl = mdlist::create();
05048                 reflection = reflection_list::create( as_unary_expression::reflection_get() );
05049                 reflection->push_back( class_reflection::create( "as_constant_expression", mdl ) );
05050         }
05051         return reflection;
05052 }
05053 
05054 ptr< object::field_list_list > as_constant_expression::field_values_get() const
05055 {
05056         ptr < field_list_list > result = as_unary_expression::field_values_get();
05057         return result;
05058 }
05059 
05060 
05061 /*!
05062    Marking routine is used for garbage collection.
05063    \author lsg
05064  */
05065 void as_constant_expression::gc_mark()
05066 {
05067         as_unary_expression::gc_mark();
05068 }
05069 
05070 // End of class as_constant_expression.
05071 
05072 
05073 // static data members follow 
05074 ptr<object::reflection_list> as_expression::reflection = reflection;
05075 ptr<object::reflection_list> as_empty_expression::reflection = reflection;
05076 ptr<object::reflection_list> as_binary_expression::reflection = reflection;
05077 ptr<object::reflection_list> as_unary_expression::reflection = reflection;
05078 ptr<object::reflection_list> as_ternary_expression::reflection = reflection;
05079 ptr<object::reflection_list> as_expression_qmark::reflection = reflection;
05080 ptr<object::reflection_list> as_expression_comma::reflection = reflection;
05081 ptr<object::reflection_list> as_expression_equal::reflection = reflection;
05082 ptr<object::reflection_list> as_expression_plus_equal::reflection = reflection;
05083 ptr<object::reflection_list> as_expression_minus_equal::reflection = reflection;
05084 ptr<object::reflection_list> as_expression_star_equal::reflection = reflection;
05085 ptr<object::reflection_list> as_expression_slash_equal::reflection = reflection;
05086 ptr<object::reflection_list> as_expression_percent_equal::reflection = reflection;
05087 ptr<object::reflection_list> as_expression_hat_equal::reflection = reflection;
05088 ptr<object::reflection_list> as_expression_amp_equal::reflection = reflection;
05089 ptr<object::reflection_list> as_expression_vbar_equal::reflection = reflection;
05090 ptr<object::reflection_list> as_expression_less_less_equal::reflection = reflection;
05091 ptr<object::reflection_list> as_expression_greater_greater_equal::reflection = reflection;
05092 ptr<object::reflection_list> as_expression_equal_equal::reflection = reflection;
05093 ptr<object::reflection_list> as_expression_exclam_equal::reflection = reflection;
05094 ptr<object::reflection_list> as_expression_less_equal::reflection = reflection;
05095 ptr<object::reflection_list> as_expression_greater_equal::reflection = reflection;
05096 ptr<object::reflection_list> as_expression_less::reflection = reflection;
05097 ptr<object::reflection_list> as_expression_greater::reflection = reflection;
05098 ptr<object::reflection_list> as_expression_vbar_vbar::reflection = reflection;
05099 ptr<object::reflection_list> as_expression_amp_amp::reflection = reflection;
05100 ptr<object::reflection_list> as_expression_vbar::reflection = reflection;
05101 ptr<object::reflection_list> as_expression_amp::reflection = reflection;
05102 ptr<object::reflection_list> as_expression_hat::reflection = reflection;
05103 ptr<object::reflection_list> as_expression_less_less::reflection = reflection;
05104 ptr<object::reflection_list> as_expression_greater_greater::reflection = reflection;
05105 ptr<object::reflection_list> as_expression_plus::reflection = reflection;
05106 ptr<object::reflection_list> as_expression_minus::reflection = reflection;
05107 ptr<object::reflection_list> as_expression_star::reflection = reflection;
05108 ptr<object::reflection_list> as_expression_slash::reflection = reflection;
05109 ptr<object::reflection_list> as_expression_percent::reflection = reflection;
05110 ptr<object::reflection_list> as_expression_dot_star::reflection = reflection;
05111 ptr<object::reflection_list> as_expression_minus_greater_star::reflection = reflection;
05112 ptr<object::reflection_list> as_expression_brackets::reflection = reflection;
05113 ptr<object::reflection_list> as_expression_plus_plus_pre::reflection = reflection;
05114 ptr<object::reflection_list> as_expression_plus_plus_post::reflection = reflection;
05115 ptr<object::reflection_list> as_expression_minus_minus_pre::reflection = reflection;
05116 ptr<object::reflection_list> as_expression_minus_minus_post::reflection = reflection;
05117 ptr<object::reflection_list> as_expression_unary_amp::reflection = reflection;
05118 ptr<object::reflection_list> as_expression_unary_plus::reflection = reflection;
05119 ptr<object::reflection_list> as_expression_unary_minus::reflection = reflection;
05120 ptr<object::reflection_list> as_expression_unary_star::reflection = reflection;
05121 ptr<object::reflection_list> as_expression_tilde::reflection = reflection;
05122 ptr<object::reflection_list> as_expression_exclam::reflection = reflection;
05123 ptr<object::reflection_list> as_expression_sizeof_expr::reflection = reflection;
05124 ptr<object::reflection_list> as_expression_typeid_expr::reflection = reflection;
05125 ptr<object::reflection_list> as_expression_delete_base::reflection = reflection;
05126 ptr<object::reflection_list> as_expression_delete::reflection = reflection;
05127 ptr<object::reflection_list> as_expression_delete_array::reflection = reflection;
05128 ptr<object::reflection_list> as_expression_throw::reflection = reflection;
05129 ptr<object::reflection_list> as_expression_sizeof_type::reflection = reflection;
05130 ptr<object::reflection_list> as_expression_typeid_type::reflection = reflection;
05131 ptr<object::reflection_list> as_expression_new::reflection = reflection;
05132 ptr<object::reflection_list> as_this_expression::reflection = reflection;
05133 ptr<object::reflection_list> as_literal::reflection = reflection;
05134 ptr<object::reflection_list> as_name_expression::reflection = reflection;
05135 ptr<object::reflection_list> as_expression_cast_base::reflection = reflection;
05136 ptr<object::reflection_list> as_expression_cast_base_one::reflection = reflection;
05137 ptr<object::reflection_list> as_expression_cast_base_list::reflection = reflection;
05138 ptr<object::reflection_list> as_expression_reinterpret_cast::reflection = reflection;
05139 ptr<object::reflection_list> as_expression_dynamic_cast::reflection = reflection;
05140 ptr<object::reflection_list> as_expression_static_cast::reflection = reflection;
05141 ptr<object::reflection_list> as_expression_const_cast::reflection = reflection;
05142 ptr<object::reflection_list> as_expression_old_style_cast::reflection = reflection;
05143 ptr<object::reflection_list> as_expression_functional_style_cast::reflection = reflection;
05144 ptr<object::reflection_list> as_postfix_expression::reflection = reflection;
05145 ptr<object::reflection_list> as_expression_member_access::reflection = reflection;
05146 ptr<object::reflection_list> as_expression_member_access_dot::reflection = reflection;
05147 ptr<object::reflection_list> as_expression_member_access_arrow::reflection = reflection;
05148 ptr<object::reflection_list> as_expression_pseudo_destruct_dot::reflection = reflection;
05149 ptr<object::reflection_list> as_expression_pseudo_destruct_arrow::reflection = reflection;
05150 ptr<object::reflection_list> as_expression_function_call::reflection = reflection;
05151 ptr<object::reflection_list> as_constant_expression::reflection = reflection;
05152 
05153 end_package(sem);
05154 end_package(cplus);
05155 end_package(lang);
05156 end_package(lestes);
05157 

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