1 #ifndef PROTON_CPP_CACHED_MAP_H 2 #define PROTON_CPP_CACHED_MAP_H 25 #include "./config.hpp" 26 #include "./export.hpp" 27 #include "./pn_unique_ptr.hpp" 40 template <
class key_type,
class value_type>
46 template <
class K,
class V>
49 template <
class K,
class V>
51 template <
class K,
class V>
54 template <
class key_type,
class value_type>
55 class PN_CPP_CLASS_EXTERN cached_map {
56 typedef map_type_impl<key_type, value_type> map_type;
59 PN_CPP_EXTERN cached_map();
60 PN_CPP_EXTERN cached_map(
const cached_map& cm);
61 PN_CPP_EXTERN cached_map& operator=(
const cached_map& cm);
62 #if PN_CPP_HAS_RVALUE_REFERENCES 63 PN_CPP_EXTERN cached_map(cached_map&&);
64 PN_CPP_EXTERN cached_map& operator=(cached_map&&);
66 PN_CPP_EXTERN ~cached_map();
68 PN_CPP_EXTERN value_type
get(
const key_type& k)
const;
69 PN_CPP_EXTERN
void put(
const key_type& k,
const value_type& v);
70 PN_CPP_EXTERN
size_t erase(
const key_type& k);
71 PN_CPP_EXTERN
bool exists(
const key_type& k)
const;
72 PN_CPP_EXTERN
size_t size();
73 PN_CPP_EXTERN
void clear();
74 PN_CPP_EXTERN
bool empty();
78 pn_unique_ptr<map_type> map_;
80 void make_cached_map();
91 #endif // PROTON_CPP_CACHED_MAP_H Experimental - Stream-like encoder from C++ values to AMQP bytes.
Definition: encoder.hpp:47
internal::enable_if< internal::is_unknown_integer< T >::value, decoder & >::type operator>>(decoder &d, T &i)
operator>> for integer types that are not covered by the standard overrides.
Definition: decoder.hpp:203
The main Proton namespace.
Definition: annotation_key.hpp:30
Experimental - Stream-like decoder from AMQP bytes to C++ values.
Definition: decoder.hpp:53