00001
00002
00003 #ifndef lestes__msg__as_id_to_lstring_g_hh__included
00004 #define lestes__msg__as_id_to_lstring_g_hh__included
00005
00006 #include <lestes/common.hh>
00007 #include <lestes/lang/cplus/sem/as_id_visitor.v.g.hh>
00008
00009 #include <lestes/std/objectize_macros.hh>
00010 package(lestes);
00011 package(lang);
00012 package(cplus);
00013 package(sem);
00014 class as_id_visitor;
00015 end_package(sem);
00016 end_package(cplus);
00017 end_package(lang);
00018 end_package(lestes);
00019
00020 package(lestes);
00021 package(msg);
00022
00023
00024 class as_id_to_lstring;
00025
00026
00027 class as_id_to_lstring : public ::lestes::lang::cplus::sem::as_id_visitor {
00028 public:
00029
00030 lstring result_get() const;
00031
00032
00033 void result_set(lstring);
00034
00035 virtual void visit_as_template_id(ptr< ::lestes::lang::cplus::sem::as_template_id > );
00036
00037 virtual void visit_as_identifier(ptr< ::lestes::lang::cplus::sem::as_identifier > );
00038
00039 virtual void visit_as_destructor_id_token(ptr< ::lestes::lang::cplus::sem::as_destructor_id_token > );
00040
00041 virtual void visit_as_destructor_id_template(ptr< ::lestes::lang::cplus::sem::as_destructor_id_template > );
00042
00043 virtual void visit_as_constructor_id(ptr< ::lestes::lang::cplus::sem::as_constructor_id > );
00044
00045 virtual void visit_as_op_function_id(ptr< ::lestes::lang::cplus::sem::as_op_function_id > );
00046
00047 virtual void visit_as_conv_function_id(ptr< ::lestes::lang::cplus::sem::as_conv_function_id > );
00048
00049 virtual void visit_as_empty_id(ptr< ::lestes::lang::cplus::sem::as_empty_id > );
00050
00051 virtual void visit_as_global_namespace_fake_id(ptr< ::lestes::lang::cplus::sem::as_global_namespace_fake_id > );
00052
00053
00054
00055 static ptr< as_id_to_lstring > instance ();
00056
00057
00058
00059 lstring process( const ptr< ::lestes::lang::cplus::sem::as_id > & );
00060
00061
00062 virtual ptr<reflection_list> reflection_get() const;
00063
00064 virtual ptr<field_list_list> field_values_get() const;
00065
00066 protected:
00067
00068 as_id_to_lstring (
00069 lstring a__as_id_to_lstring__result);
00070
00071
00072 virtual void gc_mark();
00073
00074 private:
00075 lstring result;
00076 static ptr<reflection_list> reflection;
00077 static ptr<as_id_to_lstring> the_instance;
00078
00079 };
00080
00081
00082 end_package(msg);
00083 end_package(lestes);
00084
00085 #endif // lestes__msg__as_id_to_lstring_g_hh__included