SeqAn3 3.4.0-rc.1
The Modern C++ library for sequence analysis.
|
The iterator over an alignment-column. More...
Public Types | |
Associated types | |
using | value_type = typename deferred_type< typename derived_t::value_type >::type |
A value type dependent on the derived type. | |
using | reference = typename deferred_type< typename derived_t::reference >::type |
The reference type dependent on the derived type. | |
using | pointer = void |
Pointer type. | |
using | difference_type = std::ranges::range_difference_t< view_type > |
Difference type. | |
using | iterator_category = std::forward_iterator_tag |
Iterator category. | |
Public Member Functions | |
Constructors, destructor and assignment | |
constexpr | iterator_type ()=default |
Defaulted. | |
constexpr | iterator_type (iterator_type const &)=default |
Defaulted. | |
constexpr | iterator_type (iterator_type &&)=default |
Defaulted. | |
constexpr iterator_type & | operator= (iterator_type const &)=default |
Defaulted. | |
constexpr iterator_type & | operator= (iterator_type &&)=default |
Defaulted. | |
~iterator_type ()=default | |
Defaulted. | |
constexpr | iterator_type (alignment_column_type &host) |
Construction from the underlying alignment-column. | |
Element access | |
constexpr reference | operator* () const noexcept |
Returns a proxy for the current alignment cell. | |
Arithmetic operators | |
constexpr iterator_type & | operator++ () noexcept |
Advances the iterator by one. | |
constexpr iterator_type | operator++ (int) noexcept |
Advances the iterator and returns previous iterator. | |
Private Attributes | |
std::ranges::iterator_t< view_type > | host_iter {} |
Wrapped iterator over aliased matrix column. | |
alignment_column_type * | host_ptr {nullptr} |
Pointer to the underlying alignment-column. | |
Comparison operators | |
constexpr bool | operator== (sentinel const &rhs) const noexcept |
Returns true if the host iterator reached the end, false otherwise. | |
constexpr bool | operator== (iterator_type const &rhs) const noexcept |
Returns true if both iterators are equal, false otherwise. | |
constexpr bool | operator!= (sentinel const &rhs) const noexcept |
Returns true if the host iterator did not reach the end, false otherwise. | |
constexpr bool | operator!= (iterator_type const &rhs) const noexcept |
Returns true if both iterators are not equal, false otherwise. | |
constexpr bool | operator== (sentinel const &lhs, iterator_type const &rhs) noexcept |
Returns true if the host iterator reached the end, false otherwise. | |
constexpr bool | operator!= (sentinel const &lhs, iterator_type const &rhs) noexcept |
Returns true if the host iterator did not reach the end, false otherwise. | |
The iterator over an alignment-column.
The iterator represents the current cell within an alignment-column. When dereferenced it calls the function make_proxy
of the derived class to obtain a proxy value over the current matrix cell. This proxy type depends on the derived type.
|
inlineexplicitconstexpr |
Construction from the underlying alignment-column.
host | The alignment-column for this iterator. |
|
friend |
Returns true
if the host iterator did not reach the end, false
otherwise.
|
friend |
Returns true
if the host iterator reached the end, false
otherwise.