21namespace seqan3::detail::adl_only
25template <
typename... args_t>
30struct complement_cpo :
public detail::customisation_point_object<complement_cpo, 2>
33 using base_t = detail::customisation_point_object<complement_cpo, 2>;
41 template <
typename alphabet_t>
50 template <
typename alphabet_t>
59 template <
typename alphabet_t>
61 std::forward<alphabet_t>(
alphabet).complement()
108inline constexpr auto complement = detail::adl_only::complement_cpo{};
Core alphabet concept and free function/type trait wrappers.
#define SEQAN3_CPO_OVERLOAD(...)
A macro that helps to define a seqan3::detail::customisation_point_object.
Definition customisation_point.hpp:104
constexpr auto complement
Return the complement of a nucleotide object.
Definition alphabet/nucleotide/concept.hpp:102
The generic alphabet concept that covers most data types used in ranges.
A concept that indicates whether an alphabet represents nucleotides.
The main SeqAn3 namespace.
Definition aligned_sequence_concept.hpp:26
A type that can be specialised to provide customisation point implementations so that third party typ...
Definition alphabet/concept.hpp:46