41 requires std::tuple_size_v<t> == 2;
42 requires std::ranges::forward_range<std::tuple_element_t<0, t>>;
43 requires std::ranges::forward_range<std::tuple_element_t<1, t>>;
85 requires (std::ranges::range_value_t<t> value)
89 requires
sequence_pair<std::tuple_element_t<0, decltype(value)>>;
90 requires std::copy_constructible<std::tuple_element_t<1, decltype(value)>>;
108 template <
typename t>
111 std::is_lvalue_reference_v<t> ||
112 (std::ranges::viewable_range<std::tuple_element_t<0, std::remove_reference_t<t>>> &&
113 std::ranges::viewable_range<std::tuple_element_t<1, std::remove_reference_t<t>>>);
134 template <
typename t>
136 std::ranges::forward_range<t> &&
138 ((std::ranges::viewable_range<t> && std::is_lvalue_reference_v<std::ranges::range_reference_t<t>>) ||
Core alphabet concept and free function/type trait wrappers.
A helper concept to check the input of the range based alignment algorithm interface.
A helper concept to check if a type is a range over seqan3::detail::sequence_pair.
A helper concept to check if a type is a sequence pair.
The basis for seqan3::alphabet, but requires only rank interface (not char).
Whether a type behaves like a tuple.
The internal SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:29
Adaptations of concepts from the Ranges TS.
Provides seqan3::tuple_like.