#include <FastMultiSet.h>
|
typedef KeyType | key_type |
| for set concept, value_type is also key_type
|
|
typedef KeyType | value_type |
| for set concept, key_type is also value_type
|
|
|
typedef Compare1 | key_compare1 |
|
typedef Compare2 | key_compare2 |
|
typedef multiset< key_type,
key_compare1 > | base_type |
|
typedef map< key_type,
typename base_type::iterator,
key_compare2 > | map_type |
|
typedef map_type::value_type | map_value_type |
|
typedef base_type::reference | reference |
|
typedef base_type::const_reference | const_reference |
|
typedef base_type::pointer | pointer |
|
typedef base_type::const_pointer | const_pointer |
|
typedef base_type::iterator | iterator |
|
typedef base_type::const_iterator | const_iterator |
|
typedef base_type::reverse_iterator | reverse_iterator |
|
typedef
base_type::const_reverse_iterator | const_reverse_iterator |
|
typedef base_type::difference_type | difference_type |
|
typedef base_type::size_type | size_type |
|
|
| FastMultiSet (key_compare1 const &comp1=key_compare1(), key_compare2 const &comp2=key_compare2()) |
| constructor More...
|
|
| FastMultiSet (FastMultiSet const &rhs) |
| copy constructor More...
|
|
virtual iterator | insert (key_type const &val) |
| insert value More...
|
|
virtual iterator | insert (iterator position, key_type const &val) |
| insert value with hint of position More...
|
|
template<typename InputIterator > |
void | insert (InputIterator first, InputIterator last) |
| hide/disable methods in base class More...
|
|
virtual size_type | erase (key_type const &val) |
| erase value More...
|
|
void | erase (iterator position) |
| hide/disable methods in base class More...
|
|
void | erase (iterator first, iterator last) |
| hide/disable methods in base class More...
|
|
virtual iterator | update (key_type const &val) |
| update value, the value is changed which means its position is not correct in the container More...
|
|
virtual size_type | count (key_type const &val) const |
| use m_map.count rather than multiset::count to have faster access More...
|
|
virtual iterator | find (key_type const &val) const |
| use m_map.find rather than std::multiset::find to have faster access More...
|
|
void | print (std::ostream &os) const |
| print object More...
|
|
|
map_type | m_map |
| internal map
|
|
template<typename KeyType, typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
class limbo::containers::FastMultiSet< KeyType, Compare1, Compare2 >
- Template Parameters
-
KeyType,type | of keys for comparison, also the type of values in the set |
Compare1,1st | level compare type, control multiset |
Compare2,2nd | level compare type, control map |
Definition at line 53 of file FastMultiSet.h.
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
constructor
- Parameters
-
comp1 | first level compare function object |
comp2 | second level compare function object |
Definition at line 82 of file FastMultiSet.h.
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
use m_map.count rather than multiset::count to have faster access
- Parameters
-
- Returns
- number of values
Definition at line 166 of file FastMultiSet.h.
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
erase value
- Parameters
-
- Returns
- number of values erased, always 0 or 1
Definition at line 132 of file FastMultiSet.h.
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
hide/disable methods in base class
- Parameters
-
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
hide/disable methods in base class
- Parameters
-
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
use m_map.find rather than std::multiset::find to have faster access
- Parameters
-
- Returns
- the iterator to the value
Definition at line 173 of file FastMultiSet.h.
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
insert value
- Parameters
-
- Returns
- iterator to the value
Definition at line 102 of file FastMultiSet.h.
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
insert value with hint of position
- Parameters
-
position | |
val | value to insert |
- Returns
- iterator to the value
Definition at line 115 of file FastMultiSet.h.
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
template<typename InputIterator >
hide/disable methods in base class
- Parameters
-
first | begin iterator |
last | end iterator |
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
update value, the value is changed which means its position is not correct in the container
- Parameters
-
val | updated value, but it must remain the same in the for Compare2 |
- Returns
- iterator to the value
Definition at line 150 of file FastMultiSet.h.
template<typename KeyType , typename Compare1 = less<KeyType>, typename Compare2 = less<KeyType>>
std::ostream& operator<< |
( |
std::ostream & |
os, |
|
|
FastMultiSet< KeyType, Compare1, Compare2 > const & |
rhs |
|
) |
| |
|
friend |
print object
- Parameters
-
- Returns
- reference to the output stream
Definition at line 200 of file FastMultiSet.h.
The documentation for this class was generated from the following file:
- /Users/yibolin/Documents/Projects/Limbo/limbo/containers/FastMultiSet.h