SeqAn3 3.4.0-rc.1
The Modern C++ library for sequence analysis.
Loading...
Searching...
No Matches
seqan3::detail::is_in_interval_type< interval_first, interval_last > Struct Template Reference

Parse condition that checks if a given value is in the range of rng_beg and interval_last. More...

#include <seqan3/utility/char_operations/predicate_detail.hpp>

+ Inheritance diagram for seqan3::detail::is_in_interval_type< interval_first, interval_last >:

Public Types

using base_t = char_predicate_base< is_in_interval_type< interval_first, interval_last > >
 The base type.
 
- Public Types inherited from seqan3::detail::char_predicate_base< is_in_interval_type< interval_first, interval_last > >
using data_t = constexpr_pseudo_bitset< 257 >
 Type of the data field; as soon as std::bitset is fully constexpr, use that instead!
 

Static Public Attributes

static constexpr data_t data
 The look-up table that is used to evaluate the input.
 
static const std::string msg
 The message representing this condition.
 

Additional Inherited Members

- Public Member Functions inherited from char_predicate
bool operator() (char_type c)
 predicate function to test if c satisfies the given condition.
 
static constexpr auto msg
 Defines the condition msg. The type is deduced from the constant expression in the definition of the variable.
 
- Public Member Functions inherited from seqan3::detail::char_predicate_base< is_in_interval_type< interval_first, interval_last > >
constexpr auto operator|| (rhs_t const &) const
 Combines the result of two seqan3::detail::char_predicate via logical disjunction.
 
constexpr auto operator! () const
 Return a new condition with all bits flipped.
 
constexpr bool operator() (value_t const val) const noexcept
 Invokes the condition on val.
 
constexpr bool operator() (value_t const val) const noexcept
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
std::string message () const
 Returns the message representing this condition as std::string.
 

Detailed Description

template<uint8_t interval_first, uint8_t interval_last>
requires (interval_first <= interval_last)
struct seqan3::detail::is_in_interval_type< interval_first, interval_last >

Parse condition that checks if a given value is in the range of rng_beg and interval_last.

Template Parameters
interval_firstnon-type template parameter denoting the begin of the allowed range. Must be less than or equal to interval_last.
interval_lastnon-type template parameter denoting the end of the allowed range. Must be greater than or equal to interval_first.

Member Data Documentation

◆ data

template<uint8_t interval_first, uint8_t interval_last>
constexpr data_t seqan3::detail::is_in_interval_type< interval_first, interval_last >::data
staticconstexpr
Initial value:
= []() constexpr
{
data_t ret{};
for (size_t i = interval_first; i <= static_cast<size_t>(interval_last); ++i)
ret[i] = true;
return ret;
}()
constexpr_pseudo_bitset< 257 > data_t
Type of the data field; as soon as std::bitset is fully constexpr, use that instead!
Definition predicate_detail.hpp:159

The look-up table that is used to evaluate the input.

◆ msg

template<uint8_t interval_first, uint8_t interval_last>
const std::string seqan3::detail::is_in_interval_type< interval_first, interval_last >::msg
inlinestatic
Initial value:
= std::string{"is_in_interval<'"} + std::string{interval_first}
+ std::string{"', '"} + std::string{interval_last} + std::string{"'>"}

The message representing this condition.


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