 |
SeqAn3
3.0.2
The Modern C++ library for sequence analysis.
|
|
Go to the documentation of this file.
48 template <nucleot
ide_alphabet sequence_alphabet_t, rna_structure_alphabet structure_alphabet_t>
54 sequence_alphabet_t, structure_alphabet_t>
59 sequence_alphabet_t, structure_alphabet_t>;
82 SEQAN3_DOXYGEN_ONLY(( constexpr
structured_rna(component_type const alph) noexcept {} ))
84 SEQAN3_DOXYGEN_ONLY(( constexpr
structured_rna(indirect_component_type
const alph) noexcept {} ))
86 SEQAN3_DOXYGEN_ONLY(( constexpr
structured_rna & operator=(component_type const alph) noexcept {} ))
88 SEQAN3_DOXYGEN_ONLY(( constexpr
structured_rna &
operator=(indirect_component_type
const alph) noexcept {} ))
92 using base_type::operator=;
133 return char_is_valid_for<sequence_alphabet_type>(c);
144 return get<1>(*this).is_pair_open();
152 return get<1>(*this).is_pair_close();
160 return get<1>(*this).is_unpaired();
172 return get<1>(*this).pseudoknot_id();
179 template <
typename sequence_alphabet_type,
typename structure_alphabet_type>
alphabet_char_t< sequence_alphabet_type > char_type
Equals the char_type of sequence_alphabet_type.
Definition: structured_rna.hpp:67
Provides seqan3::rna_structure_alphabet.
constexpr structured_rna(indirect_component_type const alph) noexcept
Construction via a value of a subtype that is assignable to one of the components.
Definition: structured_rna.hpp:84
constexpr structured_rna() noexcept=default
Defaulted.
Provides seqan3::nucleotide_alphabet.
The CRTP base for a combined alphabet that contains multiple values of different alphabets at the sam...
Definition: alphabet_tuple_base.hpp:120
constexpr char_type to_char() const noexcept
Return a character. This reads the internal sequence letter.
Definition: structured_rna.hpp:109
constexpr structured_rna & assign_char(char_type const c) noexcept
Assign from a nucleotide character. This modifies the internal sequence letter.
Definition: structured_rna.hpp:98
constexpr auto to_char
Return the char representation of an alphabet object.
Definition: concept.hpp:321
structured_rna(sequence_alphabet_type &&, structure_alphabet_type &&) -> structured_rna< std::decay_t< sequence_alphabet_type >, std::decay_t< structure_alphabet_type >>
Type deduction guide enables usage of structured_rna without specifying template args.
constexpr bool is_pair_open() const noexcept
Check whether the character represents a rightward interaction in an RNA structure.
Definition: structured_rna.hpp:142
constexpr bool is_pair_close() const noexcept
Check whether the character represents a leftward interaction in an RNA structure.
Definition: structured_rna.hpp:150
decltype(seqan3::to_char(std::declval< alphabet_type const >())) alphabet_char_t
The char_type of the alphabet; defined as the return type of seqan3::to_char.
Definition: concept.hpp:330
structure_alphabet_t structure_alphabet_type
Second template parameter as member type.
Definition: structured_rna.hpp:64
The main SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:29
static constexpr uint8_t max_pseudoknot_depth
The ability of this alphabet to represent pseudoknots, i.e. crossing interactions.
Definition: structured_rna.hpp:164
constexpr std::optional< uint8_t > pseudoknot_id() const noexcept
Get an identifier for a pseudoknotted interaction.
Definition: structured_rna.hpp:170
static constexpr bool char_is_valid(char_type const c) noexcept
Validate whether a character is valid in the sequence alphabet.
Definition: structured_rna.hpp:131
A seqan3::alphabet_tuple_base that joins a nucleotide alphabet with an RNA structure alphabet.
Definition: structured_rna.hpp:55
constexpr structured_rna complement() const noexcept
Return a structured_rna where the sequence letter is converted to its complement.
Definition: structured_rna.hpp:124
Provides seqan3::alphabet_tuple_base.
constexpr auto assign_char_to
Assign a character to an alphabet object.
Definition: concept.hpp:417
constexpr auto max_pseudoknot_depth
A type trait that holds the ability of the structure alphabet to represent pseudoknots,...
Definition: concept.hpp:365
Refines seqan3::alphabet and adds assignability.
sequence_alphabet_t sequence_alphabet_type
First template parameter as member type.
Definition: structured_rna.hpp:62
constexpr bool is_unpaired() const noexcept
Check whether the character represents an unpaired position in an RNA structure.
Definition: structured_rna.hpp:158