ss_statement.g.hh

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 #ifndef lestes__lang__cplus__sem__ss_statement_g_hh__included
00013 #define lestes__lang__cplus__sem__ss_statement_g_hh__included
00014 
00015 #include <lestes/common.hh>
00016 #include <lestes/intercode/intercode.g.hh>
00017 #include <lestes/lang/cplus/sem/ss_expression.g.hh>
00018 #include <lestes/lang/cplus/sem/ss_statement.hh>
00019 #include <lestes/lang/cplus/sem/ss_misc.g.hh>
00020 
00021 #include <lestes/std/objectize_macros.hh>
00022 package(lestes);
00023 package(lang);
00024 package(cplus);
00025 package(sem);
00026 
00027 
00028 class ss_sp;
00029 class ss_decl_seq;
00030 class ss_declaration;
00031 class ss_expression;
00032 class ss_iter_stmt;
00033 class ss_label;
00034 class ss_case_label;
00035 class ss_default_label;
00036 class ss_breakable_stmt_label;
00037 class ss_statement;
00038 class ss_statement_visitor;
00039 class ss_compound_stmt;
00040 class ss_decl_stmt;
00041 class ss_try;
00042 class ss_break;
00043 class ss_return;
00044 class ss_goto;
00045 class ss_expr_stmt;
00046 class ss_continue;
00047 class ss_if_stmt;
00048 class ss_catch;
00049 class ss_breakable_stmt;
00050 class ss_switch_stmt;
00051 class ss_iteration_stmt;
00052 class ss_do;
00053 class ss_while;
00054 class ss_for;
00055 
00056 
00057 //! Base class for statements
00058 class ss_statement : public ::lestes::intercode::ss_base_with_location {
00059 public:
00060         //! The method labels_get returns the value of the field ss_statement::labels.
00061         ptr< ::lestes::std::list< srp< ss_label > > > labels_get() const;
00062 
00063         //! The method parent_get returns the value of the field ss_statement::parent.
00064         ptr< ss_compound_stmt > parent_get() const;
00065 
00066         //! The method psp_get returns the value of the field ss_statement::psp.
00067         ptr< ss_sp > psp_get() const;
00068 
00069         //! The method psp_set sets the field ss_statement::psp to the given value.
00070         void psp_set(const ptr< ss_sp > &);
00071 
00072         //! The method nsp_get returns the value of the field ss_statement::nsp.
00073         ptr< ss_sp > nsp_get() const;
00074 
00075         //! The method nsp_set sets the field ss_statement::nsp to the given value.
00076         void nsp_set(const ptr< ss_sp > &);
00077 
00078         //! The method sequence_points_get returns the value of the field ss_statement::sequence_points.
00079         ptr< ::lestes::std::list< srp< ss_sp > > > sequence_points_get() const;
00080 
00081         //! Sets the parent field, can only be called from ss_compound_stmt::instance.
00082         void parent_set_once_hack(ptr< ss_compound_stmt > );
00083 
00084         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v ) abstract;
00085         
00086 
00087         //! for purposes of dumping
00088         virtual ptr<reflection_list> reflection_get() const;
00089         //! for purposes of dumping
00090         virtual ptr<field_list_list> field_values_get() const;
00091         
00092 protected:
00093         //! Generated constructor for class ss_statement.
00094         ss_statement (
00095                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00096                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00097                 ptr< ss_compound_stmt > a__ss_statement__parent,
00098                 ptr< ss_sp > a__ss_statement__psp,
00099                 ptr< ss_sp > a__ss_statement__nsp,
00100                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points);
00101 
00102         //! Marking routine for class ss_statement. 
00103         virtual void gc_mark();
00104 
00105 private:
00106         //! List of labels prefixing the current statement.
00107         srp< ::lestes::std::list< srp< ss_label > > >  labels;
00108         srp< ss_compound_stmt > parent;
00109         srp< ss_sp > psp;
00110         srp< ss_sp > nsp;
00111         /*! \brief List of all sequence points in this statement.
00112 
00113         
00114                                         Note: This also includes previous and next sequnce point(psp,nsp).
00115 
00116                                         It might be necessary to allow setter/alter after two-pass
00117                                         analysis of expressions is implemented.
00118                                 
00119         */
00120         srp< ::lestes::std::list< srp< ss_sp > > >  sequence_points;
00121         static bool parent_set_ward;
00122         static ptr<reflection_list> reflection;
00123         
00124 }; // ss_statement
00125 
00126 
00127 //! Class for compound statement
00128 class ss_compound_stmt : public ss_statement {
00129 public:
00130         enum behavior_type {
00131                 NORMAL,
00132                 NO_CREATE,
00133                 NO_LEAVE
00134         };
00135 
00136         //! The method decl_seq_get returns the value of the field ss_compound_stmt::decl_seq.
00137         ptr< ss_decl_seq > decl_seq_get() const;
00138 
00139         //! The method statements_get returns the value of the field ss_compound_stmt::statements.
00140         ptr< ::lestes::std::list< srp< ss_statement > > > statements_get() const;
00141 
00142         //! The method destructor_sp_get returns the value of the field ss_compound_stmt::destructor_sp.
00143         ptr< ss_sp > destructor_sp_get() const;
00144 
00145         //! The method destructor_sp_set sets the field ss_compound_stmt::destructor_sp to the given value.
00146         void destructor_sp_set(const ptr< ss_sp > &);
00147 
00148         //! The method behavior_get returns the value of the field ss_compound_stmt::behavior.
00149         behavior_type behavior_get() const;
00150 
00151         //! The method behavior_set sets the field ss_compound_stmt::behavior to the given value.
00152         void behavior_set(behavior_type);
00153 
00154         //! Returns pointer to the instance of root (grandparent) ss_compound_stmt.
00155         static ptr< ss_compound_stmt > root_instance();
00156 
00157         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00158         
00159         //! First generated factory method for class ss_compound_stmt.
00160         static ptr< ss_compound_stmt > create (
00161                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00162                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00163                 ptr< ss_compound_stmt > a__ss_statement__parent,
00164                 ptr< ss_sp > a__ss_statement__psp,
00165                 ptr< ss_sp > a__ss_statement__nsp,
00166                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00167                 ptr< ss_decl_seq > a__ss_compound_stmt__decl_seq,
00168                 ptr< ::lestes::std::list< srp< ss_statement > > > a__ss_compound_stmt__statements,
00169                 ptr< ss_sp > a__ss_compound_stmt__destructor_sp,
00170                 behavior_type a__ss_compound_stmt__behavior);
00171 
00172         //! Second generated factory method for class ss_compound_stmt.
00173         static ptr< ss_compound_stmt > create (
00174                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00175                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00176                 ptr< ss_compound_stmt > a__ss_statement__parent,
00177                 ptr< ss_sp > a__ss_statement__psp,
00178                 ptr< ss_sp > a__ss_statement__nsp,
00179                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00180                 ptr< ss_decl_seq > a__ss_compound_stmt__decl_seq,
00181                 ptr< ::lestes::std::list< srp< ss_statement > > > a__ss_compound_stmt__statements,
00182                 ptr< ss_sp > a__ss_compound_stmt__destructor_sp);
00183 
00184         
00185 
00186         //! for purposes of dumping
00187         virtual ptr<reflection_list> reflection_get() const;
00188         //! for purposes of dumping
00189         virtual ptr<field_list_list> field_values_get() const;
00190         
00191 protected:
00192         //! Generated constructor for class ss_compound_stmt.
00193         ss_compound_stmt (
00194                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00195                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00196                 ptr< ss_compound_stmt > a__ss_statement__parent,
00197                 ptr< ss_sp > a__ss_statement__psp,
00198                 ptr< ss_sp > a__ss_statement__nsp,
00199                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00200                 ptr< ss_decl_seq > a__ss_compound_stmt__decl_seq,
00201                 ptr< ::lestes::std::list< srp< ss_statement > > > a__ss_compound_stmt__statements,
00202                 ptr< ss_sp > a__ss_compound_stmt__destructor_sp,
00203                 behavior_type a__ss_compound_stmt__behavior);
00204 
00205         //! Marking routine for class ss_compound_stmt. 
00206         virtual void gc_mark();
00207 
00208 private:
00209         //! The sequence of declaration declared in this compound statement.Used as scope.
00210         srp< ss_decl_seq > decl_seq;
00211         /*! \brief The sequence of statements in this compound statement.
00212 
00213         Declarations declared in this compound statement have their 
00214                                         associated decl_stmt inserted to the statement list. 
00215         */
00216         srp< ::lestes::std::list< srp< ss_statement > > >  statements;
00217         //! Special sequence point for separating statements in compound_stmt and destructors for local variables created in current compound_stmt, which shall be destroyed at the end [].
00218         srp< ss_sp > destructor_sp;
00219         static ptr< ss_compound_stmt > the_root_instance;
00220         behavior_type behavior;
00221         static ptr<reflection_list> reflection;
00222         
00223 }; // ss_compound_stmt
00224 
00225 
00226 //! Class for declaration statement
00227 class ss_decl_stmt : public ss_statement {
00228 public:
00229         enum initializer_kind_enum {
00230                 IK_DIRECT_INITIALIZATION,
00231                 IK_DEFAULT_INITIALIZATION,
00232                 IK_COPY_INITIALIZATION,
00233                 IK_NOT_APPLY_INITIALIZATION
00234         };
00235 
00236         //! The method decl_get returns the value of the field ss_decl_stmt::decl.
00237         ptr< ss_declaration > decl_get() const;
00238 
00239         //! The method decl_set sets the field ss_decl_stmt::decl to the given value.
00240         void decl_set(const ptr< ss_declaration > &);
00241 
00242         //! The method args_get returns the value of the field ss_decl_stmt::args.
00243         ptr< ::lestes::std::list< srp< ss_expression > > > args_get() const;
00244 
00245         //! The method args_set sets the field ss_decl_stmt::args to the given value.
00246         void args_set(const ptr< ::lestes::std::list< srp< ss_expression > > > & );
00247 
00248         //! The method initializer_kind_get returns the value of the field ss_decl_stmt::initializer_kind.
00249         initializer_kind_enum initializer_kind_get() const;
00250 
00251         //! The method initializer_kind_set sets the field ss_decl_stmt::initializer_kind to the given value.
00252         void initializer_kind_set(initializer_kind_enum);
00253 
00254         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00255         
00256         //! First generated factory method for class ss_decl_stmt.
00257         static ptr< ss_decl_stmt > create (
00258                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00259                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00260                 ptr< ss_compound_stmt > a__ss_statement__parent,
00261                 ptr< ss_sp > a__ss_statement__psp,
00262                 ptr< ss_sp > a__ss_statement__nsp,
00263                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00264                 ptr< ss_declaration > a__ss_decl_stmt__decl,
00265                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_decl_stmt__args,
00266                 initializer_kind_enum a__ss_decl_stmt__initializer_kind);
00267 
00268         
00269 
00270         //! for purposes of dumping
00271         virtual ptr<reflection_list> reflection_get() const;
00272         //! for purposes of dumping
00273         virtual ptr<field_list_list> field_values_get() const;
00274         
00275 protected:
00276         //! Generated constructor for class ss_decl_stmt.
00277         ss_decl_stmt (
00278                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00279                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00280                 ptr< ss_compound_stmt > a__ss_statement__parent,
00281                 ptr< ss_sp > a__ss_statement__psp,
00282                 ptr< ss_sp > a__ss_statement__nsp,
00283                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00284                 ptr< ss_declaration > a__ss_decl_stmt__decl,
00285                 ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_decl_stmt__args,
00286                 initializer_kind_enum a__ss_decl_stmt__initializer_kind);
00287 
00288         //! Marking routine for class ss_decl_stmt. 
00289         virtual void gc_mark();
00290 
00291 private:
00292         srp< ss_declaration > decl;
00293         srp< ::lestes::std::list< srp< ss_expression > > >  args;
00294         /*! \brief Distinguishes kind of initialization
00295 
00296         
00297                                         <pre>
00298                                         IK_COPY_INITIALIZATION:         int i = 3; int i = f(x);
00299                                         IK_DIRECT_INITIALIZATION:       int i (3); A i (3,3);
00300                                         IK_DEFAULT_INITIALIZATION:      int i;
00301                                         IK_NOT_APPLY_INITIALIZATION:    class x {};     // where no initialization is possible
00302                                         details see [8.5]
00303                                         </pre>
00304                                 
00305         */
00306         initializer_kind_enum initializer_kind;
00307         static ptr<reflection_list> reflection;
00308         
00309 }; // ss_decl_stmt
00310 
00311 
00312 //! Class for try-block
00313 class ss_try : public ss_statement {
00314 public:
00315         //! The method block_get returns the value of the field ss_try::block.
00316         ptr< ss_compound_stmt > block_get() const;
00317 
00318         //! The method block_set sets the field ss_try::block to the given value.
00319         void block_set(const ptr< ss_compound_stmt > &);
00320 
00321         //! The method handlers_get returns the value of the field ss_try::handlers.
00322         ptr< ::lestes::std::list< srp< ss_catch > > > handlers_get() const;
00323 
00324         //! The method handlers_set sets the field ss_try::handlers to the given value.
00325         void handlers_set(const ptr< ::lestes::std::list< srp< ss_catch > > > & );
00326 
00327         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00328         
00329         //! First generated factory method for class ss_try.
00330         static ptr< ss_try > create (
00331                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00332                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00333                 ptr< ss_compound_stmt > a__ss_statement__parent,
00334                 ptr< ss_sp > a__ss_statement__psp,
00335                 ptr< ss_sp > a__ss_statement__nsp,
00336                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00337                 ptr< ss_compound_stmt > a__ss_try__block,
00338                 ptr< ::lestes::std::list< srp< ss_catch > > > a__ss_try__handlers);
00339 
00340         
00341 
00342         //! for purposes of dumping
00343         virtual ptr<reflection_list> reflection_get() const;
00344         //! for purposes of dumping
00345         virtual ptr<field_list_list> field_values_get() const;
00346         
00347 protected:
00348         //! Generated constructor for class ss_try.
00349         ss_try (
00350                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00351                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00352                 ptr< ss_compound_stmt > a__ss_statement__parent,
00353                 ptr< ss_sp > a__ss_statement__psp,
00354                 ptr< ss_sp > a__ss_statement__nsp,
00355                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00356                 ptr< ss_compound_stmt > a__ss_try__block,
00357                 ptr< ::lestes::std::list< srp< ss_catch > > > a__ss_try__handlers);
00358 
00359         //! Marking routine for class ss_try. 
00360         virtual void gc_mark();
00361 
00362 private:
00363         srp< ss_compound_stmt > block;
00364         srp< ::lestes::std::list< srp< ss_catch > > >  handlers;
00365         static ptr<reflection_list> reflection;
00366         
00367 }; // ss_try
00368 
00369 
00370 //! Class for break statement
00371 class ss_break : public ss_statement {
00372 public:
00373         //! The method from_get returns the value of the field ss_break::from.
00374         ptr< ss_breakable_stmt > from_get() const;
00375 
00376         //! The method from_set sets the field ss_break::from to the given value.
00377         void from_set(const ptr< ss_breakable_stmt > &);
00378 
00379         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00380         
00381         //! First generated factory method for class ss_break.
00382         static ptr< ss_break > create (
00383                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00384                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00385                 ptr< ss_compound_stmt > a__ss_statement__parent,
00386                 ptr< ss_sp > a__ss_statement__psp,
00387                 ptr< ss_sp > a__ss_statement__nsp,
00388                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00389                 ptr< ss_breakable_stmt > a__ss_break__from);
00390 
00391         
00392 
00393         //! for purposes of dumping
00394         virtual ptr<reflection_list> reflection_get() const;
00395         //! for purposes of dumping
00396         virtual ptr<field_list_list> field_values_get() const;
00397         
00398 protected:
00399         //! Generated constructor for class ss_break.
00400         ss_break (
00401                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00402                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00403                 ptr< ss_compound_stmt > a__ss_statement__parent,
00404                 ptr< ss_sp > a__ss_statement__psp,
00405                 ptr< ss_sp > a__ss_statement__nsp,
00406                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00407                 ptr< ss_breakable_stmt > a__ss_break__from);
00408 
00409         //! Marking routine for class ss_break. 
00410         virtual void gc_mark();
00411 
00412 private:
00413         srp< ss_breakable_stmt > from;
00414         static ptr<reflection_list> reflection;
00415         
00416 }; // ss_break
00417 
00418 
00419 //! Class for return statement
00420 class ss_return : public ss_statement {
00421 public:
00422         //! The method result_get returns the value of the field ss_return::result.
00423         ptr< ss_expression > result_get() const;
00424 
00425         //! The method result_set sets the field ss_return::result to the given value.
00426         void result_set(const ptr< ss_expression > &);
00427 
00428         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00429         
00430         //! First generated factory method for class ss_return.
00431         static ptr< ss_return > create (
00432                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00433                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00434                 ptr< ss_compound_stmt > a__ss_statement__parent,
00435                 ptr< ss_sp > a__ss_statement__psp,
00436                 ptr< ss_sp > a__ss_statement__nsp,
00437                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00438                 ptr< ss_expression > a__ss_return__result);
00439 
00440         
00441 
00442         //! for purposes of dumping
00443         virtual ptr<reflection_list> reflection_get() const;
00444         //! for purposes of dumping
00445         virtual ptr<field_list_list> field_values_get() const;
00446         
00447 protected:
00448         //! Generated constructor for class ss_return.
00449         ss_return (
00450                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00451                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00452                 ptr< ss_compound_stmt > a__ss_statement__parent,
00453                 ptr< ss_sp > a__ss_statement__psp,
00454                 ptr< ss_sp > a__ss_statement__nsp,
00455                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00456                 ptr< ss_expression > a__ss_return__result);
00457 
00458         //! Marking routine for class ss_return. 
00459         virtual void gc_mark();
00460 
00461 private:
00462         //! It's NULL in case of return; in the source code.
00463         srp< ss_expression > result;
00464         static ptr<reflection_list> reflection;
00465         
00466 }; // ss_return
00467 
00468 
00469 //! Class for goto statement
00470 class ss_goto : public ss_statement {
00471 public:
00472         //! The method label_get returns the value of the field ss_goto::label.
00473         ptr< ss_label > label_get() const;
00474 
00475         //! The method label_set sets the field ss_goto::label to the given value.
00476         void label_set(const ptr< ss_label > &);
00477 
00478         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00479         
00480         //! First generated factory method for class ss_goto.
00481         static ptr< ss_goto > create (
00482                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00483                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00484                 ptr< ss_compound_stmt > a__ss_statement__parent,
00485                 ptr< ss_sp > a__ss_statement__psp,
00486                 ptr< ss_sp > a__ss_statement__nsp,
00487                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00488                 ptr< ss_label > a__ss_goto__label);
00489 
00490         
00491 
00492         //! for purposes of dumping
00493         virtual ptr<reflection_list> reflection_get() const;
00494         //! for purposes of dumping
00495         virtual ptr<field_list_list> field_values_get() const;
00496         
00497 protected:
00498         //! Generated constructor for class ss_goto.
00499         ss_goto (
00500                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00501                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00502                 ptr< ss_compound_stmt > a__ss_statement__parent,
00503                 ptr< ss_sp > a__ss_statement__psp,
00504                 ptr< ss_sp > a__ss_statement__nsp,
00505                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00506                 ptr< ss_label > a__ss_goto__label);
00507 
00508         //! Marking routine for class ss_goto. 
00509         virtual void gc_mark();
00510 
00511 private:
00512         srp< ss_label > label;
00513         static ptr<reflection_list> reflection;
00514         
00515 }; // ss_goto
00516 
00517 
00518 //! Class for expression statement
00519 class ss_expr_stmt : public ss_statement {
00520 public:
00521         //! The method expression_get returns the value of the field ss_expr_stmt::expression.
00522         ptr< ss_expression > expression_get() const;
00523 
00524         //! The method expression_set sets the field ss_expr_stmt::expression to the given value.
00525         void expression_set(const ptr< ss_expression > &);
00526 
00527         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00528         
00529         //! First generated factory method for class ss_expr_stmt.
00530         static ptr< ss_expr_stmt > create (
00531                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00532                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00533                 ptr< ss_compound_stmt > a__ss_statement__parent,
00534                 ptr< ss_sp > a__ss_statement__psp,
00535                 ptr< ss_sp > a__ss_statement__nsp,
00536                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00537                 ptr< ss_expression > a__ss_expr_stmt__expression);
00538 
00539         
00540 
00541         //! for purposes of dumping
00542         virtual ptr<reflection_list> reflection_get() const;
00543         //! for purposes of dumping
00544         virtual ptr<field_list_list> field_values_get() const;
00545         
00546 protected:
00547         //! Generated constructor for class ss_expr_stmt.
00548         ss_expr_stmt (
00549                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00550                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00551                 ptr< ss_compound_stmt > a__ss_statement__parent,
00552                 ptr< ss_sp > a__ss_statement__psp,
00553                 ptr< ss_sp > a__ss_statement__nsp,
00554                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00555                 ptr< ss_expression > a__ss_expr_stmt__expression);
00556 
00557         //! Marking routine for class ss_expr_stmt. 
00558         virtual void gc_mark();
00559 
00560 private:
00561         srp< ss_expression > expression;
00562         static ptr<reflection_list> reflection;
00563         
00564 }; // ss_expr_stmt
00565 
00566 
00567 //! Class for continue statement
00568 class ss_continue : public ss_statement {
00569 public:
00570         //! The method from_get returns the value of the field ss_continue::from.
00571         ptr< ss_iteration_stmt > from_get() const;
00572 
00573         //! The method from_set sets the field ss_continue::from to the given value.
00574         void from_set(const ptr< ss_iteration_stmt > &);
00575 
00576         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00577         
00578         //! First generated factory method for class ss_continue.
00579         static ptr< ss_continue > create (
00580                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00581                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00582                 ptr< ss_compound_stmt > a__ss_statement__parent,
00583                 ptr< ss_sp > a__ss_statement__psp,
00584                 ptr< ss_sp > a__ss_statement__nsp,
00585                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00586                 ptr< ss_iteration_stmt > a__ss_continue__from);
00587 
00588         
00589 
00590         //! for purposes of dumping
00591         virtual ptr<reflection_list> reflection_get() const;
00592         //! for purposes of dumping
00593         virtual ptr<field_list_list> field_values_get() const;
00594         
00595 protected:
00596         //! Generated constructor for class ss_continue.
00597         ss_continue (
00598                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00599                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00600                 ptr< ss_compound_stmt > a__ss_statement__parent,
00601                 ptr< ss_sp > a__ss_statement__psp,
00602                 ptr< ss_sp > a__ss_statement__nsp,
00603                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00604                 ptr< ss_iteration_stmt > a__ss_continue__from);
00605 
00606         //! Marking routine for class ss_continue. 
00607         virtual void gc_mark();
00608 
00609 private:
00610         srp< ss_iteration_stmt > from;
00611         static ptr<reflection_list> reflection;
00612         
00613 }; // ss_continue
00614 
00615 
00616 //! Class for if statement
00617 class ss_if_stmt : public ss_statement {
00618 public:
00619         //! The method condition_get returns the value of the field ss_if_stmt::condition.
00620         ptr< ss_expression > condition_get() const;
00621 
00622         //! The method condition_set sets the field ss_if_stmt::condition to the given value.
00623         void condition_set(const ptr< ss_expression > &);
00624 
00625         //! The method cthen_get returns the value of the field ss_if_stmt::cthen.
00626         ptr< ss_compound_stmt > cthen_get() const;
00627 
00628         //! The method cthen_set sets the field ss_if_stmt::cthen to the given value.
00629         void cthen_set(const ptr< ss_compound_stmt > &);
00630 
00631         //! The method celse_get returns the value of the field ss_if_stmt::celse.
00632         ptr< ss_compound_stmt > celse_get() const;
00633 
00634         //! The method celse_set sets the field ss_if_stmt::celse to the given value.
00635         void celse_set(const ptr< ss_compound_stmt > &);
00636 
00637         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00638         
00639         //! First generated factory method for class ss_if_stmt.
00640         static ptr< ss_if_stmt > create (
00641                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00642                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00643                 ptr< ss_compound_stmt > a__ss_statement__parent,
00644                 ptr< ss_sp > a__ss_statement__psp,
00645                 ptr< ss_sp > a__ss_statement__nsp,
00646                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00647                 ptr< ss_expression > a__ss_if_stmt__condition,
00648                 ptr< ss_compound_stmt > a__ss_if_stmt__cthen,
00649                 ptr< ss_compound_stmt > a__ss_if_stmt__celse);
00650 
00651         
00652 
00653         //! for purposes of dumping
00654         virtual ptr<reflection_list> reflection_get() const;
00655         //! for purposes of dumping
00656         virtual ptr<field_list_list> field_values_get() const;
00657         
00658 protected:
00659         //! Generated constructor for class ss_if_stmt.
00660         ss_if_stmt (
00661                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00662                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00663                 ptr< ss_compound_stmt > a__ss_statement__parent,
00664                 ptr< ss_sp > a__ss_statement__psp,
00665                 ptr< ss_sp > a__ss_statement__nsp,
00666                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00667                 ptr< ss_expression > a__ss_if_stmt__condition,
00668                 ptr< ss_compound_stmt > a__ss_if_stmt__cthen,
00669                 ptr< ss_compound_stmt > a__ss_if_stmt__celse);
00670 
00671         //! Marking routine for class ss_if_stmt. 
00672         virtual void gc_mark();
00673 
00674 private:
00675         srp< ss_expression > condition;
00676         srp< ss_compound_stmt > cthen;
00677         srp< ss_compound_stmt > celse;
00678         static ptr<reflection_list> reflection;
00679         
00680 }; // ss_if_stmt
00681 
00682 
00683 //! Class for catch handler for try block.
00684 class ss_catch : public ss_statement {
00685 public:
00686         //! The method body_get returns the value of the field ss_catch::body.
00687         ptr< ss_compound_stmt > body_get() const;
00688 
00689         //! The method body_set sets the field ss_catch::body to the given value.
00690         void body_set(const ptr< ss_compound_stmt > &);
00691 
00692         //! The method decl_get returns the value of the field ss_catch::decl.
00693         ptr< ss_declaration > decl_get() const;
00694 
00695         //! The method decl_set sets the field ss_catch::decl to the given value.
00696         void decl_set(const ptr< ss_declaration > &);
00697 
00698         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00699         
00700         //! First generated factory method for class ss_catch.
00701         static ptr< ss_catch > create (
00702                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00703                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00704                 ptr< ss_compound_stmt > a__ss_statement__parent,
00705                 ptr< ss_sp > a__ss_statement__psp,
00706                 ptr< ss_sp > a__ss_statement__nsp,
00707                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00708                 ptr< ss_compound_stmt > a__ss_catch__body,
00709                 ptr< ss_declaration > a__ss_catch__decl);
00710 
00711         
00712 
00713         //! for purposes of dumping
00714         virtual ptr<reflection_list> reflection_get() const;
00715         //! for purposes of dumping
00716         virtual ptr<field_list_list> field_values_get() const;
00717         
00718 protected:
00719         //! Generated constructor for class ss_catch.
00720         ss_catch (
00721                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00722                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00723                 ptr< ss_compound_stmt > a__ss_statement__parent,
00724                 ptr< ss_sp > a__ss_statement__psp,
00725                 ptr< ss_sp > a__ss_statement__nsp,
00726                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00727                 ptr< ss_compound_stmt > a__ss_catch__body,
00728                 ptr< ss_declaration > a__ss_catch__decl);
00729 
00730         //! Marking routine for class ss_catch. 
00731         virtual void gc_mark();
00732 
00733 private:
00734         srp< ss_compound_stmt > body;
00735         srp< ss_declaration > decl;
00736         static ptr<reflection_list> reflection;
00737         
00738 }; // ss_catch
00739 
00740 
00741 //! Base class for breakable statements
00742 class ss_breakable_stmt : public ss_statement {
00743 public:
00744         //! The method body_get returns the value of the field ss_breakable_stmt::body.
00745         ptr< ss_compound_stmt > body_get() const;
00746 
00747         //! The method body_set sets the field ss_breakable_stmt::body to the given value.
00748         void body_set(const ptr< ss_compound_stmt > &);
00749 
00750         //! The method condition_get returns the value of the field ss_breakable_stmt::condition.
00751         ptr< ss_expression > condition_get() const;
00752 
00753         //! The method condition_set sets the field ss_breakable_stmt::condition to the given value.
00754         void condition_set(const ptr< ss_expression > &);
00755 
00756         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v ) abstract;
00757         
00758 
00759         //! for purposes of dumping
00760         virtual ptr<reflection_list> reflection_get() const;
00761         //! for purposes of dumping
00762         virtual ptr<field_list_list> field_values_get() const;
00763         
00764 protected:
00765         //! Generated constructor for class ss_breakable_stmt.
00766         ss_breakable_stmt (
00767                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00768                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00769                 ptr< ss_compound_stmt > a__ss_statement__parent,
00770                 ptr< ss_sp > a__ss_statement__psp,
00771                 ptr< ss_sp > a__ss_statement__nsp,
00772                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00773                 ptr< ss_compound_stmt > a__ss_breakable_stmt__body,
00774                 ptr< ss_expression > a__ss_breakable_stmt__condition);
00775 
00776         //! Marking routine for class ss_breakable_stmt. 
00777         virtual void gc_mark();
00778 
00779 private:
00780         /*! 
00781         
00782                                         Reference to additional scope wrapping just the do, for, while, and switch.
00783                                         This scope is used to enforce visibility of any variable declared inside
00784                                         the condition of the breakable.
00785                         
00786         */
00787         srp< ss_compound_stmt > body;
00788         /*! 
00789                 
00790                                         This is of type expression, because the possible declaration is already
00791                                         accounted for in ss_breakable_stmt::body.
00792                         
00793         */
00794         srp< ss_expression > condition;
00795         static ptr<reflection_list> reflection;
00796         
00797 }; // ss_breakable_stmt
00798 
00799 
00800 //! Class for switch block
00801 class ss_switch_stmt : public ss_breakable_stmt {
00802 public:
00803         //! The method case_labels_get returns the value of the field ss_switch_stmt::case_labels.
00804         ptr< ::lestes::std::list< srp< ss_case_label > > > case_labels_get() const;
00805 
00806         //! The method case_labels_set sets the field ss_switch_stmt::case_labels to the given value.
00807         void case_labels_set(const ptr< ::lestes::std::list< srp< ss_case_label > > > & );
00808 
00809         //! The method default_label_get returns the value of the field ss_switch_stmt::default_label.
00810         ptr< ss_default_label > default_label_get() const;
00811 
00812         //! The method default_label_set sets the field ss_switch_stmt::default_label to the given value.
00813         void default_label_set(const ptr< ss_default_label > &);
00814 
00815         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00816         
00817         //! First generated factory method for class ss_switch_stmt.
00818         static ptr< ss_switch_stmt > create (
00819                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00820                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00821                 ptr< ss_compound_stmt > a__ss_statement__parent,
00822                 ptr< ss_sp > a__ss_statement__psp,
00823                 ptr< ss_sp > a__ss_statement__nsp,
00824                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00825                 ptr< ss_compound_stmt > a__ss_breakable_stmt__body,
00826                 ptr< ss_expression > a__ss_breakable_stmt__condition,
00827                 ptr< ::lestes::std::list< srp< ss_case_label > > > a__ss_switch_stmt__case_labels,
00828                 ptr< ss_default_label > a__ss_switch_stmt__default_label);
00829 
00830         
00831 
00832         //! for purposes of dumping
00833         virtual ptr<reflection_list> reflection_get() const;
00834         //! for purposes of dumping
00835         virtual ptr<field_list_list> field_values_get() const;
00836         
00837 protected:
00838         //! Generated constructor for class ss_switch_stmt.
00839         ss_switch_stmt (
00840                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00841                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00842                 ptr< ss_compound_stmt > a__ss_statement__parent,
00843                 ptr< ss_sp > a__ss_statement__psp,
00844                 ptr< ss_sp > a__ss_statement__nsp,
00845                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00846                 ptr< ss_compound_stmt > a__ss_breakable_stmt__body,
00847                 ptr< ss_expression > a__ss_breakable_stmt__condition,
00848                 ptr< ::lestes::std::list< srp< ss_case_label > > > a__ss_switch_stmt__case_labels,
00849                 ptr< ss_default_label > a__ss_switch_stmt__default_label);
00850 
00851         //! Marking routine for class ss_switch_stmt. 
00852         virtual void gc_mark();
00853 
00854 private:
00855         //! All switch branches, except for default.
00856         srp< ::lestes::std::list< srp< ss_case_label > > >  case_labels;
00857         /*! 
00858                 
00859                                         This is the target of case denominated by the keyword "default" in this switch statement
00860                                         break encountered in the program area (which amounts to some
00861                                         nested function block-scopes) "governed by" this ss_breakable_stmt.
00862                         
00863         */
00864         srp< ss_default_label > default_label;
00865         static ptr<reflection_list> reflection;
00866         
00867 }; // ss_switch_stmt
00868 
00869 
00870 //! Base class for iteration statements
00871 class ss_iteration_stmt : public ss_breakable_stmt {
00872 public:
00873         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v ) abstract;
00874         
00875 
00876         //! for purposes of dumping
00877         virtual ptr<reflection_list> reflection_get() const;
00878         //! for purposes of dumping
00879         virtual ptr<field_list_list> field_values_get() const;
00880         
00881 protected:
00882         //! Generated constructor for class ss_iteration_stmt.
00883         ss_iteration_stmt (
00884                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00885                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00886                 ptr< ss_compound_stmt > a__ss_statement__parent,
00887                 ptr< ss_sp > a__ss_statement__psp,
00888                 ptr< ss_sp > a__ss_statement__nsp,
00889                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00890                 ptr< ss_compound_stmt > a__ss_breakable_stmt__body,
00891                 ptr< ss_expression > a__ss_breakable_stmt__condition);
00892 
00893         //! Marking routine for class ss_iteration_stmt. 
00894         virtual void gc_mark();
00895 
00896 private:
00897         static ptr<reflection_list> reflection;
00898         
00899 }; // ss_iteration_stmt
00900 
00901 
00902 //! Class for "do" iteration statement
00903 class ss_do : public ss_iteration_stmt {
00904 public:
00905         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00906         
00907         //! First generated factory method for class ss_do.
00908         static ptr< ss_do > create (
00909                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00910                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00911                 ptr< ss_compound_stmt > a__ss_statement__parent,
00912                 ptr< ss_sp > a__ss_statement__psp,
00913                 ptr< ss_sp > a__ss_statement__nsp,
00914                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00915                 ptr< ss_compound_stmt > a__ss_breakable_stmt__body,
00916                 ptr< ss_expression > a__ss_breakable_stmt__condition);
00917 
00918         
00919 
00920         //! for purposes of dumping
00921         virtual ptr<reflection_list> reflection_get() const;
00922         //! for purposes of dumping
00923         virtual ptr<field_list_list> field_values_get() const;
00924         
00925 protected:
00926         //! Generated constructor for class ss_do.
00927         ss_do (
00928                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00929                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00930                 ptr< ss_compound_stmt > a__ss_statement__parent,
00931                 ptr< ss_sp > a__ss_statement__psp,
00932                 ptr< ss_sp > a__ss_statement__nsp,
00933                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00934                 ptr< ss_compound_stmt > a__ss_breakable_stmt__body,
00935                 ptr< ss_expression > a__ss_breakable_stmt__condition);
00936 
00937         //! Marking routine for class ss_do. 
00938         virtual void gc_mark();
00939 
00940 private:
00941         static ptr<reflection_list> reflection;
00942         
00943 }; // ss_do
00944 
00945 
00946 //! Class for "while" iteration statement
00947 class ss_while : public ss_iteration_stmt {
00948 public:
00949         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
00950         
00951         //! First generated factory method for class ss_while.
00952         static ptr< ss_while > create (
00953                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00954                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00955                 ptr< ss_compound_stmt > a__ss_statement__parent,
00956                 ptr< ss_sp > a__ss_statement__psp,
00957                 ptr< ss_sp > a__ss_statement__nsp,
00958                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00959                 ptr< ss_compound_stmt > a__ss_breakable_stmt__body,
00960                 ptr< ss_expression > a__ss_breakable_stmt__condition);
00961 
00962         
00963 
00964         //! for purposes of dumping
00965         virtual ptr<reflection_list> reflection_get() const;
00966         //! for purposes of dumping
00967         virtual ptr<field_list_list> field_values_get() const;
00968         
00969 protected:
00970         //! Generated constructor for class ss_while.
00971         ss_while (
00972                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
00973                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
00974                 ptr< ss_compound_stmt > a__ss_statement__parent,
00975                 ptr< ss_sp > a__ss_statement__psp,
00976                 ptr< ss_sp > a__ss_statement__nsp,
00977                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
00978                 ptr< ss_compound_stmt > a__ss_breakable_stmt__body,
00979                 ptr< ss_expression > a__ss_breakable_stmt__condition);
00980 
00981         //! Marking routine for class ss_while. 
00982         virtual void gc_mark();
00983 
00984 private:
00985         static ptr<reflection_list> reflection;
00986         
00987 }; // ss_while
00988 
00989 
00990 /*! \brief Class for "for" iteration statement
00991 
00992 
00993                                 The field "iteration" is not checked for non-NULLness,
00994                                 since the iteration expression is optional.
00995                         
00996 */
00997 class ss_for : public ss_iteration_stmt {
00998 public:
00999         //! The method iteration_get returns the value of the field ss_for::iteration.
01000         ptr< ss_expr_stmt > iteration_get() const;
01001 
01002         //! The method iteration_set sets the field ss_for::iteration to the given value.
01003         void iteration_set(const ptr< ss_expr_stmt > &);
01004 
01005         virtual void accept_ss_statement_visitor( ptr< ss_statement_visitor > v );
01006         
01007         //! First generated factory method for class ss_for.
01008         static ptr< ss_for > create (
01009                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
01010                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
01011                 ptr< ss_compound_stmt > a__ss_statement__parent,
01012                 ptr< ss_sp > a__ss_statement__psp,
01013                 ptr< ss_sp > a__ss_statement__nsp,
01014                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
01015                 ptr< ss_compound_stmt > a__ss_breakable_stmt__body,
01016                 ptr< ss_expression > a__ss_breakable_stmt__condition,
01017                 ptr< ss_expr_stmt > a__ss_for__iteration);
01018 
01019         
01020 
01021         //! for purposes of dumping
01022         virtual ptr<reflection_list> reflection_get() const;
01023         //! for purposes of dumping
01024         virtual ptr<field_list_list> field_values_get() const;
01025         
01026 protected:
01027         //! Generated constructor for class ss_for.
01028         ss_for (
01029                 ptr< ::lestes::std::source_location > a__ss_base_with_location__location,
01030                 ptr< ::lestes::std::list< srp< ss_label > > > a__ss_statement__labels,
01031                 ptr< ss_compound_stmt > a__ss_statement__parent,
01032                 ptr< ss_sp > a__ss_statement__psp,
01033                 ptr< ss_sp > a__ss_statement__nsp,
01034                 ptr< ::lestes::std::list< srp< ss_sp > > > a__ss_statement__sequence_points,
01035                 ptr< ss_compound_stmt > a__ss_breakable_stmt__body,
01036                 ptr< ss_expression > a__ss_breakable_stmt__condition,
01037                 ptr< ss_expr_stmt > a__ss_for__iteration);
01038 
01039         //! Marking routine for class ss_for. 
01040         virtual void gc_mark();
01041 
01042 private:
01043         srp< ss_expr_stmt > iteration;
01044         static ptr<reflection_list> reflection;
01045         
01046 }; // ss_for
01047 
01048 
01049 end_package(sem);
01050 end_package(cplus);
01051 end_package(lang);
01052 end_package(lestes);
01053 
01054 package(lestes);
01055 package(std);
01056 specialize_objectize_for_enum( ::lestes::lang::cplus::sem::ss_compound_stmt::behavior_type );
01057 specialize_objectize_for_enum( ::lestes::lang::cplus::sem::ss_decl_stmt::initializer_kind_enum );
01058 end_package(std);
01059 end_package(lestes);
01060 
01061 #endif // lestes__lang__cplus__sem__ss_statement_g_hh__included

Generated on Mon Feb 12 18:27:08 2007 for lestes by doxygen 1.5.1-20070107