SeqAn3
3.4.0
The Modern C++ library for sequence analysis.
Toggle main menu visibility
Loading...
Searching...
No Matches
debug_stream_alphabet.hpp
Go to the documentation of this file.
1
// SPDX-FileCopyrightText: 2006-2025 Knut Reinert & Freie Universität Berlin
2
// SPDX-FileCopyrightText: 2016-2025 Knut Reinert & MPI für molekulare Genetik
3
// SPDX-License-Identifier: BSD-3-Clause
4
9
10
#pragma once
11
12
#include <
seqan3/alphabet/concept.hpp
>
13
#include <
seqan3/core/debug_stream/debug_stream_type.hpp
>
14
#include <
seqan3/io/stream/concept.hpp
>
15
16
namespace
seqan3
17
{
18
26
template
<alphabet alphabet_t>
27
struct
alphabet_printer
<alphabet_t>
28
{
34
template
<
typename
stream_t>
35
constexpr
void
operator()
(stream_t & stream, alphabet_t
const
letter)
const
noexcept
36
{
37
stream <<
to_char
(letter);
38
}
39
};
40
41
// forward declare seqan3::mask
42
class
mask;
43
51
template
<std::same_as<mask> mask_t>
52
struct
mask_printer
<mask_t>
53
{
59
template
<
typename
stream_t>
60
constexpr
void
operator()
(stream_t & stream, mask_t
const
arg)
const
noexcept
61
{
62
// seqan3::mask is incomplete at this point, so we cannot use `arg == mask{}`
63
stream << (arg == mask_t{} ?
"UNMASKED"
:
"MASKED"
);
64
}
65
};
66
67
}
// namespace seqan3
concept.hpp
Core alphabet concept and free function/type trait wrappers.
debug_stream_type.hpp
Provides seqan3::debug_stream and related types.
seqan3::to_char
constexpr auto to_char
Return the char representation of an alphabet object.
Definition
alphabet/concept.hpp:381
concept.hpp
Stream concepts.
seqan3
The main SeqAn3 namespace.
Definition
aligned_sequence_concept.hpp:26
seqan3::alphabet_printer< alphabet_t >::operator()
constexpr void operator()(stream_t &stream, alphabet_t const letter) const noexcept
Print the alphabet to the stream.
Definition
debug_stream_alphabet.hpp:35
seqan3::alphabet_printer
Definition
default_printer.hpp:31
seqan3::mask_printer< mask_t >::operator()
constexpr void operator()(stream_t &stream, mask_t const arg) const noexcept
Print the mask alphabet to the stream.
Definition
debug_stream_alphabet.hpp:60
seqan3::mask_printer
Definition
default_printer.hpp:39
Hide me
Version:
seqan3
alphabet
detail
debug_stream_alphabet.hpp
Generated on
for SeqAn3 by
1.17.0