Expand description
Lane-Associated Vector (LAV): Portable SIMD vector trait as GAT of SIMD lane trait.
NOTE: This crate requires nightly Rust.
§Features
- SIMD lane trait
Realabstracting overf32andf64. - SIMD vector trait
SimdReal<Real, N>abstracting overSimd<f32, N>andSimd<f64, N>. - Generic associated type (GAT)
Real::Simd<N>as part of SIMD lane traitRealimplementing SIMD vector traitSimdReal<Self, N>for itself as lane type where the GAT is generic over the number of SIMD vector lanesN. - Supports AoS/SoA/AoSoA via
Real::as_simd/Real::as_simd_mutabstracting overas_simd/as_simd_mutoff32andf64slices. - Lanewise approximate equality test wrt to epsilon and ULP SIMD vectors.
ApproxEqtrait complementingPartialEq.no_stdwithout loss of functionality by enabling thelibmfeature.
This example uses SIMD generically over floating-point types while hiding it from the user.
Modules§
Macros§
- Constructs vector by copying lanes from selected lanes of one or two input vectors.
Traits§
- Tests for approximate equality.
- Selects lanes from two vectors by mask vector.
- Mask vector of
Mask<i32, N>orMask<i64, N>.