|
SeqAn3 3.4.2-rc.1
The Modern C++ library for sequence analysis.
|
Exposes a subset of types as a seqan3::type_list selected based on their IDs. More...
#include <seqan3/io/detail/record.hpp>
Inheritance diagram for seqan3::detail::select_types_with_ids< field_types, field_types_as_ids, selected_field_ids, field_no, return_types >:Public Types | |
| using | type = type_list< return_types... > |
| The return type. | |
Related Symbols | |
(Note that these are not member symbols.) | |
| template<typename field_types , typename field_types_as_ids , typename selected_field_ids , size_t field_no = 0, typename... return_types> | |
| using | select_types_with_ids_t = typename select_types_with_ids< field_types, field_types_as_ids, selected_field_ids, field_no, return_types... >::type |
| Shortcut for seqan3::select_types_with_ids (transformation_trait shortcut). | |
Exposes a subset of types as a seqan3::type_list selected based on their IDs.
| field_types | The types of the fields available to the record in a seqan3::type_list. |
| field_types_as_ids | A seqan3::fields type with seqan3::field IDs corresponding to field_types. |
| selected_field_ids | A seqan3::fields type with the subset (and order) of the fields selected. |
| field_no | The field we are currently processing (defaults to 0). |
| return_types | The type pack being aggregated (empty at start). |
Given a list of types and corresponding IDs; and given a selection (and possibly different order) of IDs, return the types corresponding to that selection and in that order.
This transformation trait recurses over the selected_field_ids and retrieves the corresponding typenames from field_types via their identifer in field_types_as_ids. It recursively builds up return_types which it packs into a seqan3::type_list once the end of selected_field_ids is reached.