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