SeqAn3 3.4.0-rc.4
The Modern C++ library for sequence analysis.
|
Provides auxiliary data structures and functions for seqan3::record and seqan3::fields. More...
#include <ranges>
#include <seqan3/io/record.hpp>
#include <seqan3/utility/tuple/concept.hpp>
#include <seqan3/utility/type_list/traits.hpp>
#include <seqan3/utility/views/repeat.hpp>
Go to the source code of this file.
Classes | |
struct | seqan3::detail::select_types_with_ids< field_types, field_types_as_ids, selected_field_ids, field_no, return_types > |
Exposes a subset of types as a seqan3::type_list selected based on their IDs. More... | |
Namespaces | |
namespace | seqan3 |
The main SeqAn3 namespace. | |
namespace | seqan3::detail |
The internal SeqAn3 namespace. | |
Concepts | |
concept | seqan3::detail::fields_specialisation |
Auxiliary concept that checks whether a type is a specialisation of seqan3::fields. | |
Functions | |
template<field f, typename field_types , typename field_ids , typename or_type > | |
decltype(auto) | seqan3::detail::get_or (record< field_types, field_ids > &r, or_type &&or_value) |
Access an element in a std::tuple or seqan3::record; return or_value if not contained. | |
template<field f, typename field_types , typename field_ids , typename or_type > | |
decltype(auto) | seqan3::detail::get_or (record< field_types, field_ids > const &r, or_type &&or_value) |
Access an element in a std::tuple or seqan3::record; return or_value if not contained. | |
template<size_t i, typename or_type , typename... types> | |
decltype(auto) | seqan3::detail::get_or (std::tuple< types... > &t, or_type &&or_value) |
Access an element in a std::tuple or seqan3::record; return or_value if not contained. | |
template<size_t i, typename or_type , typename... types> | |
decltype(auto) | seqan3::detail::get_or (std::tuple< types... > const &t, or_type &&or_value) |
Access an element in a std::tuple or seqan3::record; return or_value if not contained. | |
template<field f, typename field_types , typename field_ids > | |
auto & | seqan3::detail::get_or_ignore (record< field_types, field_ids > &r) |
Access an element in a std::tuple or seqan3::record; return reference to std::ignore if not contained. | |
template<field f, typename field_types , typename field_ids > | |
auto const & | seqan3::detail::get_or_ignore (record< field_types, field_ids > const &r) |
Access an element in a std::tuple or seqan3::record; return reference to std::ignore if not contained. | |
template<size_t i, tuple_like tuple_t> | |
auto & | seqan3::detail::get_or_ignore (tuple_t &t) |
Access an element in a std::tuple or seqan3::record; return reference to std::ignore if not contained. | |
template<size_t i, tuple_like tuple_t> | |
auto const & | seqan3::detail::get_or_ignore (tuple_t const &t) |
Access an element in a std::tuple or seqan3::record; return reference to std::ignore if not contained. | |
auto | seqan3::detail::range_wrap_ignore (ignore_t const &) |
If the argument is std::ignore, return an infinite range of std::ignore values. | |
template<std::ranges::input_range rng_t> | |
auto & | seqan3::detail::range_wrap_ignore (rng_t &range) |
Pass through the reference to the argument in case the argument satisfies std::ranges::input_range. | |
Provides auxiliary data structures and functions for seqan3::record and seqan3::fields.