ss_expr_unary_op.g.cc

Go to the documentation of this file.
00001 // This file is automatically generated, do not edit.
00002 
00003 /*!
00004         \file
00005         \brief Intercode structure for project Lestes
00006         
00007             This file describes a set of classes and data types used for intercode layer -ss-.
00008             It is an output from a XSLT template which generates C++ code.
00009         
00010 */
00011 
00012 #include <lestes/lang/cplus/sem/visitor.v.g.hh>
00013 #include <lestes/lang/cplus/sem/ss_type.g.hh>
00014 #include <lestes/lang/cplus/sem/ss_misc.g.hh>
00015 
00016 #include <lestes/std/list.hh>
00017 #include <lestes/std/pair.hh>
00018 #include <lestes/std/reflect.hh>
00019 
00020 #include <lestes/lang/cplus/sem/ss_expr_unary_op.g.hh>
00021 
00022 package(lestes);
00023 package(lang);
00024 package(cplus);
00025 package(sem);
00026 
00027 
00028 // ------------- Class ss_unary_expr follows. -------------
00029 
00030 /*!
00031    \returns The value of ss_unary_expr::expr.
00032    \author lsg
00033  */
00034 ptr< ss_expression > ss_unary_expr::expr_get() const
00035 {
00036         return expr;
00037 }
00038 
00039 /*!
00040    \param[in] x The new value to set ss_unary_expr::expr to.
00041    \author lsg
00042  */
00043 void ss_unary_expr::expr_set(const ptr< ss_expression > & x)
00044 {
00045         ss_unary_expr::expr = x;
00046 }
00047 
00048 /*!
00049    Generated constructor for class ss_unary_expr.
00050    \author lsg
00051  */
00052 ss_unary_expr::ss_unary_expr (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00053                 ptr< ss_type > a__ss_expression__type,
00054                 ptr< ss_sp > a__ss_expression__psp,
00055                 ptr< ss_sp > a__ss_expression__nsp,
00056                 ptr< ss_expression > a__ss_unary_expr__expr)
00057         : ss_expression(a__ss_base_with_location__location,
00058                 a__ss_expression__type,
00059                 a__ss_expression__psp,
00060                 a__ss_expression__nsp), expr(checked(a__ss_unary_expr__expr))
00061 {}
00062 
00063 ptr< object::reflection_list > ss_unary_expr::reflection_get() const
00064 {
00065         if (!reflection) {
00066                 typedef class_reflection::field_metadata md;
00067                 typedef class_reflection::field_metadata_list mdlist;
00068                 ptr<mdlist> mdl = mdlist::create();
00069                 mdl->push_back( md::create( "expr", "ss_expression" ) );
00070                 reflection = reflection_list::create( ss_expression::reflection_get() );
00071                 reflection->push_back( class_reflection::create( "ss_unary_expr", mdl ) );
00072         }
00073         return reflection;
00074 }
00075 
00076 ptr< object::field_list_list > ss_unary_expr::field_values_get() const
00077 {
00078         ptr < field_list_list > result = ss_expression::field_values_get();
00079         result->push_back( value_list::create() );
00080         result->back()->push_back( this->expr );
00081         return result;
00082 }
00083 
00084 
00085 /*!
00086    Marking routine is used for garbage collection.
00087    \author lsg
00088  */
00089 void ss_unary_expr::gc_mark()
00090 {
00091         ss_expression::gc_mark();
00092 }
00093 
00094 // End of class ss_unary_expr.
00095 
00096 // ------------- Class ss_dereference follows. -------------
00097 
00098 void ss_dereference::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00099 {
00100         return v->visit_ss_dereference( this );
00101 }
00102 
00103 /*!
00104    This factory method for class ss_dereference takes values of all fields as arguments.
00105    \author lsg
00106  */
00107 ptr< ss_dereference > ss_dereference::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00108                 ptr< ss_type > a__ss_expression__type,
00109                 ptr< ss_sp > a__ss_expression__psp,
00110                 ptr< ss_sp > a__ss_expression__nsp,
00111                 ptr< ss_expression > a__ss_unary_expr__expr)
00112 {
00113         return ptr< ss_dereference > ( new ss_dereference(a__ss_base_with_location__location,
00114                 a__ss_expression__type,
00115                 a__ss_expression__psp,
00116                 a__ss_expression__nsp,
00117                 a__ss_unary_expr__expr) );
00118 }
00119 
00120 /*!
00121    Generated constructor for class ss_dereference.
00122    \author lsg
00123  */
00124 ss_dereference::ss_dereference (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00125                 ptr< ss_type > a__ss_expression__type,
00126                 ptr< ss_sp > a__ss_expression__psp,
00127                 ptr< ss_sp > a__ss_expression__nsp,
00128                 ptr< ss_expression > a__ss_unary_expr__expr)
00129         : ss_unary_expr(a__ss_base_with_location__location,
00130                 a__ss_expression__type,
00131                 a__ss_expression__psp,
00132                 a__ss_expression__nsp,
00133                 a__ss_unary_expr__expr)
00134 {}
00135 
00136 ptr< object::reflection_list > ss_dereference::reflection_get() const
00137 {
00138         if (!reflection) {
00139                 typedef class_reflection::field_metadata md;
00140                 typedef class_reflection::field_metadata_list mdlist;
00141                 ptr<mdlist> mdl = mdlist::create();
00142                 reflection = reflection_list::create( ss_unary_expr::reflection_get() );
00143                 reflection->push_back( class_reflection::create( "ss_dereference", mdl ) );
00144         }
00145         return reflection;
00146 }
00147 
00148 ptr< object::field_list_list > ss_dereference::field_values_get() const
00149 {
00150         ptr < field_list_list > result = ss_unary_expr::field_values_get();
00151         return result;
00152 }
00153 
00154 
00155 /*!
00156    Marking routine is used for garbage collection.
00157    \author lsg
00158  */
00159 void ss_dereference::gc_mark()
00160 {
00161         ss_unary_expr::gc_mark();
00162 }
00163 
00164 // End of class ss_dereference.
00165 
00166 // ------------- Class ss_conversion follows. -------------
00167 
00168 /*!
00169    \returns The value of ss_conversion::src_type.
00170    \author lsg
00171  */
00172 ptr< ss_type > ss_conversion::src_type_get() const
00173 {
00174         return src_type;
00175 }
00176 
00177 /*!
00178    \param[in] x The new value to set ss_conversion::src_type to.
00179    \author lsg
00180  */
00181 void ss_conversion::src_type_set(const ptr< ss_type > & x)
00182 {
00183         ss_conversion::src_type = x;
00184 }
00185 
00186 void ss_conversion::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00187 {
00188         return v->visit_ss_conversion( this );
00189 }
00190 
00191 /*!
00192    This factory method for class ss_conversion takes values of all fields as arguments.
00193    \author lsg
00194  */
00195 ptr< ss_conversion > ss_conversion::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00196                 ptr< ss_type > a__ss_expression__type,
00197                 ptr< ss_sp > a__ss_expression__psp,
00198                 ptr< ss_sp > a__ss_expression__nsp,
00199                 ptr< ss_expression > a__ss_unary_expr__expr,
00200                 ptr< ss_type > a__ss_conversion__src_type)
00201 {
00202         return ptr< ss_conversion > ( new ss_conversion(a__ss_base_with_location__location,
00203                 a__ss_expression__type,
00204                 a__ss_expression__psp,
00205                 a__ss_expression__nsp,
00206                 a__ss_unary_expr__expr,
00207                 a__ss_conversion__src_type) );
00208 }
00209 
00210 /*!
00211    Generated constructor for class ss_conversion.
00212    \author lsg
00213  */
00214 ss_conversion::ss_conversion (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00215                 ptr< ss_type > a__ss_expression__type,
00216                 ptr< ss_sp > a__ss_expression__psp,
00217                 ptr< ss_sp > a__ss_expression__nsp,
00218                 ptr< ss_expression > a__ss_unary_expr__expr,
00219                 ptr< ss_type > a__ss_conversion__src_type)
00220         : ss_unary_expr(a__ss_base_with_location__location,
00221                 a__ss_expression__type,
00222                 a__ss_expression__psp,
00223                 a__ss_expression__nsp,
00224                 a__ss_unary_expr__expr), src_type(checked(a__ss_conversion__src_type))
00225 {}
00226 
00227 ptr< object::reflection_list > ss_conversion::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( "src_type", "ss_type" ) );
00234                 reflection = reflection_list::create( ss_unary_expr::reflection_get() );
00235                 reflection->push_back( class_reflection::create( "ss_conversion", mdl ) );
00236         }
00237         return reflection;
00238 }
00239 
00240 ptr< object::field_list_list > ss_conversion::field_values_get() const
00241 {
00242         ptr < field_list_list > result = ss_unary_expr::field_values_get();
00243         result->push_back( value_list::create() );
00244         result->back()->push_back( this->src_type );
00245         return result;
00246 }
00247 
00248 
00249 /*!
00250    Marking routine is used for garbage collection.
00251    \author lsg
00252  */
00253 void ss_conversion::gc_mark()
00254 {
00255         ss_unary_expr::gc_mark();
00256 }
00257 
00258 // End of class ss_conversion.
00259 
00260 // ------------- Class ss_array_to_pointer follows. -------------
00261 
00262 /*!
00263    \returns The value of ss_array_to_pointer::src_type.
00264    \author lsg
00265  */
00266 ptr< ss_type > ss_array_to_pointer::src_type_get() const
00267 {
00268         return src_type;
00269 }
00270 
00271 /*!
00272    \param[in] x The new value to set ss_array_to_pointer::src_type to.
00273    \author lsg
00274  */
00275 void ss_array_to_pointer::src_type_set(const ptr< ss_type > & x)
00276 {
00277         ss_array_to_pointer::src_type = x;
00278 }
00279 
00280 void ss_array_to_pointer::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00281 {
00282         return v->visit_ss_array_to_pointer( this );
00283 }
00284 
00285 /*!
00286    This factory method for class ss_array_to_pointer takes values of all fields as arguments.
00287    \author lsg
00288  */
00289 ptr< ss_array_to_pointer > ss_array_to_pointer::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00290                 ptr< ss_type > a__ss_expression__type,
00291                 ptr< ss_sp > a__ss_expression__psp,
00292                 ptr< ss_sp > a__ss_expression__nsp,
00293                 ptr< ss_expression > a__ss_unary_expr__expr,
00294                 ptr< ss_type > a__ss_array_to_pointer__src_type)
00295 {
00296         return ptr< ss_array_to_pointer > ( new ss_array_to_pointer(a__ss_base_with_location__location,
00297                 a__ss_expression__type,
00298                 a__ss_expression__psp,
00299                 a__ss_expression__nsp,
00300                 a__ss_unary_expr__expr,
00301                 a__ss_array_to_pointer__src_type) );
00302 }
00303 
00304 /*!
00305    Generated constructor for class ss_array_to_pointer.
00306    \author lsg
00307  */
00308 ss_array_to_pointer::ss_array_to_pointer (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00309                 ptr< ss_type > a__ss_expression__type,
00310                 ptr< ss_sp > a__ss_expression__psp,
00311                 ptr< ss_sp > a__ss_expression__nsp,
00312                 ptr< ss_expression > a__ss_unary_expr__expr,
00313                 ptr< ss_type > a__ss_array_to_pointer__src_type)
00314         : ss_unary_expr(a__ss_base_with_location__location,
00315                 a__ss_expression__type,
00316                 a__ss_expression__psp,
00317                 a__ss_expression__nsp,
00318                 a__ss_unary_expr__expr), src_type(checked(a__ss_array_to_pointer__src_type))
00319 {}
00320 
00321 ptr< object::reflection_list > ss_array_to_pointer::reflection_get() const
00322 {
00323         if (!reflection) {
00324                 typedef class_reflection::field_metadata md;
00325                 typedef class_reflection::field_metadata_list mdlist;
00326                 ptr<mdlist> mdl = mdlist::create();
00327                 mdl->push_back( md::create( "src_type", "ss_type" ) );
00328                 reflection = reflection_list::create( ss_unary_expr::reflection_get() );
00329                 reflection->push_back( class_reflection::create( "ss_array_to_pointer", mdl ) );
00330         }
00331         return reflection;
00332 }
00333 
00334 ptr< object::field_list_list > ss_array_to_pointer::field_values_get() const
00335 {
00336         ptr < field_list_list > result = ss_unary_expr::field_values_get();
00337         result->push_back( value_list::create() );
00338         result->back()->push_back( this->src_type );
00339         return result;
00340 }
00341 
00342 
00343 /*!
00344    Marking routine is used for garbage collection.
00345    \author lsg
00346  */
00347 void ss_array_to_pointer::gc_mark()
00348 {
00349         ss_unary_expr::gc_mark();
00350 }
00351 
00352 // End of class ss_array_to_pointer.
00353 
00354 // ------------- Class ss_bind_reference follows. -------------
00355 
00356 /*!
00357    \returns The value of ss_bind_reference::src_type.
00358    \author lsg
00359  */
00360 ptr< ss_type > ss_bind_reference::src_type_get() const
00361 {
00362         return src_type;
00363 }
00364 
00365 /*!
00366    \param[in] x The new value to set ss_bind_reference::src_type to.
00367    \author lsg
00368  */
00369 void ss_bind_reference::src_type_set(const ptr< ss_type > & x)
00370 {
00371         ss_bind_reference::src_type = x;
00372 }
00373 
00374 void ss_bind_reference::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00375 {
00376         return v->visit_ss_bind_reference( this );
00377 }
00378 
00379 /*!
00380    This factory method for class ss_bind_reference takes values of all fields as arguments.
00381    \author lsg
00382  */
00383 ptr< ss_bind_reference > ss_bind_reference::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00384                 ptr< ss_type > a__ss_expression__type,
00385                 ptr< ss_sp > a__ss_expression__psp,
00386                 ptr< ss_sp > a__ss_expression__nsp,
00387                 ptr< ss_expression > a__ss_unary_expr__expr,
00388                 ptr< ss_type > a__ss_bind_reference__src_type)
00389 {
00390         return ptr< ss_bind_reference > ( new ss_bind_reference(a__ss_base_with_location__location,
00391                 a__ss_expression__type,
00392                 a__ss_expression__psp,
00393                 a__ss_expression__nsp,
00394                 a__ss_unary_expr__expr,
00395                 a__ss_bind_reference__src_type) );
00396 }
00397 
00398 /*!
00399    Generated constructor for class ss_bind_reference.
00400    \author lsg
00401  */
00402 ss_bind_reference::ss_bind_reference (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00403                 ptr< ss_type > a__ss_expression__type,
00404                 ptr< ss_sp > a__ss_expression__psp,
00405                 ptr< ss_sp > a__ss_expression__nsp,
00406                 ptr< ss_expression > a__ss_unary_expr__expr,
00407                 ptr< ss_type > a__ss_bind_reference__src_type)
00408         : ss_unary_expr(a__ss_base_with_location__location,
00409                 a__ss_expression__type,
00410                 a__ss_expression__psp,
00411                 a__ss_expression__nsp,
00412                 a__ss_unary_expr__expr), src_type(checked(a__ss_bind_reference__src_type))
00413 {}
00414 
00415 ptr< object::reflection_list > ss_bind_reference::reflection_get() const
00416 {
00417         if (!reflection) {
00418                 typedef class_reflection::field_metadata md;
00419                 typedef class_reflection::field_metadata_list mdlist;
00420                 ptr<mdlist> mdl = mdlist::create();
00421                 mdl->push_back( md::create( "src_type", "ss_type" ) );
00422                 reflection = reflection_list::create( ss_unary_expr::reflection_get() );
00423                 reflection->push_back( class_reflection::create( "ss_bind_reference", mdl ) );
00424         }
00425         return reflection;
00426 }
00427 
00428 ptr< object::field_list_list > ss_bind_reference::field_values_get() const
00429 {
00430         ptr < field_list_list > result = ss_unary_expr::field_values_get();
00431         result->push_back( value_list::create() );
00432         result->back()->push_back( this->src_type );
00433         return result;
00434 }
00435 
00436 
00437 /*!
00438    Marking routine is used for garbage collection.
00439    \author lsg
00440  */
00441 void ss_bind_reference::gc_mark()
00442 {
00443         ss_unary_expr::gc_mark();
00444 }
00445 
00446 // End of class ss_bind_reference.
00447 
00448 // ------------- Class ss_bind_to_temporary follows. -------------
00449 
00450 /*!
00451    \returns The value of ss_bind_to_temporary::src_type.
00452    \author lsg
00453  */
00454 ptr< ss_type > ss_bind_to_temporary::src_type_get() const
00455 {
00456         return src_type;
00457 }
00458 
00459 /*!
00460    \param[in] x The new value to set ss_bind_to_temporary::src_type to.
00461    \author lsg
00462  */
00463 void ss_bind_to_temporary::src_type_set(const ptr< ss_type > & x)
00464 {
00465         ss_bind_to_temporary::src_type = x;
00466 }
00467 
00468 void ss_bind_to_temporary::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00469 {
00470         return v->visit_ss_bind_to_temporary( this );
00471 }
00472 
00473 /*!
00474    This factory method for class ss_bind_to_temporary takes values of all fields as arguments.
00475    \author lsg
00476  */
00477 ptr< ss_bind_to_temporary > ss_bind_to_temporary::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00478                 ptr< ss_type > a__ss_expression__type,
00479                 ptr< ss_sp > a__ss_expression__psp,
00480                 ptr< ss_sp > a__ss_expression__nsp,
00481                 ptr< ss_expression > a__ss_unary_expr__expr,
00482                 ptr< ss_type > a__ss_bind_to_temporary__src_type)
00483 {
00484         return ptr< ss_bind_to_temporary > ( new ss_bind_to_temporary(a__ss_base_with_location__location,
00485                 a__ss_expression__type,
00486                 a__ss_expression__psp,
00487                 a__ss_expression__nsp,
00488                 a__ss_unary_expr__expr,
00489                 a__ss_bind_to_temporary__src_type) );
00490 }
00491 
00492 /*!
00493    Generated constructor for class ss_bind_to_temporary.
00494    \author lsg
00495  */
00496 ss_bind_to_temporary::ss_bind_to_temporary (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00497                 ptr< ss_type > a__ss_expression__type,
00498                 ptr< ss_sp > a__ss_expression__psp,
00499                 ptr< ss_sp > a__ss_expression__nsp,
00500                 ptr< ss_expression > a__ss_unary_expr__expr,
00501                 ptr< ss_type > a__ss_bind_to_temporary__src_type)
00502         : ss_unary_expr(a__ss_base_with_location__location,
00503                 a__ss_expression__type,
00504                 a__ss_expression__psp,
00505                 a__ss_expression__nsp,
00506                 a__ss_unary_expr__expr), src_type(checked(a__ss_bind_to_temporary__src_type))
00507 {}
00508 
00509 ptr< object::reflection_list > ss_bind_to_temporary::reflection_get() const
00510 {
00511         if (!reflection) {
00512                 typedef class_reflection::field_metadata md;
00513                 typedef class_reflection::field_metadata_list mdlist;
00514                 ptr<mdlist> mdl = mdlist::create();
00515                 mdl->push_back( md::create( "src_type", "ss_type" ) );
00516                 reflection = reflection_list::create( ss_unary_expr::reflection_get() );
00517                 reflection->push_back( class_reflection::create( "ss_bind_to_temporary", mdl ) );
00518         }
00519         return reflection;
00520 }
00521 
00522 ptr< object::field_list_list > ss_bind_to_temporary::field_values_get() const
00523 {
00524         ptr < field_list_list > result = ss_unary_expr::field_values_get();
00525         result->push_back( value_list::create() );
00526         result->back()->push_back( this->src_type );
00527         return result;
00528 }
00529 
00530 
00531 /*!
00532    Marking routine is used for garbage collection.
00533    \author lsg
00534  */
00535 void ss_bind_to_temporary::gc_mark()
00536 {
00537         ss_unary_expr::gc_mark();
00538 }
00539 
00540 // End of class ss_bind_to_temporary.
00541 
00542 // ------------- Class ss_get follows. -------------
00543 
00544 void ss_get::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00545 {
00546         return v->visit_ss_get( this );
00547 }
00548 
00549 /*!
00550    This factory method for class ss_get takes values of all fields as arguments.
00551    \author lsg
00552  */
00553 ptr< ss_get > ss_get::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00554                 ptr< ss_type > a__ss_expression__type,
00555                 ptr< ss_sp > a__ss_expression__psp,
00556                 ptr< ss_sp > a__ss_expression__nsp,
00557                 ptr< ss_expression > a__ss_unary_expr__expr)
00558 {
00559         return ptr< ss_get > ( new ss_get(a__ss_base_with_location__location,
00560                 a__ss_expression__type,
00561                 a__ss_expression__psp,
00562                 a__ss_expression__nsp,
00563                 a__ss_unary_expr__expr) );
00564 }
00565 
00566 /*!
00567    Generated constructor for class ss_get.
00568    \author lsg
00569  */
00570 ss_get::ss_get (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00571                 ptr< ss_type > a__ss_expression__type,
00572                 ptr< ss_sp > a__ss_expression__psp,
00573                 ptr< ss_sp > a__ss_expression__nsp,
00574                 ptr< ss_expression > a__ss_unary_expr__expr)
00575         : ss_unary_expr(a__ss_base_with_location__location,
00576                 a__ss_expression__type,
00577                 a__ss_expression__psp,
00578                 a__ss_expression__nsp,
00579                 a__ss_unary_expr__expr)
00580 {}
00581 
00582 ptr< object::reflection_list > ss_get::reflection_get() const
00583 {
00584         if (!reflection) {
00585                 typedef class_reflection::field_metadata md;
00586                 typedef class_reflection::field_metadata_list mdlist;
00587                 ptr<mdlist> mdl = mdlist::create();
00588                 reflection = reflection_list::create( ss_unary_expr::reflection_get() );
00589                 reflection->push_back( class_reflection::create( "ss_get", mdl ) );
00590         }
00591         return reflection;
00592 }
00593 
00594 ptr< object::field_list_list > ss_get::field_values_get() const
00595 {
00596         ptr < field_list_list > result = ss_unary_expr::field_values_get();
00597         return result;
00598 }
00599 
00600 
00601 /*!
00602    Marking routine is used for garbage collection.
00603    \author lsg
00604  */
00605 void ss_get::gc_mark()
00606 {
00607         ss_unary_expr::gc_mark();
00608 }
00609 
00610 // End of class ss_get.
00611 
00612 // ------------- Class ss_vol_get follows. -------------
00613 
00614 void ss_vol_get::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00615 {
00616         return v->visit_ss_vol_get( this );
00617 }
00618 
00619 /*!
00620    This factory method for class ss_vol_get takes values of all fields as arguments.
00621    \author lsg
00622  */
00623 ptr< ss_vol_get > ss_vol_get::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00624                 ptr< ss_type > a__ss_expression__type,
00625                 ptr< ss_sp > a__ss_expression__psp,
00626                 ptr< ss_sp > a__ss_expression__nsp,
00627                 ptr< ss_expression > a__ss_unary_expr__expr)
00628 {
00629         return ptr< ss_vol_get > ( new ss_vol_get(a__ss_base_with_location__location,
00630                 a__ss_expression__type,
00631                 a__ss_expression__psp,
00632                 a__ss_expression__nsp,
00633                 a__ss_unary_expr__expr) );
00634 }
00635 
00636 /*!
00637    Generated constructor for class ss_vol_get.
00638    \author lsg
00639  */
00640 ss_vol_get::ss_vol_get (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00641                 ptr< ss_type > a__ss_expression__type,
00642                 ptr< ss_sp > a__ss_expression__psp,
00643                 ptr< ss_sp > a__ss_expression__nsp,
00644                 ptr< ss_expression > a__ss_unary_expr__expr)
00645         : ss_get(a__ss_base_with_location__location,
00646                 a__ss_expression__type,
00647                 a__ss_expression__psp,
00648                 a__ss_expression__nsp,
00649                 a__ss_unary_expr__expr)
00650 {}
00651 
00652 ptr< object::reflection_list > ss_vol_get::reflection_get() const
00653 {
00654         if (!reflection) {
00655                 typedef class_reflection::field_metadata md;
00656                 typedef class_reflection::field_metadata_list mdlist;
00657                 ptr<mdlist> mdl = mdlist::create();
00658                 reflection = reflection_list::create( ss_get::reflection_get() );
00659                 reflection->push_back( class_reflection::create( "ss_vol_get", mdl ) );
00660         }
00661         return reflection;
00662 }
00663 
00664 ptr< object::field_list_list > ss_vol_get::field_values_get() const
00665 {
00666         ptr < field_list_list > result = ss_get::field_values_get();
00667         return result;
00668 }
00669 
00670 
00671 /*!
00672    Marking routine is used for garbage collection.
00673    \author lsg
00674  */
00675 void ss_vol_get::gc_mark()
00676 {
00677         ss_get::gc_mark();
00678 }
00679 
00680 // End of class ss_vol_get.
00681 
00682 // ------------- Class ss_gat follows. -------------
00683 
00684 void ss_gat::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00685 {
00686         return v->visit_ss_gat( this );
00687 }
00688 
00689 /*!
00690    This factory method for class ss_gat takes values of all fields as arguments.
00691    \author lsg
00692  */
00693 ptr< ss_gat > ss_gat::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00694                 ptr< ss_type > a__ss_expression__type,
00695                 ptr< ss_sp > a__ss_expression__psp,
00696                 ptr< ss_sp > a__ss_expression__nsp,
00697                 ptr< ss_expression > a__ss_unary_expr__expr)
00698 {
00699         return ptr< ss_gat > ( new ss_gat(a__ss_base_with_location__location,
00700                 a__ss_expression__type,
00701                 a__ss_expression__psp,
00702                 a__ss_expression__nsp,
00703                 a__ss_unary_expr__expr) );
00704 }
00705 
00706 /*!
00707    Generated constructor for class ss_gat.
00708    \author lsg
00709  */
00710 ss_gat::ss_gat (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00711                 ptr< ss_type > a__ss_expression__type,
00712                 ptr< ss_sp > a__ss_expression__psp,
00713                 ptr< ss_sp > a__ss_expression__nsp,
00714                 ptr< ss_expression > a__ss_unary_expr__expr)
00715         : ss_unary_expr(a__ss_base_with_location__location,
00716                 a__ss_expression__type,
00717                 a__ss_expression__psp,
00718                 a__ss_expression__nsp,
00719                 a__ss_unary_expr__expr)
00720 {}
00721 
00722 ptr< object::reflection_list > ss_gat::reflection_get() const
00723 {
00724         if (!reflection) {
00725                 typedef class_reflection::field_metadata md;
00726                 typedef class_reflection::field_metadata_list mdlist;
00727                 ptr<mdlist> mdl = mdlist::create();
00728                 reflection = reflection_list::create( ss_unary_expr::reflection_get() );
00729                 reflection->push_back( class_reflection::create( "ss_gat", mdl ) );
00730         }
00731         return reflection;
00732 }
00733 
00734 ptr< object::field_list_list > ss_gat::field_values_get() const
00735 {
00736         ptr < field_list_list > result = ss_unary_expr::field_values_get();
00737         return result;
00738 }
00739 
00740 
00741 /*!
00742    Marking routine is used for garbage collection.
00743    \author lsg
00744  */
00745 void ss_gat::gc_mark()
00746 {
00747         ss_unary_expr::gc_mark();
00748 }
00749 
00750 // End of class ss_gat.
00751 
00752 // ------------- Class ss_neg follows. -------------
00753 
00754 void ss_neg::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00755 {
00756         return v->visit_ss_neg( this );
00757 }
00758 
00759 /*!
00760    This factory method for class ss_neg takes values of all fields as arguments.
00761    \author lsg
00762  */
00763 ptr< ss_neg > ss_neg::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00764                 ptr< ss_type > a__ss_expression__type,
00765                 ptr< ss_sp > a__ss_expression__psp,
00766                 ptr< ss_sp > a__ss_expression__nsp,
00767                 ptr< ss_expression > a__ss_unary_expr__expr)
00768 {
00769         return ptr< ss_neg > ( new ss_neg(a__ss_base_with_location__location,
00770                 a__ss_expression__type,
00771                 a__ss_expression__psp,
00772                 a__ss_expression__nsp,
00773                 a__ss_unary_expr__expr) );
00774 }
00775 
00776 /*!
00777    Generated constructor for class ss_neg.
00778    \author lsg
00779  */
00780 ss_neg::ss_neg (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00781                 ptr< ss_type > a__ss_expression__type,
00782                 ptr< ss_sp > a__ss_expression__psp,
00783                 ptr< ss_sp > a__ss_expression__nsp,
00784                 ptr< ss_expression > a__ss_unary_expr__expr)
00785         : ss_unary_expr(a__ss_base_with_location__location,
00786                 a__ss_expression__type,
00787                 a__ss_expression__psp,
00788                 a__ss_expression__nsp,
00789                 a__ss_unary_expr__expr)
00790 {}
00791 
00792 ptr< object::reflection_list > ss_neg::reflection_get() const
00793 {
00794         if (!reflection) {
00795                 typedef class_reflection::field_metadata md;
00796                 typedef class_reflection::field_metadata_list mdlist;
00797                 ptr<mdlist> mdl = mdlist::create();
00798                 reflection = reflection_list::create( ss_unary_expr::reflection_get() );
00799                 reflection->push_back( class_reflection::create( "ss_neg", mdl ) );
00800         }
00801         return reflection;
00802 }
00803 
00804 ptr< object::field_list_list > ss_neg::field_values_get() const
00805 {
00806         ptr < field_list_list > result = ss_unary_expr::field_values_get();
00807         return result;
00808 }
00809 
00810 
00811 /*!
00812    Marking routine is used for garbage collection.
00813    \author lsg
00814  */
00815 void ss_neg::gc_mark()
00816 {
00817         ss_unary_expr::gc_mark();
00818 }
00819 
00820 // End of class ss_neg.
00821 
00822 // ------------- Class ss_lnot follows. -------------
00823 
00824 void ss_lnot::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00825 {
00826         return v->visit_ss_lnot( this );
00827 }
00828 
00829 /*!
00830    This factory method for class ss_lnot takes values of all fields as arguments.
00831    \author lsg
00832  */
00833 ptr< ss_lnot > ss_lnot::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00834                 ptr< ss_type > a__ss_expression__type,
00835                 ptr< ss_sp > a__ss_expression__psp,
00836                 ptr< ss_sp > a__ss_expression__nsp,
00837                 ptr< ss_expression > a__ss_unary_expr__expr)
00838 {
00839         return ptr< ss_lnot > ( new ss_lnot(a__ss_base_with_location__location,
00840                 a__ss_expression__type,
00841                 a__ss_expression__psp,
00842                 a__ss_expression__nsp,
00843                 a__ss_unary_expr__expr) );
00844 }
00845 
00846 /*!
00847    Generated constructor for class ss_lnot.
00848    \author lsg
00849  */
00850 ss_lnot::ss_lnot (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00851                 ptr< ss_type > a__ss_expression__type,
00852                 ptr< ss_sp > a__ss_expression__psp,
00853                 ptr< ss_sp > a__ss_expression__nsp,
00854                 ptr< ss_expression > a__ss_unary_expr__expr)
00855         : ss_unary_expr(a__ss_base_with_location__location,
00856                 a__ss_expression__type,
00857                 a__ss_expression__psp,
00858                 a__ss_expression__nsp,
00859                 a__ss_unary_expr__expr)
00860 {}
00861 
00862 ptr< object::reflection_list > ss_lnot::reflection_get() const
00863 {
00864         if (!reflection) {
00865                 typedef class_reflection::field_metadata md;
00866                 typedef class_reflection::field_metadata_list mdlist;
00867                 ptr<mdlist> mdl = mdlist::create();
00868                 reflection = reflection_list::create( ss_unary_expr::reflection_get() );
00869                 reflection->push_back( class_reflection::create( "ss_lnot", mdl ) );
00870         }
00871         return reflection;
00872 }
00873 
00874 ptr< object::field_list_list > ss_lnot::field_values_get() const
00875 {
00876         ptr < field_list_list > result = ss_unary_expr::field_values_get();
00877         return result;
00878 }
00879 
00880 
00881 /*!
00882    Marking routine is used for garbage collection.
00883    \author lsg
00884  */
00885 void ss_lnot::gc_mark()
00886 {
00887         ss_unary_expr::gc_mark();
00888 }
00889 
00890 // End of class ss_lnot.
00891 
00892 // ------------- Class ss_bnot follows. -------------
00893 
00894 void ss_bnot::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00895 {
00896         return v->visit_ss_bnot( this );
00897 }
00898 
00899 /*!
00900    This factory method for class ss_bnot takes values of all fields as arguments.
00901    \author lsg
00902  */
00903 ptr< ss_bnot > ss_bnot::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00904                 ptr< ss_type > a__ss_expression__type,
00905                 ptr< ss_sp > a__ss_expression__psp,
00906                 ptr< ss_sp > a__ss_expression__nsp,
00907                 ptr< ss_expression > a__ss_unary_expr__expr)
00908 {
00909         return ptr< ss_bnot > ( new ss_bnot(a__ss_base_with_location__location,
00910                 a__ss_expression__type,
00911                 a__ss_expression__psp,
00912                 a__ss_expression__nsp,
00913                 a__ss_unary_expr__expr) );
00914 }
00915 
00916 /*!
00917    Generated constructor for class ss_bnot.
00918    \author lsg
00919  */
00920 ss_bnot::ss_bnot (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00921                 ptr< ss_type > a__ss_expression__type,
00922                 ptr< ss_sp > a__ss_expression__psp,
00923                 ptr< ss_sp > a__ss_expression__nsp,
00924                 ptr< ss_expression > a__ss_unary_expr__expr)
00925         : ss_unary_expr(a__ss_base_with_location__location,
00926                 a__ss_expression__type,
00927                 a__ss_expression__psp,
00928                 a__ss_expression__nsp,
00929                 a__ss_unary_expr__expr)
00930 {}
00931 
00932 ptr< object::reflection_list > ss_bnot::reflection_get() const
00933 {
00934         if (!reflection) {
00935                 typedef class_reflection::field_metadata md;
00936                 typedef class_reflection::field_metadata_list mdlist;
00937                 ptr<mdlist> mdl = mdlist::create();
00938                 reflection = reflection_list::create( ss_unary_expr::reflection_get() );
00939                 reflection->push_back( class_reflection::create( "ss_bnot", mdl ) );
00940         }
00941         return reflection;
00942 }
00943 
00944 ptr< object::field_list_list > ss_bnot::field_values_get() const
00945 {
00946         ptr < field_list_list > result = ss_unary_expr::field_values_get();
00947         return result;
00948 }
00949 
00950 
00951 /*!
00952    Marking routine is used for garbage collection.
00953    \author lsg
00954  */
00955 void ss_bnot::gc_mark()
00956 {
00957         ss_unary_expr::gc_mark();
00958 }
00959 
00960 // End of class ss_bnot.
00961 
00962 // ------------- Class ss_address_of follows. -------------
00963 
00964 void ss_address_of::accept_ss_expression_visitor( ptr< ss_expression_visitor > v )
00965 {
00966         return v->visit_ss_address_of( this );
00967 }
00968 
00969 /*!
00970    This factory method for class ss_address_of takes values of all fields as arguments.
00971    \author lsg
00972  */
00973 ptr< ss_address_of > ss_address_of::create(ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00974                 ptr< ss_type > a__ss_expression__type,
00975                 ptr< ss_sp > a__ss_expression__psp,
00976                 ptr< ss_sp > a__ss_expression__nsp,
00977                 ptr< ss_expression > a__ss_unary_expr__expr)
00978 {
00979         return ptr< ss_address_of > ( new ss_address_of(a__ss_base_with_location__location,
00980                 a__ss_expression__type,
00981                 a__ss_expression__psp,
00982                 a__ss_expression__nsp,
00983                 a__ss_unary_expr__expr) );
00984 }
00985 
00986 /*!
00987    Generated constructor for class ss_address_of.
00988    \author lsg
00989  */
00990 ss_address_of::ss_address_of (ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00991                 ptr< ss_type > a__ss_expression__type,
00992                 ptr< ss_sp > a__ss_expression__psp,
00993                 ptr< ss_sp > a__ss_expression__nsp,
00994                 ptr< ss_expression > a__ss_unary_expr__expr)
00995         : ss_unary_expr(a__ss_base_with_location__location,
00996                 a__ss_expression__type,
00997                 a__ss_expression__psp,
00998                 a__ss_expression__nsp,
00999                 a__ss_unary_expr__expr)
01000 {}
01001 
01002 ptr< object::reflection_list > ss_address_of::reflection_get() const
01003 {
01004         if (!reflection) {
01005                 typedef class_reflection::field_metadata md;
01006                 typedef class_reflection::field_metadata_list mdlist;
01007                 ptr<mdlist> mdl = mdlist::create();
01008                 reflection = reflection_list::create( ss_unary_expr::reflection_get() );
01009                 reflection->push_back( class_reflection::create( "ss_address_of", mdl ) );
01010         }
01011         return reflection;
01012 }
01013 
01014 ptr< object::field_list_list > ss_address_of::field_values_get() const
01015 {
01016         ptr < field_list_list > result = ss_unary_expr::field_values_get();
01017         return result;
01018 }
01019 
01020 
01021 /*!
01022    Marking routine is used for garbage collection.
01023    \author lsg
01024  */
01025 void ss_address_of::gc_mark()
01026 {
01027         ss_unary_expr::gc_mark();
01028 }
01029 
01030 // End of class ss_address_of.
01031 
01032 
01033 // static data members follow 
01034 ptr<object::reflection_list> ss_unary_expr::reflection = reflection;
01035 ptr<object::reflection_list> ss_dereference::reflection = reflection;
01036 ptr<object::reflection_list> ss_conversion::reflection = reflection;
01037 ptr<object::reflection_list> ss_array_to_pointer::reflection = reflection;
01038 ptr<object::reflection_list> ss_bind_reference::reflection = reflection;
01039 ptr<object::reflection_list> ss_bind_to_temporary::reflection = reflection;
01040 ptr<object::reflection_list> ss_get::reflection = reflection;
01041 ptr<object::reflection_list> ss_vol_get::reflection = reflection;
01042 ptr<object::reflection_list> ss_gat::reflection = reflection;
01043 ptr<object::reflection_list> ss_neg::reflection = reflection;
01044 ptr<object::reflection_list> ss_lnot::reflection = reflection;
01045 ptr<object::reflection_list> ss_bnot::reflection = reflection;
01046 ptr<object::reflection_list> ss_address_of::reflection = reflection;
01047 
01048 end_package(sem);
01049 end_package(cplus);
01050 end_package(lang);
01051 end_package(lestes);
01052 

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