[][src]Struct simd_trick::Simd

#[repr(C)]
pub struct Simd<TArray>(_, _)
where
    Self: Vector
;

Methods

impl<TArray> Simd<TArray> where
    Self: SimdImpl, 
[src]

pub fn splat(value: Self::Element) -> Self[src]

impl<TArray> Simd<TArray> where
    Self: SimdImpl,
    Self::Element: PartialOrd
[src]

pub fn eq(self, other: Self) -> Self::MaskVector[src]

pub fn ne(self, other: Self) -> Self::MaskVector[src]

pub fn lt(self, other: Self) -> Self::MaskVector[src]

pub fn gt(self, other: Self) -> Self::MaskVector[src]

pub fn le(self, other: Self) -> Self::MaskVector[src]

pub fn ge(self, other: Self) -> Self::MaskVector[src]

impl<TArray> Simd<TArray> where
    Self: SimdImpl,
    Self::Element: Ord
[src]

pub fn min(self, other: Self) -> Self[src]

pub fn max(self, other: Self) -> Self[src]

impl<TArray> Simd<TArray> where
    Self: SimdImpl,
    Self::Element: Integer, 
[src]

pub fn wrapping_add(self, other: Self) -> Self[src]

pub fn wrapping_sub(self, other: Self) -> Self[src]

pub fn wrapping_mul(self, other: Self) -> Self[src]

pub fn high_mul(self, other: Self) -> Self[src]

pub fn saturating_add(self, other: Self) -> Self[src]

pub fn saturating_sub(self, other: Self) -> Self[src]

pub fn count_ones(self) -> Self[src]

pub fn count_zeros(self) -> Self[src]

impl<TArray> Simd<TArray> where
    Self: SimdImpl,
    Self::Element: SignedInteger, 
[src]

pub fn wrapping_abs(self) -> Self[src]

impl<TArray> Simd<TArray> where
    Self: SimdImpl,
    Self::Element: FloatingPoint, 
[src]

pub fn recip(self) -> Self[src]

pub fn to_degrees(self) -> Self[src]

pub fn to_radians(self) -> Self[src]

pub fn min_naive(self, other: Self) -> Self[src]

pub fn max_naive(self, other: Self) -> Self[src]

Trait Implementations

impl Vector for Simd<[i8; 8]>[src]

type Element = i8

type MaskVector = m8x8

impl Vector for Simd<[u8; 8]>[src]

type Element = u8

type MaskVector = m8x8

impl Vector for Simd<[m8; 8]>[src]

type Element = m8

type MaskVector = m8x8

impl Vector for Simd<[i16; 4]>[src]

type Element = i16

type MaskVector = m16x4

impl Vector for Simd<[u16; 4]>[src]

type Element = u16

type MaskVector = m16x4

impl Vector for Simd<[m16; 4]>[src]

impl Vector for Simd<[i32; 2]>[src]

type Element = i32

type MaskVector = m32x2

impl Vector for Simd<[u32; 2]>[src]

type Element = u32

type MaskVector = m32x2

impl Vector for Simd<[m32; 2]>[src]

impl Vector for Simd<[f32; 2]>[src]

type Element = f32

type MaskVector = m32x2

impl Vector for Simd<[i64; 1]>[src]

type Element = i64

type MaskVector = m64x1

impl Vector for Simd<[u64; 1]>[src]

type Element = u64

type MaskVector = m64x1

impl Vector for Simd<[m64; 1]>[src]

impl Vector for Simd<[f64; 1]>[src]

type Element = f64

type MaskVector = m64x1

impl Vector for Simd<[i8; 16]>[src]

type Element = i8

type MaskVector = m8x16

impl Vector for Simd<[u8; 16]>[src]

type Element = u8

type MaskVector = m8x16

impl Vector for Simd<[m8; 16]>[src]

type Element = m8

type MaskVector = m8x16

impl Vector for Simd<[i16; 8]>[src]

type Element = i16

type MaskVector = m16x8

