E.V.E
v2023.02.15
 
Loading...
Searching...
No Matches

◆ swap_pairs

eve::swap_pairs = functor<swap_pairs_t>
inlineconstexpr

Header file

#include <eve/module/core.hpp>

Callable Signatures

namespace eve
{
template<simd_value T, std::ptrdiff_t I0, std::ptrdiff_t I1 >
constexpr auto swap_pairs
swap chosen pair of elements.
Definition swap_pairs.hpp:61
typename decltype(detail::as_translated_type(as< T >{}))::type translate_t
Returns the final translated type of T.
Definition translation.hpp:107
EVE Main Namespace.
Definition abi.hpp:19

Parameters

  • x : argument.
  • i0 : first index
  • i1 : second index

Return value

Return x with element i0 and i1 swapped.

Example

#include <eve/wide.hpp>
#include <iostream>
#include <eve/module/core.hpp>
int main()
{
wide_it pi = {1, 3, 7, 15};
pi = eve::inc(pi);
std::cout << "---- simd" << '\n'
<< "<- pi = " << pi << '\n'
<< "-> swap_pairs(pi, _0, _3) = " << eve::swap_pairs(pi, _0, _3) << '\n'
<< "-> swap_pairs(pi, _1, _2) = " << eve::swap_pairs(pi, _1, _2) << '\n'
<< "-> swap_pairs(pi, _0, _1) = " << eve::swap_pairs(pi, _0, _1) << '\n';
return 0;
}
constexpr auto inc
elementwise_callable object returning the input incremented by 1.
Definition inc.hpp:107