KUMI v3.1.0
Exquisite Epidote
Loading...
Searching...
No Matches

◆ to_ref() [2/2]

template<concepts::product_type T>
auto kumi::to_ref ( T && t)
inlinenodiscardconstexpr

Creates a kumi::tuple of references given a reference to a kumi::product_type.

Parameters
tTuple whose elements are to be referenced.
Returns
A tuple equivalent to the result of kumi::apply([]<typename... T>(T&&... e) { return kumi::forward_as_tuple(std::forward<T>(e)...); }, t)

Example:

#include <kumi/kumi.hpp>
#include <iostream>
int main()
{
auto original = kumi::make_tuple(0,'0',0.f);
auto ref = kumi::to_ref( original );
std::cout << original << "\n";
kumi::get<0>(ref) = 9;
kumi::get<1>(ref) = 'z';
kumi::get<2>(ref) = 3.14159f;
std::cout << original << "\n";
}
decltype(auto) constexpr get(record< Ts... > &r) noexcept
Extracts the Ith field from a kumi::record.
Definition record.hpp:604