SeqAn3 3.4.0-rc.1
The Modern C++ library for sequence analysis.
Loading...
Searching...
No Matches
seqan3::detail::alignment_matrix_column_major_range_base< derived_t >::alignment_column_type::iterator_type Class Reference

The iterator over an alignment-column. More...

+ Inheritance diagram for seqan3::detail::alignment_matrix_column_major_range_base< derived_t >::alignment_column_type::iterator_type:

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_typeoperator= (iterator_type const &)=default
 Defaulted.
 
constexpr iterator_typeoperator= (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_typeoperator++ () 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_typehost_iter {}
 Wrapped iterator over aliased matrix column.
 
alignment_column_typehost_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.
 

Detailed Description

template<typename derived_t>
class seqan3::detail::alignment_matrix_column_major_range_base< derived_t >::alignment_column_type::iterator_type

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.

Constructor & Destructor Documentation

◆ iterator_type()

template<typename derived_t >
constexpr seqan3::detail::alignment_matrix_column_major_range_base< derived_t >::alignment_column_type::iterator_type::iterator_type ( alignment_column_type host)
inlineexplicitconstexpr

Construction from the underlying alignment-column.

Parameters
hostThe alignment-column for this iterator.

Friends And Related Symbol Documentation

◆ operator!=

template<typename derived_t >
constexpr bool operator!= ( sentinel const &  lhs,
iterator_type const &  rhs 
)
friend

Returns true if the host iterator did not reach the end, false otherwise.

◆ operator==

template<typename derived_t >
constexpr bool operator== ( sentinel const &  lhs,
iterator_type const &  rhs 
)
friend

Returns true if the host iterator reached the end, false otherwise.


The documentation for this class was generated from the following file:
Hide me