00001
00002
00003 #ifndef lestes__md__literals__literal_loader_base_g_hh__included
00004 #define lestes__md__literals__literal_loader_base_g_hh__included
00005
00006 #include <lestes/std/map.hh>
00007 #include <lestes/md/common.hh>
00008
00009 #include <lestes/std/objectize_macros.hh>
00010 package(lestes);
00011 package(std);
00012 class object;
00013 end_package(std);
00014 end_package(lestes);
00015
00016 package(lestes);
00017 package(backend_v2);
00018 package(intercode);
00019 class pi_lit;
00020 end_package(intercode);
00021 end_package(backend_v2);
00022 end_package(lestes);
00023
00024 package(lestes);
00025 package(backend_v2);
00026 package(intercode);
00027 class pi_pi;
00028 end_package(intercode);
00029 end_package(backend_v2);
00030 end_package(lestes);
00031
00032 package(lestes);
00033 package(backend_v2);
00034 package(intercode);
00035 class pi_sp;
00036 end_package(intercode);
00037 end_package(backend_v2);
00038 end_package(lestes);
00039
00040 package(lestes);
00041 package(backend_v2);
00042 package(intercode);
00043 class pi_preg;
00044 end_package(intercode);
00045 end_package(backend_v2);
00046 end_package(lestes);
00047
00048 package(lestes);
00049 package(md);
00050 package(literals);
00051
00052
00053 class literal_loader_base;
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066 class literal_loader_base : public ::lestes::std::object {
00067 public:
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080 virtual ptr<list<srp< ::lestes::backend_v2::intercode::pi_pi> > > generate_load(ptr< ::lestes::backend_v2::intercode::pi_preg > preg, ptr< ::lestes::backend_v2::intercode::pi_lit > lit, ptr< ::lestes::backend_v2::intercode::pi_sp > psp, ptr< ::lestes::backend_v2::intercode::pi_sp > nsp) abstract;
00081
00082
00083
00084
00085 virtual ptr<reflection_list> reflection_get() const;
00086
00087 virtual ptr<field_list_list> field_values_get() const;
00088
00089 protected:
00090
00091 literal_loader_base (
00092 );
00093
00094
00095 virtual void gc_mark();
00096
00097 private:
00098 static ptr<reflection_list> reflection;
00099
00100 };
00101
00102
00103 end_package(literals);
00104 end_package(md);
00105 end_package(lestes);
00106
00107 #endif // lestes__md__literals__literal_loader_base_g_hh__included