 |
SeqAn3
3.0.2
The Modern C++ library for sequence analysis.
|
|
Go to the documentation of this file.
44 template <
size_t size>
80 template <semialphabet other_alph_t>
82 requires ((alphabet_size<other_alph_t> ==
size) && std::regular<other_alph_t>)
84 explicit operator other_alph_t()
const
Provides seqan3::alphabet_base.
constexpr auto assign_rank_to
Assign a rank to an alphabet object.
Definition: concept.hpp:239
static constexpr detail::min_viable_uint_t< size > alphabet_size
The size of the alphabet, i.e. the number of different values it can take.
Definition: alphabet_base.hpp:176
constexpr semialphabet_any() noexcept=default
Defaulted.
A CRTP-base that makes defining a custom alphabet easier.
Definition: alphabet_base.hpp:54
constexpr auto to_rank
Return the rank representation of a (semi-)alphabet object.
Definition: concept.hpp:143
The main SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:29
A semi-alphabet that type erases all other semi-alphabets of the same size.
Definition: semialphabet_any.hpp:46
constexpr size_t size
The size of a type pack.
Definition: traits.hpp:116
constexpr semialphabet_any< size > & assign_rank(rank_type const c) noexcept
Assign from a numeric value.
Definition: alphabet_base.hpp:167
constexpr rank_type to_rank() const noexcept
Return the letter's numeric value (rank in the alphabet).
Definition: alphabet_base.hpp:118
The basis for seqan3::alphabet, but requires only rank interface (not char).