00001 // This file is automatically generated, do not edit. 00002 00003 #include <lestes/md/types/tm_data_type_base.g.hh> 00004 #include <lestes/lang/cplus/sem/ss_type.g.hh> 00005 #include <lestes/lang/cplus/sem/ss_misc.g.hh> 00006 #include <lestes/lang/cplus/sem/ss_declaration.g.hh> 00007 #include <lestes/lang/cplus/sem/ss_type_builtin.g.hh> 00008 #include <lestes/lang/cplus/sem/ss_expression.g.hh> 00009 #include <lestes/lang/cplus/sem/ss_expr_binary_op.g.hh> 00010 #include <lestes/lang/cplus/sem/ss_expr_unary_op.g.hh> 00011 #include <lestes/lang/cplus/sem/ss_expr_funcall.g.hh> 00012 #include <lestes/lang/cplus/sem/ss_statement.g.hh> 00013 #include <lestes/backend_v2/intercode/pi.g.hh> 00014 00015 #include <lestes/std/list.hh> 00016 #include <lestes/std/pair.hh> 00017 #include <lestes/std/reflect.hh> 00018 00019 #include <lestes/lang/cplus/sem/visitor.v.g.hh> 00020 00021 package(lestes); 00022 package(lang); 00023 package(cplus); 00024 package(sem); 00025 00026 00027 // ------------- Class ss_expression_visitor follows. ------------- 00028 00029 /*! 00030 Generated constructor for class ss_expression_visitor. 00031 \author lsg 00032 */ 00033 ss_expression_visitor::ss_expression_visitor () 00034 : ::lestes::std::visitor_base() 00035 {} 00036 00037 ptr< object::reflection_list > ss_expression_visitor::reflection_get() const 00038 { 00039 if (!reflection) { 00040 typedef class_reflection::field_metadata md; 00041 typedef class_reflection::field_metadata_list mdlist; 00042 ptr<mdlist> mdl = mdlist::create(); 00043 reflection = reflection_list::create( ::lestes::std::visitor_base::reflection_get() ); 00044 reflection->push_back( class_reflection::create( "ss_expression_visitor", mdl ) ); 00045 } 00046 return reflection; 00047 } 00048 00049 ptr< object::field_list_list > ss_expression_visitor::field_values_get() const 00050 { 00051 ptr < field_list_list > result = ::lestes::std::visitor_base::field_values_get(); 00052 return result; 00053 } 00054 00055 00056 /*! 00057 Marking routine is used for garbage collection. 00058 \author lsg 00059 */ 00060 void ss_expression_visitor::gc_mark() 00061 { 00062 ::lestes::std::visitor_base::gc_mark(); 00063 } 00064 00065 // End of class ss_expression_visitor. 00066 00067 // ------------- Class ss_expr2destination_base follows. ------------- 00068 00069 /*! 00070 Generated constructor for class ss_expr2destination_base. 00071 \author lsg 00072 */ 00073 ss_expr2destination_base::ss_expr2destination_base () 00074 : ss_expression_visitor() 00075 {} 00076 00077 ptr< object::reflection_list > ss_expr2destination_base::reflection_get() const 00078 { 00079 if (!reflection) { 00080 typedef class_reflection::field_metadata md; 00081 typedef class_reflection::field_metadata_list mdlist; 00082 ptr<mdlist> mdl = mdlist::create(); 00083 reflection = reflection_list::create( ss_expression_visitor::reflection_get() ); 00084 reflection->push_back( class_reflection::create( "ss_expr2destination_base", mdl ) ); 00085 } 00086 return reflection; 00087 } 00088 00089 ptr< object::field_list_list > ss_expr2destination_base::field_values_get() const 00090 { 00091 ptr < field_list_list > result = ss_expression_visitor::field_values_get(); 00092 return result; 00093 } 00094 00095 00096 /*! 00097 Marking routine is used for garbage collection. 00098 \author lsg 00099 */ 00100 void ss_expr2destination_base::gc_mark() 00101 { 00102 ss_expression_visitor::gc_mark(); 00103 } 00104 00105 // End of class ss_expr2destination_base. 00106 00107 // ------------- Class ss_statement_visitor follows. ------------- 00108 00109 /*! 00110 Generated constructor for class ss_statement_visitor. 00111 \author lsg 00112 */ 00113 ss_statement_visitor::ss_statement_visitor () 00114 : ::lestes::std::visitor_base() 00115 {} 00116 00117 ptr< object::reflection_list > ss_statement_visitor::reflection_get() const 00118 { 00119 if (!reflection) { 00120 typedef class_reflection::field_metadata md; 00121 typedef class_reflection::field_metadata_list mdlist; 00122 ptr<mdlist> mdl = mdlist::create(); 00123 reflection = reflection_list::create( ::lestes::std::visitor_base::reflection_get() ); 00124 reflection->push_back( class_reflection::create( "ss_statement_visitor", mdl ) ); 00125 } 00126 return reflection; 00127 } 00128 00129 ptr< object::field_list_list > ss_statement_visitor::field_values_get() const 00130 { 00131 ptr < field_list_list > result = ::lestes::std::visitor_base::field_values_get(); 00132 return result; 00133 } 00134 00135 00136 /*! 00137 Marking routine is used for garbage collection. 00138 \author lsg 00139 */ 00140 void ss_statement_visitor::gc_mark() 00141 { 00142 ::lestes::std::visitor_base::gc_mark(); 00143 } 00144 00145 // End of class ss_statement_visitor. 00146 00147 // ------------- Class ss_statement_visitor_cut_at_top follows. ------------- 00148 00149 /*! 00150 Generated constructor for class ss_statement_visitor_cut_at_top. 00151 \author lsg 00152 */ 00153 ss_statement_visitor_cut_at_top::ss_statement_visitor_cut_at_top () 00154 : ss_statement_visitor() 00155 {} 00156 00157 ptr< object::reflection_list > ss_statement_visitor_cut_at_top::reflection_get() const 00158 { 00159 if (!reflection) { 00160 typedef class_reflection::field_metadata md; 00161 typedef class_reflection::field_metadata_list mdlist; 00162 ptr<mdlist> mdl = mdlist::create(); 00163 reflection = reflection_list::create( ss_statement_visitor::reflection_get() ); 00164 reflection->push_back( class_reflection::create( "ss_statement_visitor_cut_at_top", mdl ) ); 00165 } 00166 return reflection; 00167 } 00168 00169 ptr< object::field_list_list > ss_statement_visitor_cut_at_top::field_values_get() const 00170 { 00171 ptr < field_list_list > result = ss_statement_visitor::field_values_get(); 00172 return result; 00173 } 00174 00175 00176 /*! 00177 Marking routine is used for garbage collection. 00178 \author lsg 00179 */ 00180 void ss_statement_visitor_cut_at_top::gc_mark() 00181 { 00182 ss_statement_visitor::gc_mark(); 00183 } 00184 00185 // End of class ss_statement_visitor_cut_at_top. 00186 00187 // ------------- Class ss_literal_info_visitor follows. ------------- 00188 00189 /*! 00190 Generated constructor for class ss_literal_info_visitor. 00191 \author lsg 00192 */ 00193 ss_literal_info_visitor::ss_literal_info_visitor () 00194 : ::lestes::std::visitor_base() 00195 {} 00196 00197 ptr< object::reflection_list > ss_literal_info_visitor::reflection_get() const 00198 { 00199 if (!reflection) { 00200 typedef class_reflection::field_metadata md; 00201 typedef class_reflection::field_metadata_list mdlist; 00202 ptr<mdlist> mdl = mdlist::create(); 00203 reflection = reflection_list::create( ::lestes::std::visitor_base::reflection_get() ); 00204 reflection->push_back( class_reflection::create( "ss_literal_info_visitor", mdl ) ); 00205 } 00206 return reflection; 00207 } 00208 00209 ptr< object::field_list_list > ss_literal_info_visitor::field_values_get() const 00210 { 00211 ptr < field_list_list > result = ::lestes::std::visitor_base::field_values_get(); 00212 return result; 00213 } 00214 00215 00216 /*! 00217 Marking routine is used for garbage collection. 00218 \author lsg 00219 */ 00220 void ss_literal_info_visitor::gc_mark() 00221 { 00222 ::lestes::std::visitor_base::gc_mark(); 00223 } 00224 00225 // End of class ss_literal_info_visitor. 00226 00227 00228 // static data members follow 00229 ptr<object::reflection_list> ss_expression_visitor::reflection = reflection; 00230 ptr<object::reflection_list> ss_expr2destination_base::reflection = reflection; 00231 ptr<object::reflection_list> ss_statement_visitor::reflection = reflection; 00232 ptr<object::reflection_list> ss_statement_visitor_cut_at_top::reflection = reflection; 00233 ptr<object::reflection_list> ss_literal_info_visitor::reflection = reflection; 00234 00235 end_package(sem); 00236 end_package(cplus); 00237 end_package(lang); 00238 end_package(lestes); 00239
1.5.1-20070107