pub trait SimdInt<Element: SimdElement, S: Simd>:
SimdBase<Element, S>
+ Add<Output = Self>
+ Add<Element, Output = Self>
+ Sub<Output = Self>
+ Sub<Element, Output = Self>
+ Mul<Output = Self>
+ Mul<Element, Output = Self>
+ BitAnd<Output = Self>
+ BitAnd<Element, Output = Self>
+ BitOr<Output = Self>
+ BitOr<Element, Output = Self>
+ BitXor<Output = Self>
+ BitXor<Element, Output = Self> {
// Required methods
fn simd_eq(self, rhs: impl SimdInto<Self, S>) -> Self::Mask;
fn simd_lt(self, rhs: impl SimdInto<Self, S>) -> Self::Mask;
fn simd_le(self, rhs: impl SimdInto<Self, S>) -> Self::Mask;
fn simd_ge(self, rhs: impl SimdInto<Self, S>) -> Self::Mask;
fn simd_gt(self, rhs: impl SimdInto<Self, S>) -> Self::Mask;
fn zip_low(self, rhs: impl SimdInto<Self, S>) -> Self;
fn zip_high(self, rhs: impl SimdInto<Self, S>) -> Self;
fn unzip_low(self, rhs: impl SimdInto<Self, S>) -> Self;
fn unzip_high(self, rhs: impl SimdInto<Self, S>) -> Self;
fn min(self, rhs: impl SimdInto<Self, S>) -> Self;
fn max(self, rhs: impl SimdInto<Self, S>) -> Self;
// Provided method
fn to_float<T: SimdCvtFloat<Self>>(self) -> T { ... }
}
Required Methods§
fn simd_eq(self, rhs: impl SimdInto<Self, S>) -> Self::Mask
fn simd_lt(self, rhs: impl SimdInto<Self, S>) -> Self::Mask
fn simd_le(self, rhs: impl SimdInto<Self, S>) -> Self::Mask
fn simd_ge(self, rhs: impl SimdInto<Self, S>) -> Self::Mask
fn simd_gt(self, rhs: impl SimdInto<Self, S>) -> Self::Mask
fn zip_low(self, rhs: impl SimdInto<Self, S>) -> Self
fn zip_high(self, rhs: impl SimdInto<Self, S>) -> Self
fn unzip_low(self, rhs: impl SimdInto<Self, S>) -> Self
fn unzip_high(self, rhs: impl SimdInto<Self, S>) -> Self
fn min(self, rhs: impl SimdInto<Self, S>) -> Self
fn max(self, rhs: impl SimdInto<Self, S>) -> Self
Provided Methods§
fn to_float<T: SimdCvtFloat<Self>>(self) -> T
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.