SeqAn3  3.0.3
The Modern C++ library for sequence analysis.
seqan3::detail::view_take_until< urng_t, fun_t, or_throw, and_consume >::basic_sentinel< is_const_range > Class Template Reference

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

#include <seqan3/range/views/take_until.hpp>

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 (urng_sentinel_type urng_sentinel, predicate_ref_t predicate)
 Construct from a sentinel and a predicate. More...
 
 basic_sentinel (basic_sentinel<!is_const_range > other) requires is_const_range &&std
 Construct from a not const range a const range.
 

Private Types

using predicate_ref_t = std::conditional_t< is_const_range, std::remove_reference_t< fun_t > const &, std::remove_reference_t< fun_t > & >
 Auxiliary type.
 
using urng_base_type = std::conditional_t< is_const_range, std::add_const_t< urng_t >, urng_t >
 The base type of the underlying range.
 
using urng_sentinel_type = std::ranges::sentinel_t< urng_base_type >
 The sentinel type of the underlying range.
 

Private Attributes

seqan3::semiregular_box_t< predicate_ref_tpredicate {}
 Reference to the predicate stored in the view.
 
urng_sentinel_type urng_sentinel {}
 The actual end of the underlying range.
 

Friends

Comparison operators
template<typename rng_t >
bool operator== (basic_iterator< rng_t > const &lhs, basic_sentinel const &rhs)
 Compares lhs with rhs for equality.
 
template<typename rng_t >
bool operator== (basic_sentinel const &lhs, basic_iterator< rng_t > const &rhs)
 Compares lhs with rhs for equality.
 
template<typename rng_t >
bool operator!= (basic_iterator< rng_t > const &lhs, basic_sentinel const &rhs)
 Compares lhs with rhs for inequality.
 
template<typename rng_t >
bool operator!= (basic_sentinel const &lhs, basic_iterator< rng_t > 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 is_const_range>
class seqan3::detail::view_take_until< urng_t, fun_t, or_throw, and_consume >::basic_sentinel< is_const_range >

The sentinel type of take_until, provides the comparison operators.

Constructor & Destructor Documentation

◆ basic_sentinel()

template<std::ranges::view urng_t, typename fun_t , bool or_throw, bool and_consume>
template<bool is_const_range>
seqan3::detail::view_take_until< urng_t, fun_t, or_throw, and_consume >::basic_sentinel< is_const_range >::basic_sentinel ( urng_sentinel_type  urng_sentinel,
predicate_ref_t  predicate 
)
inlineexplicit

Construct from a sentinel and a predicate.

Parameters
[in]urng_sentinelThe actual end of the underlying range.
[in]predicateReference to the predicate stored in the view.

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