152 template <
typename t>
171 *stream << static_cast<int>(v);
180 *stream << static_cast<unsigned>(v);
192 std::ios_base::fmtflags
flags()
const 195 return stream->flags();
199 std::ios_base::fmtflags
flags(std::ios_base::fmtflags
const flgs)
201 return stream->flags(flgs);
205 void setf(std::ios_base::fmtflags
const flag)
211 void unsetf(std::ios_base::fmtflags
const flag)
213 stream->unsetf(flag);
263 std::ostream *stream = &std::cerr;
290 template <alphabet_concept alphabet_t>
305 template<
typename tuple_t, std::size_t ...I>
306 void print_tuple(
debug_stream_type & s, tuple_t && t, std::index_sequence<I...>
const &)
309 ((s << (I == 0 ?
"" :
",") << std::get<I>(t)), ...);
324 template <
typename tuple_t>
332 detail::print_tuple(s, std::forward<tuple_t>(t),
351 template <std::ranges::InputRange rng_t>
357 !(std::is_pointer_v<std::decay_t<rng_t>> &&
Provides seqan3::add_enum_bitwise_operators.
constexpr debug_stream_type(std::ostream &out)
Construction from an output stream.
Definition: debug_stream.hpp:119
fmtflags2 flags2(fmtflags2 flgs)
Replace the current flags on the stream with the given argument.
Definition: debug_stream.hpp:235
Definition: debug_stream.hpp:67
Enables use of non-ASCII UTF8 characters in formatted output.
Definition: debug_stream.hpp:66
Contains various shortcuts for common std::ranges functions.
void setf(std::ios_base::fmtflags const flag)
Set the format flag(s) on the stream (current flags are ORed with the argument).
Definition: debug_stream.hpp:205
Whether a type behaves like a tuple.
debug_stream_type & operator<<(debug_stream_type &s, alphabet_t const l)
All alphabets can be printed to the seqan3::debug_stream by their char representation.
Definition: debug_stream.hpp:291
debug_stream_type & operator<<(debug_stream_type &s, rng_t &&r)
All input ranges can be printed to the seqan3::debug_stream element-wise (if their elements are print...
Definition: debug_stream.hpp:352
void set_underlying_stream(std::ostream &out)
Change the underlying output stream.
Definition: debug_stream.hpp:143
Provides alphabet adaptations for standard uint types.
No flag is set.
Definition: debug_stream.hpp:65
The generic alphabet concept that covers most data types used in ranges.This is the core alphabet con...
The main SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:58
fmtflags2 flags2() const
Retrieve the format flags from the stream.
Definition: debug_stream.hpp:229
debug_stream_type & operator<<(std::ios_base::fmtflags const flag)
Set the format flag(s) on the stream (current flags are ORed with the argument).
Definition: debug_stream.hpp:217
Provides seqan3::tuple_like_concept.
debug_stream_type & operator<<(std::ostream &(*fp)(std::ostream &))
This overloads enables forwarding std::endl and other manipulators.
Definition: debug_stream.hpp:161
debug_stream_type debug_stream
A global instance of seqan3::debug_stream_type.
Definition: debug_stream.hpp:275
Adaptations of concepts from the Ranges TS.
void unsetf(fmtflags2 const flag)
Unset the format flag(s) on the stream.
Definition: debug_stream.hpp:248
std::ios_base::fmtflags flags() const
Retrieve the format flags from the stream.
Definition: debug_stream.hpp:193
debug_stream_type & operator<<(fmtflags2 const flag)
Set the format flag(s) on the stream (current flags are ORed with the argument).
Definition: debug_stream.hpp:254
std::ios_base::fmtflags flags(std::ios_base::fmtflags const flgs)
Replace the current flags on the stream with the given argument.
Definition: debug_stream.hpp:199
void setf(fmtflags2 const flag)
Set the format flag(s) on the stream (current flags are ORed with the argument).
Definition: debug_stream.hpp:242
The concept std::Same<T, U> is satisfied if and only if T and U denote the same type.
debug_stream_type & operator<<(t &&v)
Forwards to the underlying stream object.
Definition: debug_stream.hpp:154
fmtflags2
Flags that change the behaviour of the seqan3::debug_stream.
Definition: debug_stream.hpp:63
Definition: aligned_sequence_concept.hpp:288
debug_stream_type & operator<<(debug_stream_type &s, tuple_t &&t)
All tuples can be printed by printing their elements separately.
Definition: debug_stream.hpp:330
constexpr bool add_enum_bitwise_operators< fmtflags2 >
Overload bitwise operators for seqan3::fmtflags2.
Definition: debug_stream.hpp:74
Core alphabet concept and free function/metafunction wrappers.
Provides various metafunctions used by the range module.
Concept for output streams.
A "pretty printer" for most SeqAn data structures and related types.
Definition: debug_stream.hpp:104
constexpr underlying_char_t< alphabet_type > to_char(alphabet_type const alph) requires requires(alphabet_type alph)
Implementation of seqan3::alphabet_concept::to_char() that delegates to a member function.
Definition: member_exposure.hpp:165
void unsetf(std::ios_base::fmtflags const flag)
Unset the format flag(s) on the stream.
Definition: debug_stream.hpp:211