impl Vector for Simd<[u16; 8]>[src]

type Element = u16

type MaskVector = m16x8

impl Vector for Simd<[m16; 8]>[src]

impl Vector for Simd<[i32; 4]>[src]

type Element = i32

type MaskVector = m32x4

impl Vector for Simd<[u32; 4]>[src]

type Element = u32

type MaskVector = m32x4

impl Vector for Simd<[m32; 4]>[src]

impl Vector for Simd<[f32; 4]>[src]

type Element = f32

type MaskVector = m32x4

impl Vector for Simd<[i64; 2]>[src]

type Element = i64

type MaskVector = m64x2

impl Vector for Simd<[u64; 2]>[src]

type Element = u64

type MaskVector = m64x2

impl Vector for Simd<[m64; 2]>[src]

impl Vector for Simd<[f64; 2]>[src]

type Element = f64

type MaskVector = m64x2

impl Vector for Simd<[i8; 32]>[src]

type Element = i8

type MaskVector = m8x32

impl Vector for Simd<[u8; 32]>[src]

type Element = u8

type MaskVector = m8x32

impl Vector for Simd<[m8; 32]>[src]

type Element = m8

type MaskVector = m8x32

impl Vector for Simd<[i16; 16]>[src]

type Element = i16

type MaskVector = m16x16

impl Vector for Simd<[u16; 16]>[src]

type Element = u16

type MaskVector = m16x16

impl Vector for Simd<[m16; 16]>[src]

impl Vector for Simd<[i32; 8]>[src]

type Element = i32

type MaskVector = m32x8

impl Vector for Simd<[u32; 8]>[src]

type Element = u32

type MaskVector = m32x8

impl Vector for Simd<[m32; 8]>[src]

impl Vector for Simd<[f32; 8]>[src]

type Element = f32

type MaskVector = m32x8

impl Vector for Simd<[i64; 4]>[src]

type Element = i64

type MaskVector = m64x4

impl Vector for Simd<[u64; 4]>[src]

type Element = u64

type MaskVector = m64x4

impl Vector for Simd<[m64; 4]>[src]

impl Vector for Simd<[f64; 4]>[src]

type Element = f64

type MaskVector = m64x4

impl Vector for Simd<[i8; 64]>[src]

type Element = i8

type MaskVector = m8x64

impl Vector for Simd<[u8; 64]>[src]

type Element = u8

type MaskVector = m8x64

impl Vector for Simd<[m8; 64]>[src]

type Element = m8

type MaskVector = m8x64

impl Vector for Simd<[i16; 32]>[src]

type Element = i16

type MaskVector = m16x32

impl Vector for Simd<[u16; 32]>[src]

type Element = u16

type MaskVector = m16x32

impl Vector for Simd<[m16; 32]>[src]

impl Vector for Simd<[i32; 16]>[src]

type Element = i32

type MaskVector = m32x16

impl Vector for Simd<[u32; 16]>[src]

type Element = u32

type MaskVector = m32x16

impl Vector for Simd<[m32; 16]>[src]

impl Vector for Simd<[f32; 16]>[src]

type Element = f32

type MaskVector = m32x16

impl Vector for Simd<[i64; 8]>[src]

type Element = i64

type MaskVector = m64x8

impl Vector for Simd<[u64; 8]>[src]

type Element = u64

type MaskVector = m64x8

impl Vector for Simd<[m64; 8]>[src]

impl Vector for Simd<[f64; 8]>[src]

type Element = f64

type MaskVector = m64x8

impl<TArray> DerefMut for Simd<TArray> where
    Self: Vector
[src]

impl<TArray> Debug for Simd<TArray> where
    Self: SimdImpl,
    Self::Element: Debug
[src]

impl<TArray> Div<Simd<TArray>> for Simd<TArray> where
    Self: SimdImpl,
    Self::Element: Div<Output = Self::Element>,
    Self::Element: FloatingPoint, 
[src]

type Output = Self

The resulting type after applying the / operator.

