23 #ifndef _SHARED_MAP_HPP_
24 #define _SHARED_MAP_HPP_
28 #include <boost/shared_ptr.hpp>
38 class _Pr = std::less<keyT>,
39 class _Alloc = std::allocator<std::pair<const keyT, valueT> > >
44 typedef std::map<keyT, valueT, _Pr, _Alloc>
BaseType;
53 typedef typename BaseType::pointer
pointer;
63 boost::shared_ptr<BaseType>
_base;
78 for (; _First != _Last; ++_First)
87 for (; _First != _Last; ++_First)
96 for (; _First != _Last; ++_First)
104 {
return _base->get_allocator();}
108 {
return _base->begin();}
112 {
return _base->begin();}
116 {
return _base->end();}
120 {
return _base->end();}
124 {
return _base->rbegin();}
128 {
return _base->rbegin();}
132 {
return _base->rend();}
136 {
return _base->rend();}
152 {
return _base->count(x);}
156 {
return _base->empty();}
160 {
return _base->equal_range(x);}
164 {
return _base->equal_range(x);}
168 {
_base->erase(position);}
172 {
_base->erase(start, finish);}
176 {
return _base->erase(x);}
180 {
return _base->find(x);}
184 {
return _base->find(x);}
188 {
return _base->insert(x);}
192 {
return _base->insert(position, x);}
195 template <
class InputIterator>
196 void insert(InputIterator start, InputIterator finish)
197 {
_base->insert(start, finish);}
201 {
return _base->key_comp();}
205 {
return _base->lower_bound(x);}
209 {
return _base->lower_bound(x);}
213 {
return _base->max_size();}
217 {
return _base->size();}
225 {
return _base->upper_bound(x);}
229 {
return _base->upper_bound(x);}
233 {
return _base->value_comp();}
240 #endif // _SHARED_MAP_HPP_