Class extending the map class from the standard library. Original reason is to allow printing of the container with overloaded operator <<.
More...
|
| map ()=default |
|
| map (const map &other)=default |
|
| map (map &&other)=default |
|
map & | operator= (map &&other)=default |
|
map & | operator= (const map &other)=default |
|
template<class Iterator > |
| map (const ext::iterator_range< Iterator > &range) |
|
std::pair< iterator, bool > | insert (const T &key, const R &value) |
| Insert variant with explicit key and value parameters. More...
|
|
std::pair< iterator, bool > | insert (const T &key, R &&value) |
| Insert variant with explicit key and value parameters. More...
|
|
std::pair< iterator, bool > | insert (T &&key, const R &value) |
| Insert variant with explicit key and value parameters. More...
|
|
std::pair< iterator, bool > | insert (T &&key, R &&value) |
| Insert variant with explicit key and value parameters. More...
|
|
R & | at (const T &key, R &defaultValue) |
|
const R & | at (const T &key, const R &defaultValue) const |
|
auto | begin () & |
| Inherited behavior of begin for non-const instance. More...
|
|
auto | begin () const & |
| Inherited behavior of begin for const instance. More...
|
|
auto | begin () && |
| New variant of begin for rvalues. More...
|
|
auto | end () & |
| Inherited behavior of end for non-const instance. More...
|
|
auto | end () const & |
| Inherited behavior of end for const instance. More...
|
|
auto | end () && |
| New variant of end for rvalues. More...
|
|
auto | range () & |
| Make range of non-const begin to end iterators. More...
|
|
auto | range () const & |
| Make range of non-const begin to end iterators. More...
|
|
auto | range () && |
| Make range of move begin to end iterators. More...
|
|
template<class K > |
auto | equal_range (K &&key) const & |
| Make range of elements with key equal to the key . More...
|
|
template<class K > |
auto | equal_range (K &&key) & |
| Make range of elements with key equal to the key . More...
|
|
template<class K > |
auto | equal_range (K &&key) && |
| Make range of elements with key equal to the key . More...
|
|
template<class K > |
size_t | erase (const K &key) |
| Erase by key of arbitrary type. More...
|
|
template<class K > |
R & | operator[] (K &&key) |
| Retrieve value by key of arbitrary type. More...
|
|
template<typename T, typename R, typename Cmp = std::less < >, typename Alloc = std::allocator < std::pair < const T, R > >>
class ext::map< T, R, Cmp, Alloc >
Class extending the map class from the standard library. Original reason is to allow printing of the container with overloaded operator <<.
The class mimics the behavior of the map from the standatd library.
- Template Parameters
-
T | the type of keys inside the map |
R | the type of values inside the map |
Cmp | the comparator type used to order keys |
Alloc | the allocator of values of type T |
template<typename T , typename R , typename Cmp = std::less < >, typename Alloc = std::allocator < std::pair < const T, R > >>
template<class Iterator >
Constructor from range of values.
- Template Parameters
-
Iterator | the type of range iterator |
- Parameters
-