public: \
template<class t_storage> \
bool store( t_storage& st, typename t_storage::hsection hparent_section = nullptr) const\
{\
return serialize_map<true>(*this, st, hparent_section);\
}\
template<class t_storage> \
bool _load( t_storage& stg, typename t_storage::hsection hparent_section = nullptr)\
{\
return serialize_map<false>(*this, stg, hparent_section);\
}\
template<class t_storage> \
bool load( t_storage& stg,
typename t_storage::hsection hparent_section =
nullptr)\
{\
try{\
return serialize_map<false>(*this, stg, hparent_section);\
}\
catch(const std::exception& err) \
{ \
(void)(err); \
LOG_ERROR("Exception on unserializing: " << err.what());\
return false; \
}\
}\
template<bool is_store, class this_type, class t_storage> \
static bool serialize_map(this_type& this_ref, t_storage& stg, typename t_storage::hsection hparent_section) \
{
void load(Archive &a, std::unordered_map< h_key, hval > &x, const boost::serialization::version_type ver)
43#define BEGIN_KV_SERIALIZE_MAP() \
44public: \
45 template<class t_storage> \
46 bool store( t_storage& st, typename t_storage::hsection hparent_section = nullptr) const\
47 {\
48 return serialize_map<true>(*this, st, hparent_section);\
49 }\
50 template<class t_storage> \
51 bool _load( t_storage& stg, typename t_storage::hsection hparent_section = nullptr)\
52 {\
53 return serialize_map<false>(*this, stg, hparent_section);\
54 }\
55 template<class t_storage> \
56 bool load( t_storage& stg, typename t_storage::hsection hparent_section = nullptr)\
57 {\
58 try{\
59 return serialize_map<false>(*this, stg, hparent_section);\
60 }\
61 catch(const std::exception& err) \
62 { \
63 (void)(err); \
64 LOG_ERROR("Exception on unserializing: " << err.what());\
65 return false; \
66 }\
67 }\
68 template<bool is_store, class this_type, class t_storage> \
69 static bool serialize_map(this_type& this_ref, t_storage& stg, typename t_storage::hsection hparent_section) \
70 {