#[repr(transparent)]pub struct WideF32x4(pub f32x4);
Expand description
A wrapper type of wide::f32x4
that implements all the relevant traits from num
and simba
.
This is needed to overcome the orphan rules.
Tuple Fields§
§0: f32x4
Trait Implementations§
source§impl AddAssign for WideF32x4
impl AddAssign for WideF32x4
source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
Performs the
+=
operation. Read moresource§impl DivAssign for WideF32x4
impl DivAssign for WideF32x4
source§fn div_assign(&mut self, rhs: Self)
fn div_assign(&mut self, rhs: Self)
Performs the
/=
operation. Read moresource§impl FromPrimitive for WideF32x4
impl FromPrimitive for WideF32x4
source§fn from_i64(n: i64) -> Option<Self>
fn from_i64(n: i64) -> Option<Self>
Converts an
i64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u64(n: u64) -> Option<Self>
fn from_u64(n: u64) -> Option<Self>
Converts an
u64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_isize(n: isize) -> Option<Self>
fn from_isize(n: isize) -> Option<Self>
Converts an
isize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i8(n: i8) -> Option<Self>
fn from_i8(n: i8) -> Option<Self>
Converts an
i8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i16(n: i16) -> Option<Self>
fn from_i16(n: i16) -> Option<Self>
Converts an
i16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_i32(n: i32) -> Option<Self>
fn from_i32(n: i32) -> Option<Self>
Converts an
i32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_usize(n: usize) -> Option<Self>
fn from_usize(n: usize) -> Option<Self>
Converts a
usize
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u8(n: u8) -> Option<Self>
fn from_u8(n: u8) -> Option<Self>
Converts an
u8
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u16(n: u16) -> Option<Self>
fn from_u16(n: u16) -> Option<Self>
Converts an
u16
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_u32(n: u32) -> Option<Self>
fn from_u32(n: u32) -> Option<Self>
Converts an
u32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_f32(n: f32) -> Option<Self>
fn from_f32(n: f32) -> Option<Self>
Converts a
f32
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned.source§fn from_f64(n: f64) -> Option<Self>
fn from_f64(n: f64) -> Option<Self>
Converts a
f64
to return an optional value of this type. If the
value cannot be represented by this type, then None
is returned. Read moresource§impl MulAssign for WideF32x4
impl MulAssign for WideF32x4
source§fn mul_assign(&mut self, rhs: Self)
fn mul_assign(&mut self, rhs: Self)
Performs the
*=
operation. Read moresource§impl Num for WideF32x4
impl Num for WideF32x4
type FromStrRadixErr = <f32 as Num>::FromStrRadixErr
source§fn from_str_radix(str: &str, radix: u32) -> Result<Self, Self::FromStrRadixErr>
fn from_str_radix(str: &str, radix: u32) -> Result<Self, Self::FromStrRadixErr>
Convert from a string and radix (typically
2..=36
). Read moresource§impl RemAssign for WideF32x4
impl RemAssign for WideF32x4
source§fn rem_assign(&mut self, rhs: Self)
fn rem_assign(&mut self, rhs: Self)
Performs the
%=
operation. Read moresource§impl SimdComplexField for WideF32x4
impl SimdComplexField for WideF32x4
§type SimdRealField = WideF32x4
type SimdRealField = WideF32x4
Type of the coefficients of a complex number.
source§fn simd_horizontal_sum(self) -> Self::Element
fn simd_horizontal_sum(self) -> Self::Element
Computes the sum of all the lanes of
self
.source§fn simd_horizontal_product(self) -> Self::Element
fn simd_horizontal_product(self) -> Self::Element
Computes the product of all the lanes of
self
.source§fn from_simd_real(re: Self::SimdRealField) -> Self
fn from_simd_real(re: Self::SimdRealField) -> Self
Builds a pure-real complex number from the given value.
source§fn simd_real(self) -> Self::SimdRealField
fn simd_real(self) -> Self::SimdRealField
The real part of this complex number.
source§fn simd_imaginary(self) -> Self::SimdRealField
fn simd_imaginary(self) -> Self::SimdRealField
The imaginary part of this complex number.
source§fn simd_norm1(self) -> Self::SimdRealField
fn simd_norm1(self) -> Self::SimdRealField
The sum of the absolute value of this complex number’s real and imaginary part.
source§fn simd_modulus(self) -> Self::SimdRealField
fn simd_modulus(self) -> Self::SimdRealField
The modulus of this complex number.
source§fn simd_modulus_squared(self) -> Self::SimdRealField
fn simd_modulus_squared(self) -> Self::SimdRealField
The squared modulus of this complex number.
source§fn simd_argument(self) -> Self::SimdRealField
fn simd_argument(self) -> Self::SimdRealField
The argument of this complex number.
source§fn simd_to_exp(self) -> (Self::SimdRealField, Self)
fn simd_to_exp(self) -> (Self::SimdRealField, Self)
The exponential form of this complex number: (modulus, e^{i arg})
fn simd_recip(self) -> Self
fn simd_conjugate(self) -> Self
source§fn simd_scale(self, factor: Self::SimdRealField) -> Self
fn simd_scale(self, factor: Self::SimdRealField) -> Self
Multiplies this complex number by
factor
.source§fn simd_unscale(self, factor: Self::SimdRealField) -> Self
fn simd_unscale(self, factor: Self::SimdRealField) -> Self
Divides this complex number by
factor
.fn simd_floor(self) -> Self
fn simd_ceil(self) -> Self
fn simd_round(self) -> Self
fn simd_trunc(self) -> Self
fn simd_fract(self) -> Self
source§fn simd_abs(self) -> Self
fn simd_abs(self) -> Self
The absolute value of this complex number:
self / self.signum()
. Read moresource§fn simd_signum(self) -> Self
fn simd_signum(self) -> Self
The exponential part of this complex number:
self / self.modulus()
fn simd_mul_add(self, a: Self, b: Self) -> Self
fn simd_powi(self, n: i32) -> Self
fn simd_powf(self, n: Self) -> Self
fn simd_powc(self, n: Self) -> Self
fn simd_sqrt(self) -> Self
fn simd_exp(self) -> Self
fn simd_exp2(self) -> Self
fn simd_exp_m1(self) -> Self
fn simd_ln_1p(self) -> Self
fn simd_ln(self) -> Self
fn simd_log(self, base: Self) -> Self
fn simd_log2(self) -> Self
fn simd_log10(self) -> Self
fn simd_cbrt(self) -> Self
source§fn simd_hypot(self, other: Self) -> Self::SimdRealField
fn simd_hypot(self, other: Self) -> Self::SimdRealField
Computes (self.conjugate() * self + other.conjugate() * other).sqrt()
fn simd_sin(self) -> Self
fn simd_cos(self) -> Self
fn simd_tan(self) -> Self
fn simd_asin(self) -> Self
fn simd_acos(self) -> Self
fn simd_atan(self) -> Self
fn simd_sin_cos(self) -> (Self, Self)
fn simd_sinh(self) -> Self
fn simd_cosh(self) -> Self
fn simd_tanh(self) -> Self
fn simd_asinh(self) -> Self
fn simd_acosh(self) -> Self
fn simd_atanh(self) -> Self
source§fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
fn simd_to_polar(self) -> (Self::SimdRealField, Self::SimdRealField)
The polar form of this complex number: (modulus, arg)
fn simd_sinh_cosh(self) -> (Self, Self)
fn simd_sinhc(self) -> Self
fn simd_coshc(self) -> Self
source§impl SimdPartialOrd for WideF32x4
impl SimdPartialOrd for WideF32x4
source§fn simd_clamp(self, min: Self, max: Self) -> Self
fn simd_clamp(self, min: Self, max: Self) -> Self
Clamps each lane of
self
between the corresponding lane of min
and max
.source§fn simd_horizontal_min(self) -> Self::Element
fn simd_horizontal_min(self) -> Self::Element
The min value among all lanes of
self
.source§fn simd_horizontal_max(self) -> Self::Element
fn simd_horizontal_max(self) -> Self::Element
The max value among all lanes of
self
.source§impl SimdRealField for WideF32x4
impl SimdRealField for WideF32x4
fn simd_atan2(self, other: Self) -> Self
source§fn simd_copysign(self, sign: Self) -> Self
fn simd_copysign(self, sign: Self) -> Self
fn simd_default_epsilon() -> Self
fn simd_pi() -> Self
fn simd_two_pi() -> Self
fn simd_frac_pi_2() -> Self
fn simd_frac_pi_3() -> Self
fn simd_frac_pi_4() -> Self
fn simd_frac_pi_6() -> Self
fn simd_frac_pi_8() -> Self
fn simd_frac_1_pi() -> Self
fn simd_frac_2_pi() -> Self
fn simd_frac_2_sqrt_pi() -> Self
fn simd_e() -> Self
fn simd_log2_e() -> Self
fn simd_log10_e() -> Self
fn simd_ln_2() -> Self
fn simd_ln_10() -> Self
source§impl SimdSigned for WideF32x4
impl SimdSigned for WideF32x4
source§fn simd_abs_sub(&self, other: &Self) -> Self
fn simd_abs_sub(&self, other: &Self) -> Self
The absolute difference of each lane of
self
. Read moresource§fn simd_signum(&self) -> Self
fn simd_signum(&self) -> Self
The signum of each lane of
Self
.source§fn is_simd_positive(&self) -> Self::SimdBool
fn is_simd_positive(&self) -> Self::SimdBool
Tests which lane is positive.
source§fn is_simd_negative(&self) -> Self::SimdBool
fn is_simd_negative(&self) -> Self::SimdBool
Tests which lane is negative.
source§impl SimdValue for WideF32x4
impl SimdValue for WideF32x4
§type SimdBool = WideBoolF32x4
type SimdBool = WideBoolF32x4
Type of the result of comparing two SIMD values like
self
.source§unsafe fn extract_unchecked(&self, i: usize) -> Self::Element
unsafe fn extract_unchecked(&self, i: usize) -> Self::Element
Extracts the i-th lane of
self
without bound-checking.source§unsafe fn replace_unchecked(&mut self, i: usize, val: Self::Element)
unsafe fn replace_unchecked(&mut self, i: usize, val: Self::Element)
Replaces the i-th lane of
self
by val
without bound-checking.source§impl SubAssign for WideF32x4
impl SubAssign for WideF32x4
source§fn sub_assign(&mut self, rhs: Self)
fn sub_assign(&mut self, rhs: Self)
Performs the
-=
operation. Read moresource§impl SubsetOf<WideF32x4> for WideF32x4
impl SubsetOf<WideF32x4> for WideF32x4
source§fn to_superset(&self) -> Self
fn to_superset(&self) -> Self
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset(element: &Self) -> Option<Self>
fn from_superset(element: &Self) -> Option<Self>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read moresource§fn from_superset_unchecked(element: &Self) -> Self
fn from_superset_unchecked(element: &Self) -> Self
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(_: &Self) -> bool
fn is_in_subset(_: &Self) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).source§impl SubsetOf<WideF32x4> for f32
impl SubsetOf<WideF32x4> for f32
source§fn to_superset(&self) -> WideF32x4
fn to_superset(&self) -> WideF32x4
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset_unchecked(element: &WideF32x4) -> f32
fn from_superset_unchecked(element: &WideF32x4) -> f32
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(c: &WideF32x4) -> bool
fn is_in_subset(c: &WideF32x4) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).source§impl SubsetOf<WideF32x4> for f64
impl SubsetOf<WideF32x4> for f64
source§fn to_superset(&self) -> WideF32x4
fn to_superset(&self) -> WideF32x4
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset_unchecked(element: &WideF32x4) -> f64
fn from_superset_unchecked(element: &WideF32x4) -> f64
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(c: &WideF32x4) -> bool
fn is_in_subset(c: &WideF32x4) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).source§impl SubsetOf<WideF32x4> for i16
impl SubsetOf<WideF32x4> for i16
source§fn to_superset(&self) -> WideF32x4
fn to_superset(&self) -> WideF32x4
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset_unchecked(element: &WideF32x4) -> i16
fn from_superset_unchecked(element: &WideF32x4) -> i16
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(c: &WideF32x4) -> bool
fn is_in_subset(c: &WideF32x4) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).source§impl SubsetOf<WideF32x4> for i32
impl SubsetOf<WideF32x4> for i32
source§fn to_superset(&self) -> WideF32x4
fn to_superset(&self) -> WideF32x4
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset_unchecked(element: &WideF32x4) -> i32
fn from_superset_unchecked(element: &WideF32x4) -> i32
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(c: &WideF32x4) -> bool
fn is_in_subset(c: &WideF32x4) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).source§impl SubsetOf<WideF32x4> for i64
impl SubsetOf<WideF32x4> for i64
source§fn to_superset(&self) -> WideF32x4
fn to_superset(&self) -> WideF32x4
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset_unchecked(element: &WideF32x4) -> i64
fn from_superset_unchecked(element: &WideF32x4) -> i64
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(c: &WideF32x4) -> bool
fn is_in_subset(c: &WideF32x4) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).source§impl SubsetOf<WideF32x4> for i8
impl SubsetOf<WideF32x4> for i8
source§fn to_superset(&self) -> WideF32x4
fn to_superset(&self) -> WideF32x4
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset_unchecked(element: &WideF32x4) -> i8
fn from_superset_unchecked(element: &WideF32x4) -> i8
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(c: &WideF32x4) -> bool
fn is_in_subset(c: &WideF32x4) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).source§impl SubsetOf<WideF32x4> for isize
impl SubsetOf<WideF32x4> for isize
source§fn to_superset(&self) -> WideF32x4
fn to_superset(&self) -> WideF32x4
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset_unchecked(element: &WideF32x4) -> isize
fn from_superset_unchecked(element: &WideF32x4) -> isize
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(c: &WideF32x4) -> bool
fn is_in_subset(c: &WideF32x4) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).source§impl SubsetOf<WideF32x4> for u16
impl SubsetOf<WideF32x4> for u16
source§fn to_superset(&self) -> WideF32x4
fn to_superset(&self) -> WideF32x4
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset_unchecked(element: &WideF32x4) -> u16
fn from_superset_unchecked(element: &WideF32x4) -> u16
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(c: &WideF32x4) -> bool
fn is_in_subset(c: &WideF32x4) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).source§impl SubsetOf<WideF32x4> for u32
impl SubsetOf<WideF32x4> for u32
source§fn to_superset(&self) -> WideF32x4
fn to_superset(&self) -> WideF32x4
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset_unchecked(element: &WideF32x4) -> u32
fn from_superset_unchecked(element: &WideF32x4) -> u32
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(c: &WideF32x4) -> bool
fn is_in_subset(c: &WideF32x4) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).source§impl SubsetOf<WideF32x4> for u64
impl SubsetOf<WideF32x4> for u64
source§fn to_superset(&self) -> WideF32x4
fn to_superset(&self) -> WideF32x4
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset_unchecked(element: &WideF32x4) -> u64
fn from_superset_unchecked(element: &WideF32x4) -> u64
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(c: &WideF32x4) -> bool
fn is_in_subset(c: &WideF32x4) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).source§impl SubsetOf<WideF32x4> for u8
impl SubsetOf<WideF32x4> for u8
source§fn to_superset(&self) -> WideF32x4
fn to_superset(&self) -> WideF32x4
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset_unchecked(element: &WideF32x4) -> u8
fn from_superset_unchecked(element: &WideF32x4) -> u8
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(c: &WideF32x4) -> bool
fn is_in_subset(c: &WideF32x4) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).source§impl SubsetOf<WideF32x4> for usize
impl SubsetOf<WideF32x4> for usize
source§fn to_superset(&self) -> WideF32x4
fn to_superset(&self) -> WideF32x4
The inclusion map: converts
self
to the equivalent element of its superset.source§fn from_superset_unchecked(element: &WideF32x4) -> usize
fn from_superset_unchecked(element: &WideF32x4) -> usize
Use with care! Same as
self.to_superset
but without any property checks. Always succeeds.source§fn is_in_subset(c: &WideF32x4) -> bool
fn is_in_subset(c: &WideF32x4) -> bool
Checks if
element
is actually part of the subset Self
(and can be converted to it).impl Copy for WideF32x4
impl Field for WideF32x4
impl PrimitiveSimdValue for WideF32x4
Auto Trait Implementations§
impl Freeze for WideF32x4
impl RefUnwindSafe for WideF32x4
impl Send for WideF32x4
impl Sync for WideF32x4
impl Unpin for WideF32x4
impl UnwindSafe for WideF32x4
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read moresource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.