pub trait Swizzle<const INPUT_LANES: usize, const OUTPUT_LANES: usize> {
const INDEX: [usize; OUTPUT_LANES];
fn swizzle<T>(vector: Simd<T, INPUT_LANES>) -> Simd<T, OUTPUT_LANES>
where
T: SimdElement,
LaneCount<INPUT_LANES>: SupportedLaneCount,
LaneCount<OUTPUT_LANES>: SupportedLaneCount,
{ ... }
}
🔬 This is a nightly-only experimental API. (
portable_simd
)Expand description
Create a vector from the elements of another vector.
Associated Constants
const INDEX: [usize; OUTPUT_LANES]
const INDEX: [usize; OUTPUT_LANES]
🔬 This is a nightly-only experimental API. (
portable_simd
)Map from the lanes of the input vector to the output vector.
Provided methods
fn swizzle<T>(vector: Simd<T, INPUT_LANES>) -> Simd<T, OUTPUT_LANES> where
T: SimdElement,
LaneCount<INPUT_LANES>: SupportedLaneCount,
LaneCount<OUTPUT_LANES>: SupportedLaneCount,
fn swizzle<T>(vector: Simd<T, INPUT_LANES>) -> Simd<T, OUTPUT_LANES> where
T: SimdElement,
LaneCount<INPUT_LANES>: SupportedLaneCount,
LaneCount<OUTPUT_LANES>: SupportedLaneCount,
🔬 This is a nightly-only experimental API. (
portable_simd
)Create a new vector from the lanes of vector
.
Lane i
of the output is vector[Self::INDEX[i]]
.