E.V.E
v2023.02.15

◆ zip

eve::zip = {}
inlineconstexpr

lable object constructing a SoA value.

Callable object constructing a SoA value.

Defined in Header

#include <eve/module/core.hpp>

Callable Signatures

namespace eve
{
template<simd_value... Ws>
auto operator()(Ws... ws) const noexcept; //1
template<product_type Target, simd_value... Ws>
auto operator()(as<Target> t, Ws... ws) const noexcept; //2
}
Specifies that a type a SIMD type.
Definition: vectorized.hpp:33
Definition: abi.hpp:18
Lightweight type-wrapper.
Definition: as.hpp:29

Parameters

  • t Type to construct. By default, it's equal to kumi::tuple<eve::element_type_t<Ws>...>
  • ws Variadic list of eve::simd_value to zip.

Return value

*A Callable Object performing the same kind of operation but returning its result as a SIMD value.

Example

TODO

Required header: #include <eve/module/core.hpp>

Members Functions

Member Effect
operator() Construct a eve::wide of a given eve::product_type from values

For scalar types returns a kumi::tuple or a product type


template<simd_value... Ws>
auto operator()(Ws... ws) const noexcept;
template<product_type Target, simd_value... Ws>
auto operator()(as<Target> t, Ws... ws) const noexcept;
Parameters
tType to construct. By default, it's equal to kumi::tuple<eve::element_type_t<Ws>...>
wsVariadic list of eve::simd_value to zip.

Return value

Construct an instance of eve::wide<Target> by aggregating each element of each values ws.


Example

TODO