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

Detailed Description

Conditional expression ignoring lanes at both extrema of a eve::simd_value.

Required header: #include <eve/conditional.hpp>

Public Member Functions

template<typename V>
constexpr auto else_ (V const &v) const
 Extends a conditional expression with an alternative value.
template<typename T>
as_logical_t< T > mask (eve::as< T > tgt) const
 Computes the eve::logical_value associated to the current conditional.
template<typename T>
constexpr std::ptrdiff_t count (eve::as< T > tgt) const
 Number of lanes to be left unmasked.
constexpr bool friend operator== (ignore_extrema const &, ignore_extrema const &)=default
 Checks equality between two eve::ignore_extrema instances.

Friends

template<typename Ch, typename Ct>
auto & operator<< (std::basic_ostream< Ch, Ct > &os, ignore_extrema const &c)
 Inserts a eve::ignore_extrema conditional expression into a output stream.

Member Function Documentation

◆ else_()

template<typename V>
auto eve::ignore_extrema::else_ ( V const & v) const
inlineconstexpr

Extends a conditional expression with an alternative value.

By default, conditional operations use their unchanged input whenever the conditional evaluates to false. By using this member function, operations will use the user provided eve::value v instead.

Parameters
vValue to use if the conditional expression evaluates to false
Returns
An instance of eve::or_ wrapping current conditional expression with v.