Primitive Type f64 [-] [+]

Operations and constants for 64-bits floats (f64 type)

Trait Implementations

impl Float for f64

fn nan() -> f64

fn infinity() -> f64

fn neg_infinity() -> f64

fn zero() -> f64

fn neg_zero() -> f64

fn one() -> f64

fn is_nan(self) -> bool

Returns true if the number is NaN.

fn is_infinite(self) -> bool

Returns true if the number is infinite.

fn is_finite(self) -> bool

Returns true if the number is neither infinite or NaN.

fn is_normal(self) -> bool

Returns true if the number is neither zero, infinite, subnormal or NaN.

fn classify(self) -> Fp

Returns the floating point category of the number. If only one property is going to be tested, it is generally faster to use the specific predicate instead.

fn mantissa_digits(_: Option<f64>) -> usize

fn digits(_: Option<f64>) -> usize

fn epsilon() -> f64

fn min_exp(_: Option<f64>) -> isize

fn max_exp(_: Option<f64>) -> isize

fn min_10_exp(_: Option<f64>) -> isize

fn max_10_exp(_: Option<f64>) -> isize

fn min_value() -> f64

fn min_pos_value(_: Option<f64>) -> f64

fn max_value() -> f64

fn integer_decode(self) -> (u64, i16, i8)

Returns the mantissa, exponent and sign as integers.

fn floor(self) -> f64

Rounds towards minus infinity.

fn ceil(self) -> f64

Rounds towards plus infinity.

fn round(self) -> f64

Rounds to nearest integer. Rounds half-way cases away from zero.

fn trunc(self) -> f64

Returns the integer part of the number (rounds towards zero).

fn fract(self) -> f64

The fractional part of the number, satisfying:

extern crate core; fn main() { use core::num::Float; let x = 1.65f64; assert!(x == x.trunc() + x.fract()) }
use core::num::Float;

let x = 1.65f64;
assert!(x == x.trunc() + x.fract())

fn abs(self) -> f64

Computes the absolute value of self. Returns Float::nan() if the number is Float::nan().

fn signum(self) -> f64

Returns a number that represents the sign of self.

  • 1.0 if the number is positive, +0.0 or Float::infinity()
  • -1.0 if the number is negative, -0.0 or Float::neg_infinity()
  • Float::nan() if the number is Float::nan()

fn is_positive(self) -> bool

Returns true if self is positive, including +0.0 and Float::infinity().

fn is_negative(self) -> bool

Returns true if self is negative, including -0.0 and Float::neg_infinity().

fn mul_add(self, a: f64, b: f64) -> f64

Fused multiply-add. Computes (self * a) + b with only one rounding error. This produces a more accurate result with better performance than a separate multiplication operation followed by an add.

fn recip(self) -> f64

Returns the reciprocal (multiplicative inverse) of the number.

fn powf(self, n: f64) -> f64

fn powi(self, n: i32) -> f64

fn sqrt(self) -> f64

fn rsqrt(self) -> f64

fn exp(self) -> f64

Returns the exponential of the number.

fn exp2(self) -> f64

Returns 2 raised to the power of the number.

fn ln(self) -> f64

Returns the natural logarithm of the number.

fn log(self, base: f64) -> f64

Returns the logarithm of the number with respect to an arbitrary base.

fn log2(self) -> f64

Returns the base 2 logarithm of the number.

fn log10(self) -> f64

Returns the base 10 logarithm of the number.

fn to_degrees(self) -> f64

Converts to degrees, assuming the number is in radians.

fn to_radians(self) -> f64

Converts to radians, assuming the number is in degrees.

impl ToPrimitive for f64

fn to_int(&self) -> Option<isize>

fn to_i8(&self) -> Option<i8>

fn to_i16(&self) -> Option<i16>

fn to_i32(&self) -> Option<i32>

fn to_i64(&self) -> Option<i64>

fn to_uint(&self) -> Option<usize>

fn to_u8(&self) -> Option<u8>

fn to_u16(&self) -> Option<u16>

fn to_u32(&self) -> Option<u32>

fn to_u64(&self) -> Option<u64>

fn to_f32(&self) -> Option<f32>

fn to_f64(&self) -> Option<f64>

impl FromPrimitive for f64

fn from_int(n: isize) -> Option<f64>

fn from_i8(n: i8) -> Option<f64>

fn from_i16(n: i16) -> Option<f64>

fn from_i32(n: i32) -> Option<f64>

fn from_i64(n: i64) -> Option<f64>

fn from_uint(n: usize) -> Option<f64>

fn from_u8(n: u8) -> Option<f64>

fn from_u16(n: u16) -> Option<f64>

fn from_u32(n: u32) -> Option<f64>

fn from_u64(n: u64) -> Option<f64>

fn from_f32(n: f32) -> Option<f64>

fn from_f64(n: f64) -> Option<f64>

impl NumCast for f64

fn from<N: ToPrimitive>(n: N) -> Option<f64>

impl FromStr for f64

type Err = ParseFloatError

fn from_str(src: &str) -> Result<f64, ParseFloatError>

Convert a string in base 10 to a float. Accepts an optional decimal exponent.

