std::experimental::where (3) - Linux Manuals

std::experimental::where: std::experimental::where

NAME

std::experimental::where - std::experimental::where

Synopsis


Defined in header <experimental/simd>
template < class T, class Abi >
where_expression<simd_mask<T, Abi>, simd<T, Abi>> (1)
where( const typename simd<T, Abi>::mask_type& mask,
simd<T, Abi>& value) noexcept;
template < class T, class Abi >
const_where_expression<simd_mask<T, Abi>, const simd<T, Abi>> (2)
where( const typename simd<T, Abi>::mask_type& mask,
const simd<T, Abi>& value) noexcept;
template < class T, class Abi >
where_expression<simd_mask<T, Abi>, simd_mask<T, Abi>> (3)
where( const nodeduce_t<simd_mask<T, Abi>>& mask,
simd_mask<T, Abi>& value) noexcept;
template < class T, class Abi >
const_where_expression<simd_mask<T, Abi>, const simd_mask<T, Abi>> (4)
where( const nodeduce_t<simd_mask<T, Abi>>& mask,
const simd_mask<T, Abi>& value) noexcept;
template < class T >
where_expression<bool, T> (5)
where( /*see below*/ mask, T& value ) noexcept;
template < class T >
const_where_expression<bool, const T> (6)
where( /*see below*/ mask, const T& value ) noexcept;


Constructs a new const_where_expression or where_expression.
1-6) constructs a where_expression from given mask and value parameters.

Parameters


1-4)


mask - the simd_mask object
value - reference to the object that mask applies on


5-6)


mask - the mask of type bool
value - reference to the scalar that mask applies on

Return value


The constructed const_where_expression or where_expression.

Notes


5-6) uses implementation defined type of mask, so that implicit conversions from other types to bool is disabled.

Example