Fw/DataStructures/docs/MapConstIterator.md
MapConstIterator is a class for performing immutable iteration over a map.
The iteration order is not specified.
MapConstIterator has the following template parameters:
| Kind | Name | Purpose |
|---|---|---|
typename | K | The type of a key in the map |
typename | V | The type of a value in the map |
MapConstIterator defines the following public types:
| Name | Definition |
|---|---|
EntryBase | Alias of MapEntryBase<K, V> |
MapConstIterator provides the following constructors and destructors:
One constructor for each map implementation. The map implementations use these constructors to provide iterators.
A copy constructor.
A destructor.
MapConstIterator provides the following member functions.
Defined as = default.
bool operator==(const MapConstIterator& it)
Compare two MapConstIterator instances for equality.
If the implementations differ, then return false.
Otherwise check whether the implementations have equal values.
bool operator!=(const MapConstIterator& it)
Return the negation of operator=.
MapConstIterator& operator++()
MapConstIterator& operator++(int)
Increment the iterator.
bool isInRange() const
Check whether the iterator is in range.
It is a runtime error to attempt to access a map entry through an iterator
for which isInRange evaluates to false.
In this case an assertion failure will occur.
const EntryBase& operator*() const
Return a const reference to the EntryBase object
pointed to by the iterator.
If the iterator is not in range for the map, an assertion failure will occur.
It is not recommended to use this operation
after updating the map that the iterator points to.
const EntryBase* operator->() const
Return a pointer to the const EntryBase object
pointed to by the iterator.
If the iterator is not in range for the map, an assertion failure will occur.
It is not recommended to use this operation
after updating the map that the iterator points to.