51template <genetic_code gc = genetic_code::canonical, nucleot
ide_alphabet nucl_type>
54 if constexpr (std::same_as<nucl_type, dna4> || std::same_as<nucl_type, dna5> || std::same_as<nucl_type, dna15>)
57 return seqan3::detail::translation_table<nucl_type, gc>::value[
to_rank(n1)][
to_rank(n2)][
to_rank(n3)];
59 else if constexpr (std::same_as<nucl_type, rna4> || std::same_as<nucl_type, rna5> || std::same_as<nucl_type, rna15>)
69 return seqan3::detail::translation_table<rna2dna_t, gc>::value[
to_rank(n1)][
to_rank(n2)][
to_rank(n3)];
75 return seqan3::detail::translation_table<dna15, gc>::value[
to_rank(
static_cast<dna15>(n1))][
to_rank(
Provides seqan3::aa27, container aliases and string literals.
The twenty-seven letter amino acid alphabet.
Definition aa27.hpp:43
The 15 letter DNA alphabet, containing all IUPAC smybols minus the gap.
Definition dna15.hpp:48
The four letter DNA alphabet of A,C,G,T.
Definition dna4.hpp:50
The five letter DNA alphabet of A,C,G,T and the unknown character N.
Definition dna5.hpp:48
Provides various transformation traits used by the range module.
constexpr aa27 translate_triplet(nucl_type const &n1, nucl_type const &n2, nucl_type const &n3) noexcept
Translate one nucleotide triplet into single amino acid (single nucleotide interface).
Definition translation.hpp:52
constexpr auto to_rank
Return the rank representation of a (semi-)alphabet object.
Definition alphabet/concept.hpp:152
The main SeqAn3 namespace.
Definition aligned_sequence_concept.hpp:26
Provides translation details for nucleotide to aminoacid translation.
Genetic codes used for translating a triplet of nucleotides into an amino acid.