Type Traits¶
xsimd provides a few type traits to interact with scalar and batch types in an uniformeous manner.
Type check:
|
batch type detection |
|
mask batch type detection |
|
complex batch type detection |
Type access:
|
batch element type |
|
batch mask type |
- template <class T>
-
struct
xsimd::is_batch¶ - #include <xsimd_traits.hpp>
type traits that inherits from
std::true_typeforbatch<...>types and fromstd::false_typeotherwise.- Template Parameters
T: type to analyze.
Inherits from false_type
- template <class T>
-
struct
xsimd::is_batch_bool¶ - #include <xsimd_traits.hpp>
type traits that inherits from
std::true_typeforbatch_bool<...>types and fromstd::false_typeotherwise.- Template Parameters
T: type to analyze.
Inherits from false_type
- template <class T>
-
struct
xsimd::is_batch_complex¶ - #include <xsimd_traits.hpp>
type traits that inherits from
std::true_typeforbatch<std::complex<...>>types and fromstd::false_typeotherwise.- Template Parameters
T: type to analyze.
Inherits from false_type
- template <class T>
-
struct
xsimd::scalar_type¶ - #include <xsimd_traits.hpp>
type traits whose
typefield is set toT::value_typeifis_batch<T>::valueand toTotherwise.- Template Parameters
T: type to analyze.
- template <class T>
-
struct
xsimd::mask_type¶ - #include <xsimd_traits.hpp>
type traits whose
typefield is set toT::value_typeifis_batch_bool<T>::valueand toboolotherwise.- Template Parameters
T: type to analyze.