[][src]Struct fastfloat::Fast

pub struct Fast<F>(pub F);

“fast-math” wrapper for f32 and f64.

The Fast type enforces no invariant and can hold any f32, f64 values. Type synonyms F32 and F64 are provided for convience. Values can be unwrapped with .0.

Methods

impl<F: Float> Fast<F>
[src]

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

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

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

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

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

pub fn mul_add(self, a: Self, b: Self) -> Self
[src]

pub fn powi(self, n: i32) -> Self
[src]

pub fn powf(self, n: F) -> Self
[src]

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

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

Trait Implementations

impl<F: Float> Eq for Fast<F>
[src]

impl<F: PartialOrd> PartialOrd<Fast<F>> for Fast<F>
[src]

impl<F: Float> PartialOrd<F> for Fast<F>
[src]

#[must_use]
fn lt(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests less than (for self and other) and is used by the < operator. Read more

#[must_use]
fn le(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

#[must_use]
fn gt(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests greater than (for self and other) and is used by the > operator. Read more

#[must_use]
fn ge(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl<F: Copy> Copy for Fast<F>
[src]

impl<F: Default> Default for Fast<F>
[src]

impl<F: PartialEq> PartialEq<Fast<F>> for Fast<F>
[src]

impl<F: Float> PartialEq<F> for Fast<F>
[src]

#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests for !=.

impl<F: Clone> Clone for Fast<F>
[src]

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

Performs copy-assignment from source. Read more

impl<F: Float> Ord for Fast<F>
[src]

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

Compares and returns the maximum of two values. Read more

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

Compares and returns the minimum of two values. Read more

impl<F: Debug> Debug for Fast<F>
[src]

impl<F: LowerExp> LowerExp for Fast<F>
[src]

impl<F: Display> Display for Fast<F>
[src]

impl<F: UpperExp> UpperExp for Fast<F>
[src]

impl<F: Float> Add<F> for Fast<F>
[src]

type Output = Self

The resulting type after applying the + operator.

impl Add<Fast<f32>> for f32
[src]

type Output = F32

The resulting type after applying the + operator.

impl Add<Fast<f64>> for f64
[src]

type Output = F64

The resulting type after applying the + operator.

impl<F: Float> Add<Fast<F>> for Fast<F>
[src]

type Output = Self

The resulting type after applying the + operator.

impl<F: Float> Sub<F> for Fast<F>
[src]

type Output = Self

The resulting type after applying the - operator.

impl Sub<Fast<f32>> for f32
[src]

type Output = F32

The resulting type after applying the - operator.

impl Sub<Fast<f64>> for f64
[src]

type Output = F64

The resulting type after applying the - operator.

impl<F: Float> Sub<Fast<F>> for Fast<F>
[src]

type Output = Self

The resulting type after applying the - operator.

impl<F: Float> Mul<F> for Fast<F>
[src]

type Output = Self

The resulting type after applying the * operator.

impl Mul<Fast<f32>> for f32
[src]

type Output = F32

The resulting type after applying the * operator.

impl Mul<Fast<f64>> for f64
[src]

type Output = F64

The resulting type after applying the * operator.

impl<F: Float> Mul<Fast<F>> for Fast<F>
[src]

type Output = Self

The resulting type after applying the * operator.

impl<F: Float> Div<F> for Fast<F>
[src]

type Output = Self

The resulting type after applying the / operator.

impl Div<Fast<f32>> for f32
[src]

type Output = F32

The resulting type after applying the / operator.

impl Div<Fast<f64>> for f64
[src]

type Output = F64

The resulting type after applying the / operator.

impl<F: Float> Div<Fast<F>> for Fast<F>
[src]

type Output = Self

The resulting type after applying the / operator.

impl<F: Float> Rem<F> for Fast<F>
[src]

type Output = Self

The resulting type after applying the % operator.

impl Rem<Fast<f32>> for f32
[src]

type Output = F32

The resulting type after applying the % operator.

impl Rem<Fast<f64>> for f64
[src]

type Output = F64

The resulting type after applying the % operator.

impl<F: Float> Rem<Fast<F>> for Fast<F>
[src]

type Output = Self

The resulting type after applying the % operator.

impl<F: Float> Neg for Fast<F>
[src]

type Output = Self

The resulting type after applying the - operator.

impl<F: Float> AddAssign<Fast<F>> for Fast<F>
[src]

impl<F: Float> AddAssign<F> for Fast<F>
[src]

impl<F: Float> SubAssign<Fast<F>> for Fast<F>
[src]

impl<F: Float> SubAssign<F> for Fast<F>
[src]

impl<F: Float> MulAssign<Fast<F>> for Fast<F>
[src]

impl<F: Float> MulAssign<F> for Fast<F>
[src]

impl<F: Float> DivAssign<Fast<F>> for Fast<F>
[src]

impl<F: Float> DivAssign<F> for Fast<F>
[src]

impl<F: Float> RemAssign<Fast<F>> for Fast<F>
[src]

impl<F: Float> RemAssign<F> for Fast<F>
[src]

impl Sum<Fast<f32>> for F32
[src]

impl Sum<Fast<f64>> for F64
[src]

impl<'a> Sum<&'a Fast<f32>> for F32
[src]

impl<'a> Sum<&'a Fast<f64>> for F64
[src]

impl<F: Float> Zero for Fast<F>
[src]

impl<F: Float> One for Fast<F>
[src]

Auto Trait Implementations

impl<F> Send for Fast<F> where
    F: Send

impl<F> Sync for Fast<F> where
    F: Sync

Blanket Implementations

impl<T> From for T
[src]

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

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> ToString for T where
    T: Display + ?Sized
[src]

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

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

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

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

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

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

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

impl<T, Rhs, Output> NumOps for T where
    T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>, 
[src]

impl<T, Rhs> NumAssignOps for T where
    T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>, 
[src]