impl<TArray> Add<Simd<TArray>> for Simd<TArray> where
    Self: SimdImpl,
    Self::Element: Add<Output = Self::Element>,
    Self::Element: FloatingPoint, 
[src]

type Output = Self

The resulting type after applying the + operator.

impl<TArray> Sub<Simd<TArray>> for Simd<TArray> where
    Self: SimdImpl,
    Self::Element: Sub<Output = Self::Element>,
    Self::Element: FloatingPoint, 
[src]

type Output = Self

The resulting type after applying the - operator.

impl<TArray> Mul<Simd<TArray>> for Simd<TArray> where
    Self: SimdImpl,
    Self::Element: Mul<Output = Self::Element>,
    Self::Element: FloatingPoint, 
[src]

type Output = Self

The resulting type after applying the * operator.

impl<TArray> Rem<Simd<TArray>> for Simd<TArray> where
    Self: SimdImpl,
    Self::Element: Rem<Output = Self::Element>,
    Self::Element: FloatingPoint, 
[src]

type Output = Self

The resulting type after applying the % operator.

impl<TArray> Neg for Simd<TArray> where
    Self: SimdImpl,
    Self::Element: Neg<Output = Self::Element>,
    Self::Element: FloatingPoint, 
[src]

type Output = Self

The resulting type after applying the - operator.

impl<TArray> Not for Simd<TArray> where
    Self: SimdImpl,
    Self::Element: Not<Output = Self::Element>, 
[src]

type Output = Self

The resulting type after applying the ! operator.

impl<TArray> BitAnd<Simd<TArray>> for Simd<TArray> where
    Self: SimdImpl,
    Self::Element: BitAnd<Output = Self::Element>, 
[src]

type Output = Self

The resulting type after applying the & operator.

impl<TArray> BitOr<Simd<TArray>> for Simd<TArray> where
    Self: SimdImpl,
    Self::Element: BitOr<Output = Self::Element>, 
[src]

type Output = Self

The resulting type after applying the | operator.

impl<TArray> BitXor<Simd<TArray>> for Simd<TArray> where
    Self: SimdImpl,
    Self::Element: BitXor<Output = Self::Element>, 
[src]

type Output = Self

The resulting type after applying the ^ operator.

impl<TArray> Deref for Simd<TArray> where
    Self: Vector
[src]

type Target = TArray

The resulting type after dereferencing.

impl<TArray: Copy> Copy for Simd<TArray> where
    Self: Vector
[src]

impl From<Simd<[i8; 8]>> for [i8; 8][src]

impl From<Simd<[u8; 8]>> for [u8; 8][src]

impl From<Simd<[m8; 8]>> for [m8; 8][src]

impl From<Simd<[m8; 8]>> for u8x8[src]

impl From<Simd<[i16; 4]>> for [i16; 4][src]

impl From<Simd<[u16; 4]>> for [u16; 4][src]

impl From<Simd<[m16; 4]>> for [m16; 4][src]

impl From<Simd<[m16; 4]>> for u16x4[src]

impl From<Simd<[i32; 2]>> for [i32; 2][src]

impl From<Simd<[u32; 2]>> for [u32; 2][src]

impl From<Simd<[m32; 2]>> for [m32; 2][src]

impl From<Simd<[f32; 2]>> for [f32; 2][src]

impl From<Simd<[m32; 2]>> for u32x2[src]

impl From<Simd<[i64; 1]>> for [i64; 1][src]

impl From<Simd<[u64; 1]>> for [u64; 1][src]

impl From<Simd<[m64; 1]>> for [m64; 1][src]

impl From<Simd<[f64; 1]>> for [f64; 1][src]

impl From<Simd<[m64; 1]>> for u64x1[src]

impl From<Simd<[i8; 16]>> for [i8; 16][src]

impl From<Simd<[u8; 16]>> for [u8; 16][src]

impl From<Simd<[m8; 16]>> for [m8; 16][src]

impl From<Simd<[m8; 16]>> for u8x16[src]

