#include <hybridmap.h>
Public Types | |
using | SmallIterator = typename SmallType::Iterator |
using | LargeIterator = typename LargeType::Iterator |
Public Types inherited from HybridMap< K, V, SMALL, LARGE, THRESHOLD, REVERSE_THRESHOLD >::IteratorBase< false > | |
using | SmallIterator = typename std::conditional< CONSTITERATOR, typename SmallType::ConstIterator, typename SmallType::Iterator >::type |
using | LargeIterator = typename std::conditional< CONSTITERATOR, typename LargeType::ConstIterator, typename LargeType::Iterator >::type |
using | CollectionType = typename ConstIf< HybridMap, CONSTITERATOR >::type |
Public Member Functions | |
NonConstIteratorBase () | |
NonConstIteratorBase (const SmallIterator &src) | |
NonConstIteratorBase (const LargeIterator &src) | |
NonConstIteratorBase (const NonConstIteratorBase &src) | |
NonConstIteratorBase (HybridMap &m, Int s) | |
Result< void > | Erase (HybridMap &map, Int eraseCnt=1) |
ResultMem | ChangeKey (HybridMap &map, const K &newKey) |
Public Member Functions inherited from HybridMap< K, V, SMALL, LARGE, THRESHOLD, REVERSE_THRESHOLD >::IteratorBase< false > | |
IteratorBase () | |
IteratorBase (const SmallIterator &src) | |
IteratorBase (const LargeIterator &src) | |
IteratorBase (const IteratorBase &src) | |
IteratorBase (CollectionType &m, Int s) | |
~IteratorBase () | |
void | operator++ () |
void | operator-- () |
operator Bool () const | |
const K & | GetKey () const |
ConstIf< V, CONSTITERATOR >::type & | GetValue () const |
Bool | operator== (const IteratorBase &b) const |
Bool | operator!= (const IteratorBase &b) const |
Private Types | |
using | Super = IteratorBase< false > |
Additional Inherited Members | |
Protected Member Functions inherited from HybridMap< K, V, SMALL, LARGE, THRESHOLD, REVERSE_THRESHOLD >::IteratorBase< false > | |
SmallIterator & | GetSmall () |
const SmallIterator & | GetSmall () const |
LargeIterator & | GetLarge () |
const LargeIterator & | GetLarge () const |
Protected Attributes inherited from HybridMap< K, V, SMALL, LARGE, THRESHOLD, REVERSE_THRESHOLD >::IteratorBase< false > | |
Bool | _small |
std::aligned_union< 0, SmallIterator, LargeIterator >::type | _union [1] |
|
private |
using SmallIterator = typename SmallType::Iterator |
using LargeIterator = typename LargeType::Iterator |
|
explicit |
|
explicit |
NonConstIteratorBase | ( | const NonConstIteratorBase & | src | ) |
NonConstIteratorBase | ( | HybridMap & | m, |
Int | s | ||
) |
Removes eraseCnt
elements from the map starting at the position given by this iterator. Afterwards, this iterator will point to the element behind the last removed element.
[in] | map | Map of this iterator. |
[in] | eraseCnt | Number of elements to remove. |
Modifies the key of the map entry pointed to by this iterator. This operation is only supported if both underlying implementations support it. The new key must be in a range such that this operation doesn't change the order, i.e., it must be above the key of the previous entry and below the key of the next entry.
[in] | map | Map of this iterator. |
[in] | newKey | New value for the key of the current map entry. |