Struct ultraviolet::f64x2
source · #[repr(C, align(16))]pub struct f64x2 { /* private fields */ }
Implementations§
source§impl f64x2
impl f64x2
pub const ONE: f64x2 = _
pub const ZERO: f64x2 = _
pub const HALF: f64x2 = _
pub const E: f64x2 = _
pub const FRAC_1_PI: f64x2 = _
pub const FRAC_2_PI: f64x2 = _
pub const FRAC_2_SQRT_PI: f64x2 = _
pub const FRAC_1_SQRT_2: f64x2 = _
pub const FRAC_PI_2: f64x2 = _
pub const FRAC_PI_3: f64x2 = _
pub const FRAC_PI_4: f64x2 = _
pub const FRAC_PI_6: f64x2 = _
pub const FRAC_PI_8: f64x2 = _
pub const LN_2: f64x2 = _
pub const LN_10: f64x2 = _
pub const LOG2_E: f64x2 = _
pub const LOG10_E: f64x2 = _
pub const LOG10_2: f64x2 = _
pub const LOG2_10: f64x2 = _
pub const PI: f64x2 = _
pub const SQRT_2: f64x2 = _
pub const TAU: f64x2 = _
source§impl f64x2
impl f64x2
pub fn new(array: [f64; 2]) -> f64x2
pub fn blend(self, t: f64x2, f: f64x2) -> f64x2
pub fn abs(self) -> f64x2
sourcepub fn fast_max(self, rhs: f64x2) -> f64x2
pub fn fast_max(self, rhs: f64x2) -> f64x2
Calculates the lanewise maximum of both vectors. This is a faster
implementation than max
, but it doesn’t specify any behavior if NaNs are
involved.
sourcepub fn max(self, rhs: f64x2) -> f64x2
pub fn max(self, rhs: f64x2) -> f64x2
Calculates the lanewise maximum of both vectors. If either lane is NaN,
the other lane gets chosen. Use fast_max
for a faster implementation
that doesn’t handle NaNs.
sourcepub fn fast_min(self, rhs: f64x2) -> f64x2
pub fn fast_min(self, rhs: f64x2) -> f64x2
Calculates the lanewise minimum of both vectors. This is a faster
implementation than min
, but it doesn’t specify any behavior if NaNs are
involved.
sourcepub fn min(self, rhs: f64x2) -> f64x2
pub fn min(self, rhs: f64x2) -> f64x2
Calculates the lanewise minimum of both vectors. If either lane is NaN,
the other lane gets chosen. Use fast_min
for a faster implementation
that doesn’t handle NaNs.
pub fn is_nan(self) -> f64x2
pub fn is_finite(self) -> f64x2
pub fn is_inf(self) -> f64x2
pub fn round(self) -> f64x2
pub fn round_int(self) -> i64x2
pub fn mul_add(self, m: f64x2, a: f64x2) -> f64x2
pub fn mul_sub(self, m: f64x2, a: f64x2) -> f64x2
pub fn mul_neg_add(self, m: f64x2, a: f64x2) -> f64x2
pub fn mul_neg_sub(self, m: f64x2, a: f64x2) -> f64x2
pub fn flip_signs(self, signs: f64x2) -> f64x2
pub fn copysign(self, sign: f64x2) -> f64x2
pub fn asin_acos(self) -> (f64x2, f64x2)
pub fn acos(self) -> f64x2
pub fn asin(self) -> f64x2
pub fn atan(self) -> f64x2
pub fn atan2(self, x: f64x2) -> f64x2
pub fn sin_cos(self) -> (f64x2, f64x2)
pub fn sin(self) -> f64x2
pub fn cos(self) -> f64x2
pub fn tan(self) -> f64x2
pub fn to_degrees(self) -> f64x2
pub fn to_radians(self) -> f64x2
pub fn sqrt(self) -> f64x2
pub fn move_mask(self) -> i32
pub fn any(self) -> bool
pub fn all(self) -> bool
pub fn none(self) -> bool
sourcepub fn reduce_add(self) -> f64
pub fn reduce_add(self) -> f64
horizontal add of all the elements of the vector
pub fn ln(self) -> f64x2
pub fn log2(self) -> f64x2
pub fn log10(self) -> f64x2
pub fn pow_f64x2(self, y: f64x2) -> f64x2
pub fn powf(self, y: f64) -> f64x2
pub fn to_array(self) -> [f64; 2]
pub fn as_array_ref(&self) -> &[f64; 2]
pub fn as_array_mut(&mut self) -> &mut [f64; 2]
Trait Implementations§
source§impl AddAssign<&f64x2> for f64x2
impl AddAssign<&f64x2> for f64x2
source§fn add_assign(&mut self, rhs: &f64x2)
fn add_assign(&mut self, rhs: &f64x2)
Performs the
+=
operation. Read moresource§impl AddAssign for f64x2
impl AddAssign for f64x2
source§fn add_assign(&mut self, rhs: f64x2)
fn add_assign(&mut self, rhs: f64x2)
Performs the
+=
operation. Read moresource§impl BitAndAssign<&f64x2> for f64x2
impl BitAndAssign<&f64x2> for f64x2
source§fn bitand_assign(&mut self, rhs: &f64x2)
fn bitand_assign(&mut self, rhs: &f64x2)
Performs the
&=
operation. Read moresource§impl BitAndAssign for f64x2
impl BitAndAssign for f64x2
source§fn bitand_assign(&mut self, rhs: f64x2)
fn bitand_assign(&mut self, rhs: f64x2)
Performs the
&=
operation. Read moresource§impl BitOrAssign<&f64x2> for f64x2
impl BitOrAssign<&f64x2> for f64x2
source§fn bitor_assign(&mut self, rhs: &f64x2)
fn bitor_assign(&mut self, rhs: &f64x2)
Performs the
|=
operation. Read moresource§impl BitOrAssign for f64x2
impl BitOrAssign for f64x2
source§fn bitor_assign(&mut self, rhs: f64x2)
fn bitor_assign(&mut self, rhs: f64x2)
Performs the
|=
operation. Read moresource§impl BitXorAssign<&f64x2> for f64x2
impl BitXorAssign<&f64x2> for f64x2
source§fn bitxor_assign(&mut self, rhs: &f64x2)
fn bitxor_assign(&mut self, rhs: &f64x2)
Performs the
^=
operation. Read moresource§impl BitXorAssign for f64x2
impl BitXorAssign for f64x2
source§fn bitxor_assign(&mut self, rhs: f64x2)
fn bitxor_assign(&mut self, rhs: f64x2)
Performs the
^=
operation. Read moresource§impl DivAssign<&f64x2> for f64x2
impl DivAssign<&f64x2> for f64x2
source§fn div_assign(&mut self, rhs: &f64x2)
fn div_assign(&mut self, rhs: &f64x2)
Performs the
/=
operation. Read moresource§impl DivAssign for f64x2
impl DivAssign for f64x2
source§fn div_assign(&mut self, rhs: f64x2)
fn div_assign(&mut self, rhs: f64x2)
Performs the
/=
operation. Read moresource§impl MulAssign<&f64x2> for f64x2
impl MulAssign<&f64x2> for f64x2
source§fn mul_assign(&mut self, rhs: &f64x2)
fn mul_assign(&mut self, rhs: &f64x2)
Performs the
*=
operation. Read moresource§impl MulAssign for f64x2
impl MulAssign for f64x2
source§fn mul_assign(&mut self, rhs: f64x2)
fn mul_assign(&mut self, rhs: f64x2)
Performs the
*=
operation. Read moresource§impl PartialEq for f64x2
impl PartialEq for f64x2
source§impl SubAssign<&f64x2> for f64x2
impl SubAssign<&f64x2> for f64x2
source§fn sub_assign(&mut self, rhs: &f64x2)
fn sub_assign(&mut self, rhs: &f64x2)
Performs the
-=
operation. Read moresource§impl SubAssign for f64x2
impl SubAssign for f64x2
source§fn sub_assign(&mut self, rhs: f64x2)
fn sub_assign(&mut self, rhs: f64x2)
Performs the
-=
operation. Read moreimpl Copy for f64x2
impl Pod for f64x2
impl StructuralPartialEq for f64x2
Auto Trait Implementations§
impl RefUnwindSafe for f64x2
impl Send for f64x2
impl Sync for f64x2
impl Unpin for f64x2
impl UnwindSafe for f64x2
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<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
§type Bits = T
type Bits = T
Self
must have the same layout as the specified Bits
except for
the possible invalid bit patterns being checked during
is_valid_bit_pattern
.source§fn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
If this function returns true, then it must be valid to reinterpret
bits
as &Self
.