#include #include #include #include #include using std::tuple; using std::array; using std::variant; using std::cout; #include "MyData.h" template array...>, sizeof...(Ts)> convert_impl(tuple& in, std::index_sequence) { return {{variant...>(std::in_place_index_t{}, std::ref(std::get(in)))...}}; } template array...>, sizeof...(Ts)> convert(tuple& in) { return convert_impl(in, std::make_index_sequence>>{}); }