A generic, implicitly shared map. More...
#include <tmap.h>
Public Member Functions | |
Map () | |
Map (const Map< Key, T > &m) | |
Map (std::initializer_list< std::pair< const Key, T > > init) | |
~Map () | |
Iterator | begin () |
ConstIterator | begin () const |
ConstIterator | cbegin () const |
Iterator | end () |
ConstIterator | end () const |
ConstIterator | cend () const |
Map< Key, T > & | insert (const Key &key, const T &value) |
Map< Key, T > & | clear () |
unsigned int | size () const |
bool | isEmpty () const |
Iterator | find (const Key &key) |
ConstIterator | find (const Key &key) const |
bool | contains (const Key &key) const |
Map< Key, T > & | erase (Iterator it) |
Map< Key, T > & | erase (const Key &key) |
T | value (const Key &key, const T &defaultValue=T()) const |
const T & | operator[] (const Key &key) const |
T & | operator[] (const Key &key) |
Map< Key, T > & | operator= (const Map< Key, T > &m) |
Map< Key, T > & | operator= (std::initializer_list< std::pair< const Key, T > > init) |
void | swap (Map< Key, T > &m) noexcept |
bool | operator== (const Map< Key, T > &m) const |
bool | operator!= (const Map< Key, T > &m) const |
Protected Member Functions | |
void | detach () |
A generic, implicitly shared map.
This implements a standard map container that associates a key with a value and has fast key-based lookups. This map is also implicitly shared making it suitable for pass-by-value usage.
Make a shallow, implicitly shared, copy of m. Because this is implicitly shared, this method is lightweight and suitable for pass-by-value usage.
Constructs a Map with the contents of the braced initializer list.
Returns an STL style iterator to the beginning of the map. See std::map::iterator
for the semantics.
Returns an STL style iterator to the beginning of the map. See std::map::const_iterator
for the semantics.
Returns an STL style iterator to the beginning of the map. See std::map::const_iterator
for the semantics.
Returns an STL style iterator to the end of the map. See std::map::const_iterator
for the semantics.
Removes all of the elements from the map. This however will not delete pointers if the mapped type is a pointer type.
Returns true
if the map contains an item for key.
If this Map is being shared via implicit sharing, do a deep copy of the data and separate from the shared members. This should be called by all non-const subclass members without Iterator parameters.
Returns an STL style iterator to the end of the map. See std::map::iterator
for the semantics.
Returns an STL style iterator to the end of the map. See std::map::const_iterator
for the semantics.
Erase the item with key from the map.
Erase the item at it from the map.
Find the first occurrence of key.
Find the first occurrence of key.
Inserts value under key in the map. If a value for key already exists it will be overwritten.
Returns true
if the map is empty.
Compares this map with m and returns true
if the maps differ.
Make a shallow, implicitly shared, copy of m. Because this is implicitly shared, this method is lightweight and suitable for pass-by-value usage.
Map< Key, T > & TagLib::Map< Key, T >::operator= | ( | std::initializer_list< std::pair< const Key, T > > | init | ) |
Replace the contents of the map with those of the braced initializer list
Compares this map with m and returns true
if all of the elements are the same.
Returns a reference to the value associated with key.
Returns a reference to the value associated with key.
The number of elements in the map.
Exchanges the content of this map with the content of m.
Returns the value associated with key.
If the map does not contain key, it returns defaultValue. If no defaultValue is specified, it returns a default-constructed value.