Boost
C++ Libraries
...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::pfr::structure_to_tuple — Creates a std::tuple from fields of an simple aggregate val.
// In header: <boost/pfr/core.hpp> template<typename T> auto structure_to_tuple(const T & val);
Example:
struct my_struct { int i, short s; }; my_struct s {10, 11}; std::tuple<int, short> t = boost::pfr::structure_to_tuple(s); assert(get<0>(t) == 10);