template<concepts::product_type T0, concepts::product_type... Ts>
requires (concepts::follows_same_semantic<T0, Ts...>)
| auto kumi::zip_max |
( |
T0 && | t0, |
|
|
Ts &&... | ts ) |
|
inlinenodiscardconstexpr |
Constructs a tuple where the ith element is the product type of all ith elements of t0,ts...
On record types, this function operates on elements as if they were ordered. The considered order is the order of declaration.
- Note
- This function does not take part in overload resolution if the product types do not follow the same semantic.
- See also
- follows_same_semantic
- Parameters
-
| t0 | Product type to convert |
| ts | Product types to convert |
- Returns
- The tuple of all combination of elements from t0,ts...
- Note
- zip_max fills missing elements to reach the biggest product type size.
Helper type
namespace kumi::result
{
template<product_type T>
struct zip_max;
template<product_type T>
}
constexpr auto zip(T0 &&t0, Ts &&... ts)
Constructs a tuple where the ith element is the product type of all ith elements of t0,...
Definition zip.hpp:97
constexpr auto zip_max(T0 &&t0, Ts &&... ts)
Constructs a tuple where the ith element is the product type of all ith elements of t0,...
Definition zip.hpp:189
Computes the return type of a call to kumi::zip_max
- See also
- zip
-
zip_min
Example:
#include <kumi/kumi.hpp>
#include <iostream>
int main()
{
std::cout << r << "\n";
}
Fixed-size collection of heterogeneous values.
Definition tuple.hpp:33