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
#86656)Expand description
Create a vector from the elements of another vector.
Required Associated Constants
Provided Methods
sourcefn 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
#86656)Create a new vector from the lanes of vector
.
Lane i
of the output is vector[Self::INDEX[i]]
.