|
RPNX::DataStructures
Header-only C++ data structures and supporting utilities.
|
Owning type-erased input iterator with equality and ordering. More...
#include <dyn_iterator.hpp>
Public Member Functions | |
| dyn_comparable_input_iter () | |
| Constructs an empty iterator. | |
| template<typename It> | |
| dyn_comparable_input_iter (It it) | |
| Erases and owns a comparable iterator value. | |
| dyn_comparable_input_iter (dyn_comparable_input_iter< V > const &other) | |
| Copies the erased iterator. | |
| dyn_comparable_input_iter (dyn_comparable_input_iter< V > &&other) noexcept | |
| Moves the erased iterator and leaves the source empty. | |
| dyn_comparable_input_iter< V > & | operator= (dyn_comparable_input_iter< V > const &other) |
| Copy-assigns the erased iterator. | |
| dyn_comparable_input_iter< V > & | operator= (dyn_comparable_input_iter< V > &&other) noexcept |
| Move-assigns the erased iterator and leaves the source empty. | |
| V | operator* () const |
| Reads the current element by value. | |
| dyn_comparable_input_iter< V > & | operator++ () |
| Advances the erased iterator. | |
| dyn_comparable_input_iter< V > | operator++ (int) |
| Advances and returns the previous position. | |
| bool | operator< (dyn_comparable_input_iter< V > const &other) const |
| Orders erased iterators. | |
| bool | operator== (dyn_comparable_input_iter< V > const &other) const |
| Compares erased iterators for equality. | |
| bool | operator!= (dyn_comparable_input_iter< V > const &other) const |
| Compares erased iterators for inequality. | |
Owning type-erased input iterator with equality and ordering.
Iterators that erase the same concrete type compare using that type's operators. Empty iterators compare equal; an empty iterator orders before every non-empty iterator. Default-constructed and moved-from instances must not be dereferenced or incremented.
| V | Value type produced by dereference. |
|
inline |
Erases and owns a comparable iterator value.
| It | Concrete iterator type. |
| it | Iterator to store. |
|
inline |
Copies the erased iterator.
| other | Iterator to copy. |
|
inlinenoexcept |
Moves the erased iterator and leaves the source empty.
| other | Iterator to move. |
|
inline |
Compares erased iterators for inequality.
| other | Iterator to compare. |
|
inline |
Reads the current element by value.
|
inline |
Advances the erased iterator.
|
inline |
Advances and returns the previous position.
|
inline |
Orders erased iterators.
| other | Iterator to compare. |
true when this iterator orders first.
|
inlinenoexcept |
Move-assigns the erased iterator and leaves the source empty.
| other | Iterator to move. |
|
inline |
Copy-assigns the erased iterator.
| other | Iterator to copy. |
|
inline |
Compares erased iterators for equality.
| other | Iterator to compare. |
true for equal positions of the same erased type, or for two empty iterators.