impl From<Simd<[i16; 8]>> for [i16; 8][src]

impl From<Simd<[u16; 8]>> for [u16; 8][src]

impl From<Simd<[m16; 8]>> for [m16; 8][src]

impl From<Simd<[m16; 8]>> for u16x8[src]

impl From<Simd<[i32; 4]>> for [i32; 4][src]

impl From<Simd<[u32; 4]>> for [u32; 4][src]

impl From<Simd<[m32; 4]>> for [m32; 4][src]

impl From<Simd<[f32; 4]>> for [f32; 4][src]

impl From<Simd<[m32; 4]>> for u32x4[src]

impl From<Simd<[i64; 2]>> for [i64; 2][src]

impl From<Simd<[u64; 2]>> for [u64; 2][src]

impl From<Simd<[m64; 2]>> for [m64; 2][src]

impl From<Simd<[f64; 2]>> for [f64; 2][src]

impl From<Simd<[m64; 2]>> for u64x2[src]

impl From<Simd<[i8; 32]>> for [i8; 32][src]

impl From<Simd<[u8; 32]>> for [u8; 32][src]

impl From<Simd<[m8; 32]>> for [m8; 32][src]

impl From<Simd<[m8; 32]>> for u8x32[src]

impl From<Simd<[i16; 16]>> for [i16; 16][src]

impl From<Simd<[u16; 16]>> for [u16; 16][src]

impl From<Simd<[m16; 16]>> for [m16; 16][src]

impl From<Simd<[m16; 16]>> for u16x16[src]

impl From<Simd<[i32; 8]>> for [i32; 8][src]

impl From<Simd<[u32; 8]>> for [u32; 8][src]

impl From<Simd<[m32; 8]>> for [m32; 8][src]

impl From<Simd<[f32; 8]>> for [f32; 8][src]

impl From<Simd<[m32; 8]>> for u32x8[src]

impl From<Simd<[i64; 4]>> for [i64; 4][src]

impl From<Simd<[u64; 4]>> for [u64; 4][src]

impl From<Simd<[m64; 4]>> for [m64; 4][src]

impl From<Simd<[f64; 4]>> for [f64; 4][src]

impl From<Simd<[m64; 4]>> for u64x4[src]

impl From<Simd<[i8; 64]>> for [i8; 64][src]

impl From<Simd<[u8; 64]>> for [u8; 64][src]

impl From<Simd<[m8; 64]>> for [m8; 64][src]

impl From<Simd<[m8; 64]>> for u8x64[src]

impl From<Simd<[i16; 32]>> for [i16; 32][src]

impl From<Simd<[u16; 32]>> for [u16; 32][src]

impl From<Simd<[m16; 32]>> for [m16; 32][src]

impl From<Simd<[m16; 32]>> for u16x32[src]

impl From<Simd<[i32; 16]>> for [i32; 16][src]

impl From<Simd<[u32; 16]>> for [u32; 16][src]

impl From<Simd<[m32; 16]>> for [m32; 16][src]

impl From<Simd<[f32; 16]>> for [f32; 16][src]

impl From<Simd<[m32; 16]>> for u32x16[src]

impl From<Simd<[i64; 8]>> for [i64; 8][src]

impl From<Simd<[u64; 8]>> for [u64; 8][src]

impl From<Simd<[m64; 8]>> for [m64; 8][src]

impl From<Simd<[f64; 8]>> for [f64; 8][src]

impl From<Simd<[m64; 8]>> for u64x8[src]

impl<TArray> From<TArray> for Simd<TArray> where
    Self: Vector
[src]

impl<TArray: Clone> Clone for Simd<TArray> where
    Self: Vector
[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl<TArray> Default for Simd<TArray> where
    Self: SimdImpl,
    Self::Element: Default
[src]

Auto Trait Implementations

impl<TArray> !Unpin for Simd<TArray>

impl<TArray> !Sync for Simd<TArray>

impl<TArray> !Send for Simd<TArray>

Blanket Implementations

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]