Batch of conditions¶
- template <class T, class A = default_arch>
-
class
xsimd::batch_bool¶ batch of predicate over scalar or complex values.
Abstract representation of a predicate over SIMD register for scalar or complex values.
- Template Parameters
T: the type of the predicated values.A: the architecture this batch is tied too.
Inherits from types::get_bool_simd_register_t< T, A >
Public Types
-
template<>
usingvalue_type= bool¶ Type of the scalar elements within this batch.
-
template<>
usingarch_type= A¶ SIMD Architecture abstracted by this batch.
-
template<>
usingregister_type= typename base_type::register_type¶ SIMD register type abstracted by this batch.
-
template<>
usingbatch_type= batch<T, A>¶ Associated batch type this batch represents logical operations for.
Public Functions
-
XSIMD_INLINE
batch_bool()¶ Create a batch initialized with undefined values.
-
XSIMD_INLINE uint64_t xsimd::batch_bool::mask() const Extract a scalar mask representation from this
batch_bool.- Return
bit mask
Public Static Functions
-
XSIMD_INLINE batch_bool< T, A > xsimd::batch_bool::from_mask(uint64_t mask) Extract a scalar mask representation from this
batch_bool.- Return
bit mask
Public Static Attributes
-
constexpr std::size_t
size= sizeof(types::simd_register<T, A>) / sizeof(T)¶ Number of scalar elements in this batch.
Logical operators¶
- template <class T, class A>
-
XSIMD_INLINE batch_bool<T, A> xsimd::bitwise_andnot(batch_bool< T, A > const & x, batch_bool< T, A > const & y) Computes the bitwise and not of batches
xandy.- Return
the result of the bitwise and not.
- Parameters
x: batch involved in the operation.y: batch involved in the operation.
Reducers¶
- template <class T, class A>
-
XSIMD_INLINE bool xsimd::all(batch_bool< T, A > const & x) Returns true if all the boolean values in the batch are true, false otherwise.
- Return
a boolean scalar.
- Parameters
x: the batch to reduce.
- template <class T, class A>
-
XSIMD_INLINE bool xsimd::any(batch_bool< T, A > const & x) Return true if any of the boolean values in the batch is true, false otherwise.
- Return
a boolean scalar.
- Parameters
x: the batch to reduce.
- template <class T, class A>
-
XSIMD_INLINE bool xsimd::none(batch_bool< T, A > const & x) Return true if none of the boolean values in the batch is true, false otherwise.
- Return
a boolean scalar.
- Parameters
x: the batch to reduce.