SeqAn3 3.4.0-rc.1
The Modern C++ library for sequence analysis.
|
Provides various transformation traits used by the range module. More...
#include <iterator>
#include <ranges>
#include <type_traits>
#include <seqan3/core/detail/iterator_traits.hpp>
#include <seqan3/core/platform.hpp>
#include <seqan3/utility/type_traits/basic.hpp>
Go to the source code of this file.
Classes | |
struct | seqan3::range_innermost_value< t > |
Recursively determines the value_type on containers and/or iterators. More... | |
Namespaces | |
namespace | seqan3 |
The main SeqAn3 namespace. | |
namespace | seqan3::detail |
The internal SeqAn3 namespace. | |
Typedefs | |
template<bool const_range, typename range_t > | |
using | seqan3::detail::maybe_const_iterator_t = std::ranges::iterator_t< maybe_const_range_t< const_range, range_t > > |
Returns the const iterator of range_t if const_range is true; otherwise the non-const iterator. | |
template<bool const_range, typename range_t > | |
using | seqan3::detail::maybe_const_range_t = std::conditional_t< const_range, range_t const, range_t > |
Makes range_t const if const_range is true; otherwise keeps range_t as is. | |
template<bool const_v, typename range_t > | |
using | seqan3::detail::maybe_const_sentinel_t = std::ranges::sentinel_t< maybe_const_range_t< const_v, range_t > > |
Returns the const sentinel of range_t if const_range is true; otherwise the non-const sentinel. | |
template<typename t > | |
using | seqan3::range_innermost_value_t = typename range_innermost_value< t >::type |
Shortcut for seqan3::range_innermost_value (transformation_trait shortcut). | |
Variables | |
template<typename t > | |
constexpr size_t | seqan3::range_dimension_v = 1 |
Returns the number of times you can call seqan3::value_type_t recursively on t (type trait). | |
Provides various transformation traits used by the range module.