This function accepts strings such as

  • '3.14'
  • '+3.14', equivalent to '3.14'
  • '-3.14'
  • '2.5E10', or equivalently, '2.5e10'
  • '2.5E-10'
  • '.' (understood as 0)
  • '5.'
  • '.5', or, equivalently, '0.5'
  • '+inf', 'inf', '-inf', 'NaN'

Leading and trailing whitespace represent an error.

Arguments

  • src - A string

Return value

None if the string did not represent a valid number. Otherwise, Some(n) where n is the floating-point number represented by src.

impl FromStrRadix for f64

type Err = ParseFloatError

fn from_str_radix(src: &str, radix: u32) -> Result<f64, ParseFloatError>

Convert a string in a given base to a float.

Due to possible conflicts, this function does not accept the special values inf, -inf, +inf and NaN, nor does it recognize exponents of any kind.

Leading and trailing whitespace represent an error.

Arguments

  • src - A string
  • radix - The base to use. Must lie in the range [2 .. 36]

Return value

None if the string did not represent a valid number. Otherwise, Some(n) where n is the floating-point number represented by src.

impl Add for f64

type Output = f64

fn add(self, other: f64) -> f64

impl<'a> Add<f64> for &'a f64

type Output = <f64 as Add<f64>>::Output

fn add(self, other: f64) -> <f64 as Add<f64>>::Output

impl<'a> Add<&'a f64> for f64

type Output = <f64 as Add<f64>>::Output

fn add(self, other: &'a f64) -> <f64 as Add<f64>>::Output

impl<'a, 'b> Add<&'a f64> for &'b f64

type Output = <f64 as Add<f64>>::Output

fn add(self, other: &'a f64) -> <f64 as Add<f64>>::Output

impl Sub for f64

type Output = f64

fn sub(self, other: f64) -> f64

impl<'a> Sub<f64> for &'a f64

type Output = <f64 as Sub<f64>>::Output

fn sub(self, other: f64) -> <f64 as Sub<f64>>::Output

impl<'a> Sub<&'a f64> for f64

type Output = <f64 as Sub<f64>>::Output

fn sub(self, other: &'a f64) -> <f64 as Sub<f64>>::Output

impl<'a, 'b> Sub<&'a f64> for &'b f64

type Output = <f64 as Sub<f64>>::Output

fn sub(self, other: &'a f64) -> <f64 as Sub<f64>>::Output

impl Mul for f64

type Output = f64

fn mul(self, other: f64) -> f64

impl<'a> Mul<f64> for &'a f64

type Output = <f64 as Mul<f64>>::Output

fn mul(self, other: f64) -> <f64 as Mul<f64>>::Output

impl<'a> Mul<&'a f64> for f64

type Output = <f64 as Mul<f64>>::Output

fn mul(self, other: &'a f64) -> <f64 as Mul<f64>>::Output

impl<'a, 'b> Mul<&'a f64> for &'b f64

type Output = <f64 as Mul<f64>>::Output

fn mul(self, other: &'a f64) -> <f64 as Mul<f64>>::Output

impl Div for f64

type Output = f64

fn div(self, other: f64) -> f64

impl<'a> Div<f64> for &'a f64

type Output = <f64 as Div<f64>>::Output

fn div(self, other: f64) -> <f64 as Div<f64>>::Output

impl<'a> Div<&'a f64> for f64

type Output = <f64 as Div<f64>>::Output

fn div(self, other: &'a f64) -> <f64 as Div<f64>>::Output

impl<'a, 'b> Div<&'a f64> for &'b f64

type Output = <f64 as Div<f64>>::Output

fn div(self, other: &'a f64) -> <f64 as Div<f64>>::Output

impl Rem for f64

type Output = f64

fn rem(self, other: f64) -> f64

impl<'a> Rem<f64> for &'a f64

type Output = <f64 as Rem<f64>>::Output

fn rem(self, other: f64) -> <f64 as Rem<f64>>::Output

impl<'a> Rem<&'a f64> for f64

type Output = <f64 as Rem<f64>>::Output

fn rem(self, other: &'a f64) -> <f64 as Rem<f64>>::Output

impl<'a, 'b> Rem<&'a f64> for &'b f64

type Output = <f64 as Rem<f64>>::Output

fn rem(self, other: &'a f64) -> <f64 as Rem<f64>>::Output

impl Neg for f64

type Output = f64

fn neg(self) -> f64

impl<'a> Neg for &'a f64

type Output = <f64 as Neg>::Output

fn neg(self) -> <f64 as Neg>::Output

impl PartialEq for f64

fn eq(&self, other: &f64) -> bool

fn ne(&self, other: &f64) -> bool

impl PartialOrd for f64

fn partial_cmp(&self, other: &f64) -> Option<Ordering>

fn lt(&self, other: &f64) -> bool

fn le(&self, other: &f64) -> bool

fn ge(&self, other: &f64) -> bool

fn gt(&self, other: &f64) -> bool

impl Clone for f64

fn clone(&self) -> f64

Return a deep copy of the value.

fn clone_from(&mut self, source: &Self)

impl Default for f64

fn default() -> f64

impl Debug for f64

fn fmt(&self, fmt: &mut Formatter) -> Result

impl Display for f64

fn fmt(&self, fmt: &mut Formatter) -> Result

impl LowerExp for f64

fn fmt(&self, fmt: &mut Formatter) -> Result

impl UpperExp for f64

fn fmt(&self, fmt: &mut Formatter) -> Result