batch_bool¶
-
template<class
T, classA= default_arch>
classbatch_bool: public types::get_bool_simd_register_t<T, default_arch>¶ 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.
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
-
batch_bool()¶ Create a batch initialized with undefined values.
-
uint64_t
mask() const¶ Extract a scalar mask representation from this
batch_bool.- Return
- bit mask
Public Static Functions
-
batch_bool<T, A>
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¶
Reducers¶
-
template<class
T, classA>
boolxsimd::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.