pub struct f64x2(/* private fields */);
Implementations§
source§impl f64x2
impl f64x2
sourcepub fn vmin(self, rhs: Self) -> Self
pub fn vmin(self, rhs: Self) -> Self
Returns a vector with the smallest/minimum value of each lane
sourcepub fn vmax(self, rhs: Self) -> Self
pub fn vmax(self, rhs: Self) -> Self
Returns a vector with the biggest/maximum value of each lane
sourcepub fn mul_add(self, rhs: Self, add: Self) -> Self
pub fn mul_add(self, rhs: Self, add: Self) -> Self
Fused multiply-add. Computes (self * a) + b
with only one rounding error.
§Compatibility
The fused multiply-add operation is only available on arm/aarch64 and x86/x86-64 with the target feature fma
.
For the rest of targets, a regular multiplication and addition are performed
§impl f64x2
impl f64x2
pub fn new(a: [f64; 2]) -> Self
pub fn filled_with(a: f64) -> f64x2
pub fn filled_with(a: f64) -> f64x2
Creates a new vector with all lanes filled with the provided value
pub fn into_array(self) -> [f64; 2]
pub fn into_array(self) -> [f64; 2]
Returns an array with the vector’s values
§impl f64x2
impl f64x2
pub unsafe fn get_unchecked(&self, idx: usize) -> &f64
pub unsafe fn get_unchecked(&self, idx: usize) -> &f64
Returns a reference to the value in the specified lane without checking if it’s within range
pub unsafe fn get_mut_unchecked(&mut self, idx: usize) -> &mut f64
pub unsafe fn get_mut_unchecked(&mut self, idx: usize) -> &mut f64
Returns a mutable reference to the value in the specified lane without checking if it’s within range
pub unsafe fn index_unchecked(&self, idx: usize) -> &f64
👎Deprecated since 0.1.4: use get_unchecked
instead
pub unsafe fn index_unchecked(&self, idx: usize) -> &f64
get_unchecked
insteadReturns a reference to the value in the specified lane without checking if it’s within range
pub unsafe fn index_mut_unchecked(&mut self, idx: usize) -> &mut f64
👎Deprecated since 0.1.4: use get_mut_unchecked
instead
pub unsafe fn index_mut_unchecked(&mut self, idx: usize) -> &mut f64
get_mut_unchecked
insteadReturns a mutable reference to the value in the specified lane without checking if it’s within range
Trait Implementations§
source§impl AddAssign<f64> for f64x2
impl AddAssign<f64> for f64x2
source§fn add_assign(&mut self, rhs: f64)
fn add_assign(&mut self, rhs: f64)
+=
operation. Read moresource§impl AddAssign for f64x2
impl AddAssign for f64x2
source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
+=
operation. Read moresource§impl DivAssign<f64> for f64x2
impl DivAssign<f64> for f64x2
source§fn div_assign(&mut self, rhs: f64)
fn div_assign(&mut self, rhs: f64)
/=
operation. Read moresource§impl DivAssign for f64x2
impl DivAssign for f64x2
source§fn div_assign(&mut self, rhs: Self)
fn div_assign(&mut self, rhs: Self)
/=
operation. Read moresource§impl MulAssign<f64> for f64x2
impl MulAssign<f64> for f64x2
source§fn mul_assign(&mut self, rhs: f64)
fn mul_assign(&mut self, rhs: f64)
*=
operation. Read moresource§impl MulAssign for f64x2
impl MulAssign for f64x2
source§fn mul_assign(&mut self, rhs: Self)
fn mul_assign(&mut self, rhs: Self)
*=
operation. Read moresource§impl SubAssign<f64> for f64x2
impl SubAssign<f64> for f64x2
source§fn sub_assign(&mut self, rhs: f64)
fn sub_assign(&mut self, rhs: f64)
-=
operation. Read moresource§impl SubAssign for f64x2
impl SubAssign for f64x2
source§fn sub_assign(&mut self, rhs: Self)
fn sub_assign(&mut self, rhs: Self)
-=
operation. Read more