00001
00002
00003
00004
00005
00006
00007
00008 #ifndef lestes__backend_v2__workers__literal_inliner_g_hh__included
00009 #define lestes__backend_v2__workers__literal_inliner_g_hh__included
00010
00011 #include <lestes/backend_v2/common.hh>
00012 #include <lestes/backend_v2/workers/worker_base.g.hh>
00013
00014 #include <lestes/std/objectize_macros.hh>
00015 package(lestes);
00016 package(backend_v2);
00017 package(structs);
00018 class func_data;
00019 end_package(structs);
00020 end_package(backend_v2);
00021 end_package(lestes);
00022
00023 package(lestes);
00024 package(backend_v2);
00025 package(intercode);
00026 class ge_pi;
00027 end_package(intercode);
00028 end_package(backend_v2);
00029 end_package(lestes);
00030
00031 package(lestes);
00032 package(backend_v2);
00033 package(workers);
00034
00035
00036 class literal_inliner;
00037
00038
00039
00040 class literal_inliner : public worker_base {
00041 public:
00042 void process();
00043
00044 ptr< ::lestes::backend_v2::structs::func_data > get_result();
00045
00046 bool find_compatible_version(ptr< ::lestes::backend_v2::intercode::ge_pi > ge);
00047
00048
00049
00050 static ptr< literal_inliner > create (
00051 ptr< ::lestes::backend_v2::structs::func_data > a__worker_base__data);
00052
00053
00054
00055
00056 virtual ptr<reflection_list> reflection_get() const;
00057
00058 virtual ptr<field_list_list> field_values_get() const;
00059
00060 protected:
00061
00062 literal_inliner (
00063 ptr< ::lestes::backend_v2::structs::func_data > a__worker_base__data);
00064
00065
00066 virtual void gc_mark();
00067
00068 private:
00069 static ptr<reflection_list> reflection;
00070
00071 };
00072
00073
00074 end_package(workers);
00075 end_package(backend_v2);
00076 end_package(lestes);
00077
00078 #endif // lestes__backend_v2__workers__literal_inliner_g_hh__included