29namespace seqan3::detail
33template <
typename char_t,
typename tuple_t,
std::size_t ...I>
38 ((s << (I == 0 ?
"" :
",") << get<I>(t)), ...);
53template <
typename tuple_t>
54SEQAN3_CONCEPT debug_streamable_tuple = !std::ranges::input_range<tuple_t> &&
69template <
typename char_t,
typename tuple_t>
71 requires (detail::debug_streamable_tuple<tuple_t>)
73inline debug_stream_type<char_t> &
operator<<(debug_stream_type<char_t> & s, tuple_t && t)
75 detail::print_tuple(s, std::forward<tuple_t>(t),
Core alphabet concept and free function/type trait wrappers.
A "pretty printer" for most SeqAn data structures and related types.
Definition: debug_stream_type.hpp:78
The <concepts> header from C++20's standard library.
Provides seqan3::debug_stream and related types.
The generic alphabet concept that covers most data types used in ranges.
Whether a type behaves like a tuple.
The main SeqAn3 namespace.
Definition: cigar_operation_table.hpp:2
constexpr auto const & get(configuration< configs_t... > const &config) noexcept
This is an overloaded member function, provided for convenience. It differs from the above function o...
Definition: configuration.hpp:429
The <ranges> header from C++20's standard library.
Provides seqan3::tuple_like.