sa_param_declaration.g.hh

Go to the documentation of this file.
00001 // This file is automatically generated, do not edit.
00002 
00003 /*!
00004         \file
00005         \brief Parameter declaration analysis.
00006         Analyser for parameter declarations, converting them to ss_parameter_declaration.
00007                 
00008 */
00009 
00010 #ifndef lestes__lang__cplus__sem__sa_param_declaration_g_hh__included
00011 #define lestes__lang__cplus__sem__sa_param_declaration_g_hh__included
00012 
00013 #include <lestes/common.hh>
00014 #include <lestes/std/list.hh>
00015 
00016 #include <lestes/std/objectize_macros.hh>
00017 package(lestes);
00018 package(lang);
00019 package(cplus);
00020 package(sem);
00021 class as_param_declaration;
00022 end_package(sem);
00023 end_package(cplus);
00024 end_package(lang);
00025 end_package(lestes);
00026 
00027 package(lestes);
00028 package(lang);
00029 package(cplus);
00030 package(sem);
00031 class as_declarator_op2ss_type;
00032 end_package(sem);
00033 end_package(cplus);
00034 end_package(lang);
00035 end_package(lestes);
00036 
00037 package(lestes);
00038 package(lang);
00039 package(cplus);
00040 package(sem);
00041 class ss_type;
00042 end_package(sem);
00043 end_package(cplus);
00044 end_package(lang);
00045 end_package(lestes);
00046 
00047 package(lestes);
00048 package(lang);
00049 package(cplus);
00050 package(sem);
00051 class ss_decl_seq;
00052 end_package(sem);
00053 end_package(cplus);
00054 end_package(lang);
00055 end_package(lestes);
00056 
00057 package(lestes);
00058 package(lang);
00059 package(cplus);
00060 package(sem);
00061 
00062 
00063 class sa_param_declaration;
00064 
00065 
00066 /*! \brief Parameter declaration structural analyser.
00067 
00068 Converts parameter declaration to ss_parameter_declaration or ss_type.
00069 */
00070 class sa_param_declaration : public ::lestes::std::object {
00071 public:
00072         //! The method scope_get returns the value of the field sa_param_declaration::scope.
00073         ptr< ::lestes::lang::cplus::sem::ss_decl_seq > scope_get() const;
00074 
00075         //! The method index_get returns the value of the field sa_param_declaration::index.
00076         ulint index_get() const;
00077 
00078         //! Processes parameter declaration.
00079         void process(ptr< ::lestes::lang::cplus::sem::as_param_declaration > decl);
00080 
00081         
00082         //! First generated factory method for class sa_param_declaration.
00083         static ptr< sa_param_declaration > create (
00084                 ptr< ::lestes::lang::cplus::sem::ss_decl_seq > a__sa_param_declaration__scope,
00085                 ulint a__sa_param_declaration__index);
00086 
00087         //! Second generated factory method for class sa_param_declaration.
00088         static ptr< sa_param_declaration > create (
00089                 ptr< ::lestes::lang::cplus::sem::ss_decl_seq > a__sa_param_declaration__scope);
00090 
00091         
00092 
00093         //! for purposes of dumping
00094         virtual ptr<reflection_list> reflection_get() const;
00095         //! for purposes of dumping
00096         virtual ptr<field_list_list> field_values_get() const;
00097         
00098 protected:
00099         //! Generated constructor for class sa_param_declaration.
00100         sa_param_declaration (
00101                 ptr< ::lestes::lang::cplus::sem::ss_decl_seq > a__sa_param_declaration__scope,
00102                 ulint a__sa_param_declaration__index);
00103 
00104         //! Marking routine for class sa_param_declaration. 
00105         virtual void gc_mark();
00106 
00107 private:
00108         /*! \brief The parameter scope.
00109 
00110         The scope to insert the parameter declarations into.
00111         */
00112         srp< ::lestes::lang::cplus::sem::ss_decl_seq > scope;
00113         /*! \brief Parameter index.
00114 
00115         The index of the next parameter.
00116         */
00117         ulint index;
00118         static ptr<reflection_list> reflection;
00119         
00120 }; // sa_param_declaration
00121 
00122 
00123 end_package(sem);
00124 end_package(cplus);
00125 end_package(lang);
00126 end_package(lestes);
00127 
00128 #endif // lestes__lang__cplus__sem__sa_param_declaration_g_hh__included

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