SeqAn3 3.4.0-rc.1
The Modern C++ library for sequence analysis.
Loading...
Searching...
No Matches
seqan3::detail::view_take_until< urng_t, fun_t, or_throw, and_consume >::basic_sentinel< const_range > Class Template Reference

The sentinel type of take_until, provides the comparison operators. More...

Public Member Functions

Constructors, destructor and assignment
 basic_sentinel ()=default
 Defaulted.
 
 basic_sentinel (basic_sentinel const &)=default
 Defaulted.
 
 basic_sentinel (basic_sentinel &&)=default
 Defaulted.
 
basic_sentineloperator= (basic_sentinel const &)=default
 Defaulted.
 
basic_sentineloperator= (basic_sentinel &&)=default
 Defaulted.
 
 ~basic_sentinel ()=default
 Defaulted.
 
 basic_sentinel (underlying_sentinel_t underlying_sentinel, copyable_wrapper_t< fun_t > const &_fun)
 Construct from a sentinel and a functor.
 
 basic_sentinel (basic_sentinel<!const_range > other) &&std
 Construct from a not const range a const range.
 

Private Types

using underlying_sentinel_t = seqan3::detail::maybe_const_sentinel_t< const_range, urng_t >
 The sentinel type of the underlying range.
 

Private Attributes

copyable_wrapper_t< fun_t > const * fun {nullptr}
 Pointer to the functor stored in the view.
 
underlying_sentinel_t underlying_sentinel {}
 The actual end of the underlying range.
 

Friends

Comparison operators
bool operator== (basic_iterator< const_range > const &lhs, basic_sentinel const &rhs)
 Compares lhs with rhs for equality.
 
bool operator== (basic_sentinel const &lhs, basic_iterator< const_range > const &rhs)
 Compares lhs with rhs for equality.
 
bool operator!= (basic_iterator< const_range > const &lhs, basic_sentinel const &rhs)
 Compares lhs with rhs for inequality.
 
bool operator!= (basic_sentinel const &lhs, basic_iterator< const_range > const &rhs)
 Compares lhs with rhs for inequality.
 
template<bool other_const_range = !const_range>
requires (std::sentinel_for<underlying_sentinel_t, basic_iterator<other_const_range>>)
bool operator== (basic_iterator< other_const_range > const &lhs, basic_sentinel const &rhs)
 Compares lhs with rhs for equality.
 
template<bool other_const_range = !const_range>
requires (std::sentinel_for<underlying_sentinel_t, basic_iterator<other_const_range>>)
bool operator== (basic_sentinel const &lhs, basic_iterator< other_const_range > const &rhs)
 Compares lhs with rhs for equality.
 
template<bool other_const_range = !const_range>
requires (std::sentinel_for<underlying_sentinel_t, basic_iterator<other_const_range>>)
bool operator!= (basic_iterator< other_const_range > const &lhs, basic_sentinel const &rhs)
 Compares lhs with rhs for inequality.
 
template<bool other_const_range = !const_range>
requires (std::sentinel_for<underlying_sentinel_t, basic_iterator<other_const_range>>)
bool operator!= (basic_sentinel const &lhs, basic_iterator< other_const_range > const &rhs)
 Compares lhs with rhs for inequality.
 

Detailed Description

template<std::ranges::view urng_t, typename fun_t, bool or_throw, bool and_consume>
template<bool const_range>
class seqan3::detail::view_take_until< urng_t, fun_t, or_throw, and_consume >::basic_sentinel< const_range >

The sentinel type of take_until, provides the comparison operators.

Template Parameters
const_rangeWhether sentinel is a const sentinel (const_range = true) or a non-const sentinel.

Constructor & Destructor Documentation

◆ basic_sentinel()

template<std::ranges::view urng_t, typename fun_t , bool or_throw, bool and_consume>
template<bool const_range>
seqan3::detail::view_take_until< urng_t, fun_t, or_throw, and_consume >::basic_sentinel< const_range >::basic_sentinel ( underlying_sentinel_t  underlying_sentinel,
copyable_wrapper_t< fun_t > const &  _fun 
)
inlineexplicit

Construct from a sentinel and a functor.

Parameters
[in]underlying_sentinelThe actual end of the underlying range.
[in]_funReference to the functor stored in the view.

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