Skip to main content

SimdCombine

Trait SimdCombine 

Source
pub trait SimdCombine<S: Simd>: SimdBase<S> + Seal {
    type Combined: SimdBase<S, Element = Self::Element, Block = Self::Block> + SimdSplit<S, Split = Self>;

    // Required method
    fn combine(self, rhs: impl SimdInto<Self, S>) -> Self::Combined;
}
Expand description

Concatenation of two SIMD vectors.

This is implemented on all vectors 256 bits and lower, producing vectors of up to 512 bits.

Required Associated Types§

Source

type Combined: SimdBase<S, Element = Self::Element, Block = Self::Block> + SimdSplit<S, Split = Self>

Required Methods§

Source

fn combine(self, rhs: impl SimdInto<Self, S>) -> Self::Combined

Concatenate two vectors into a new one that’s twice as long.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<S: Simd> SimdCombine<S> for f32x4<S>

Source§

impl<S: Simd> SimdCombine<S> for f32x8<S>

Source§

impl<S: Simd> SimdCombine<S> for f64x2<S>

Source§

impl<S: Simd> SimdCombine<S> for f64x4<S>

Source§

impl<S: Simd> SimdCombine<S> for i8x16<S>

Source§

impl<S: Simd> SimdCombine<S> for i8x32<S>

Source§

impl<S: Simd> SimdCombine<S> for i16x8<S>

Source§

impl<S: Simd> SimdCombine<S> for i16x16<S>

Source§

impl<S: Simd> SimdCombine<S> for i32x4<S>

Source§

impl<S: Simd> SimdCombine<S> for i32x8<S>

Source§

impl<S: Simd> SimdCombine<S> for i64x2<S>

Source§

impl<S: Simd> SimdCombine<S> for i64x4<S>

Source§

impl<S: Simd> SimdCombine<S> for u8x16<S>

Source§

impl<S: Simd> SimdCombine<S> for u8x32<S>

Source§

impl<S: Simd> SimdCombine<S> for u16x8<S>

Source§

impl<S: Simd> SimdCombine<S> for u16x16<S>

Source§

impl<S: Simd> SimdCombine<S> for u32x4<S>

Source§

impl<S: Simd> SimdCombine<S> for u32x8<S>

Source§

impl<S: Simd> SimdCombine<S> for u64x2<S>

Source§

impl<S: Simd> SimdCombine<S> for u64x4<S>