|
Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
|
STL-compatible const iterator adapter for Aleph containers. More...
#include <ah-iterator.H>
Public Types | |
| using | T = typename SetType::Item_Type |
| using | Itor = typename SetType::Iterator |
| using | iterator_category = std::conditional_t< AlephRandomAccessItor< Itor >, std::random_access_iterator_tag, std::forward_iterator_tag > |
| Category is promoted to random-access when the underlying Aleph iterator opts in (see AlephRandomAccessItor); otherwise it stays forward, which is the historical default and never a regression. | |
| using | iterator_concept = iterator_category |
| using | difference_type = std::ptrdiff_t |
| using | pointer = const T * |
| using | reference = const T & |
| using | value_type = T |
Public Member Functions | |
| StlConstIterator () noexcept=default | |
| Default constructor creates an "end" iterator (no current element). | |
| StlConstIterator & | operator++ () |
| Pre-increment: advance to the next element. | |
| StlConstIterator | operator++ (int) |
| Post-increment: advance to the next element and return the old iterator. | |
| bool | operator== (const StlConstIterator &it) const |
| Equality compares positions when both iterators are valid; otherwise both must be in the end state. | |
| bool | operator!= (const StlConstIterator &it) const |
| Inequality. | |
| const T & | operator* () const |
| Dereference: return the current element. | |
| const T * | operator-> () const |
| Member access to the current element. | |
| StlConstIterator & | operator-- () |
| Pre-decrement: move to the previous element. | |
| StlConstIterator | operator-- (int) |
| Post-decrement: move to the previous element and return the old iterator. | |
| StlConstIterator & | operator+= (difference_type n) |
Advance the iterator n positions (n may be negative). | |
| StlConstIterator & | operator-= (difference_type n) |
Move the iterator back n positions (n may be negative). | |
| StlConstIterator | operator+ (difference_type n) const |
Return an iterator advanced n positions. | |
| StlConstIterator | operator- (difference_type n) const |
Return an iterator moved back n positions. | |
| difference_type | operator- (const StlConstIterator &it) const |
| Return the signed distance between two iterators. | |
| reference | operator[] (difference_type n) const |
Access the element n positions away from the current one. | |
| std::strong_ordering | operator<=> (const StlConstIterator &it) const |
| Order two iterators by their logical position. | |
Static Public Member Functions | |
| static StlConstIterator | cbegin (const SetType &s) |
| Create a const iterator positioned at the first element of the container. | |
| static StlConstIterator | cend (const SetType &s) |
| Create a const end iterator for the container. | |
Friends | |
| StlConstIterator | operator+ (difference_type n, const StlConstIterator &it) |
Return an iterator advanced n positions (symmetric form). | |
STL-compatible const iterator adapter for Aleph containers.
This adapter provides a read-only view over the underlying Aleph iterator.
| SetType | Aleph container type. |
Definition at line 285 of file ah-iterator.H.
| using StlConstIterator< SetType >::difference_type = std::ptrdiff_t |
Definition at line 297 of file ah-iterator.H.
| using StlConstIterator< SetType >::iterator_category = std::conditional_t<AlephRandomAccessItor<Itor>, std::random_access_iterator_tag, std::forward_iterator_tag> |
Category is promoted to random-access when the underlying Aleph iterator opts in (see AlephRandomAccessItor); otherwise it stays forward, which is the historical default and never a regression.
Definition at line 293 of file ah-iterator.H.
| using StlConstIterator< SetType >::iterator_concept = iterator_category |
Definition at line 295 of file ah-iterator.H.
| using StlConstIterator< SetType >::Itor = typename SetType::Iterator |
Definition at line 288 of file ah-iterator.H.
| using StlConstIterator< SetType >::pointer = const T * |
Definition at line 299 of file ah-iterator.H.
| using StlConstIterator< SetType >::reference = const T & |
Definition at line 301 of file ah-iterator.H.
| using StlConstIterator< SetType >::T = typename SetType::Item_Type |
Definition at line 287 of file ah-iterator.H.
| using StlConstIterator< SetType >::value_type = T |
Definition at line 303 of file ah-iterator.H.
|
defaultnoexcept |
Default constructor creates an "end" iterator (no current element).
Referenced by StlConstIterator< SetType >::cbegin().
|
inlinestatic |
Create a const iterator positioned at the first element of the container.
Definition at line 449 of file ah-iterator.H.
References StlConstIterator< SetType >::StlConstIterator().
Referenced by StlAlephIterator< SetName >::begin(), and StlAlephIterator< SetName >::cbegin().
|
inlinestatic |
Create a const end iterator for the container.
Definition at line 455 of file ah-iterator.H.
Referenced by StlAlephIterator< SetName >::cend(), and StlAlephIterator< SetName >::end().
|
inline |
Inequality.
Definition at line 344 of file ah-iterator.H.
|
inline |
Dereference: return the current element.
Definition at line 350 of file ah-iterator.H.
|
inline |
Return an iterator advanced n positions.
Definition at line 401 of file ah-iterator.H.
|
inline |
Pre-increment: advance to the next element.
Definition at line 311 of file ah-iterator.H.
|
inline |
Post-increment: advance to the next element and return the old iterator.
Definition at line 318 of file ah-iterator.H.
|
inline |
Advance the iterator n positions (n may be negative).
Definition at line 385 of file ah-iterator.H.
|
inline |
Return the signed distance between two iterators.
Definition at line 426 of file ah-iterator.H.
|
inline |
Return an iterator moved back n positions.
Definition at line 417 of file ah-iterator.H.
|
inline |
Pre-decrement: move to the previous element.
Definition at line 368 of file ah-iterator.H.
|
inline |
Post-decrement: move to the previous element and return the old iterator.
Definition at line 376 of file ah-iterator.H.
|
inline |
Move the iterator back n positions (n may be negative).
Definition at line 393 of file ah-iterator.H.
|
inline |
Member access to the current element.
Definition at line 356 of file ah-iterator.H.
|
inline |
Order two iterators by their logical position.
Definition at line 442 of file ah-iterator.H.
|
inline |
Equality compares positions when both iterators are valid; otherwise both must be in the end state.
Definition at line 327 of file ah-iterator.H.
|
inline |
Access the element n positions away from the current one.
Definition at line 433 of file ah-iterator.H.
|
friend |
Return an iterator advanced n positions (symmetric form).
Definition at line 410 of file ah-iterator.H.