Struct rustc_apfloat::ppc::DoubleFloat[−][src]

#[must_use]
pub struct DoubleFloat<F>(F, F);

Trait Implementations

impl<F> Add<DoubleFloat<F>> for DoubleFloat<F> where
    Self: Float, 
[src]

type Output = StatusAnd<Self>

The resulting type after applying the + operator.

fn add(self, rhs: Self) -> StatusAnd<Self>[src]

Performs the + operation. Read more

impl<F> AddAssign<DoubleFloat<F>> for DoubleFloat<F> where
    Self: Float, 
[src]

fn add_assign(&mut self, rhs: Self)[src]

Performs the += operation. Read more

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

fn clone(&self) -> DoubleFloat<F>[src]

Returns a copy of the value. Read more

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

Performs copy-assignment from source. Read more

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

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl<F> Default for DoubleFloat<F> where
    Self: Float, 
[src]

fn default() -> Self[src]

Returns the “default value” for a type. Read more

impl<F: FloatConvert<IeeeFloat<FallbackS<F>>>> Display for DoubleFloat<F>[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl<F> Div<DoubleFloat<F>> for DoubleFloat<F> where
    Self: Float, 
[src]

type Output = StatusAnd<Self>

The resulting type after applying the / operator.

fn div(self, rhs: Self) -> StatusAnd<Self>[src]

Performs the / operation. Read more

impl<F> DivAssign<DoubleFloat<F>> for DoubleFloat<F> where
    Self: Float, 
[src]

fn div_assign(&mut self, rhs: Self)[src]

Performs the /= operation. Read more

impl<F: FloatConvert<IeeeFloat<FallbackS<F>>>> Float for DoubleFloat<F> where
    Self: From<IeeeFloat<FallbackS<F>>>, 
[src]

const BITS: usize[src]

Total number of bits in the in-memory format.

const PRECISION: usize[src]

Number of bits in the significand. This includes the integer bit.

const MAX_EXP: ExpInt[src]

The largest E such that 2E is representable; this matches the definition of IEEE 754. Read more

const MIN_EXP: ExpInt[src]

The smallest E such that 2E is a normalized number; this matches the definition of IEEE 754. Read more

const ZERO: Self[src]

Positive Zero.

const INFINITY: Self[src]

Positive Infinity.

const NAN: Self[src]

NaN (Not a Number).

fn qnan(payload: Option<u128>) -> Self[src]

Factory for QNaN values.

fn snan(payload: Option<u128>) -> Self[src]

Factory for SNaN values.

fn largest() -> Self[src]

Largest finite number.

const SMALLEST: Self[src]

Smallest (by magnitude) finite number. Might be denormalized, which implies a relative loss of precision. Read more

fn smallest_normalized() -> Self[src]

Smallest (by magnitude) normalized finite number.

fn add_r(self, rhs: Self, round: Round) -> StatusAnd<Self>[src]

fn mul_r(self, rhs: Self, round: Round) -> StatusAnd<Self>[src]

fn mul_add_r(
    self,
    multiplicand: Self,
    addend: Self,
    round: Round
) -> StatusAnd<Self>
[src]

fn div_r(self, rhs: Self, round: Round) -> StatusAnd<Self>[src]

fn c_fmod(self, rhs: Self) -> StatusAnd<Self>[src]

C fmod, or llvm frem.

fn round_to_integral(self, round: Round) -> StatusAnd<Self>[src]

fn next_up(self) -> StatusAnd<Self>[src]

IEEE-754R 2008 5.3.1: nextUp.

fn from_bits(input: u128) -> Self[src]

fn from_u128_r(input: u128, round: Round) -> StatusAnd<Self>[src]

fn from_str_r(s: &str, round: Round) -> Result<StatusAnd<Self>, ParseError>[src]

fn to_bits(self) -> u128[src]

fn to_u128_r(
    self,
    width: usize,
    round: Round,
    is_exact: &mut bool
) -> StatusAnd<u128>
[src]

fn cmp_abs_normal(self, rhs: Self) -> Ordering[src]

fn bitwise_eq(self, rhs: Self) -> bool[src]

Bitwise comparison for equality (QNaNs compare equal, 0!=-0).

fn is_negative(self) -> bool[src]

IEEE-754R isSignMinus: Returns whether the current value is negative. Read more

fn is_denormal(self) -> bool[src]

IEEE-754R isSubnormal(): Returns whether the float is a denormal. Read more

fn is_signaling(self) -> bool[src]

Returns true if the float is a signaling NaN.

fn category(self) -> Category[src]

fn get_exact_inverse(self) -> Option<Self>[src]

If this value has an exact multiplicative inverse, return it.

fn ilogb(self) -> ExpInt[src]

Returns the exponent of the internal representation of the Float. Read more

fn scalbn_r(self, exp: ExpInt, round: Round) -> Self[src]

Returns: self * 2exp for integral exponents. Equivalent to C standard library function ldexp. Read more

fn frexp_r(self, exp: &mut ExpInt, round: Round) -> Self[src]

Equivalent to C standard library function with the same name. Read more

fn sub_r(self, rhs: Self, round: Round) -> StatusAnd<Self>[src]

fn mul_add(self, multiplicand: Self, addend: Self) -> StatusAnd<Self>[src]

fn ieee_rem(self, rhs: Self) -> StatusAnd<Self>[src]

IEEE remainder.

fn next_down(self) -> StatusAnd<Self>[src]

IEEE-754R 2008 5.3.1: nextDown. Read more

fn abs(self) -> Self[src]

fn copy_sign(self, rhs: Self) -> Self[src]

fn from_i128_r(input: i128, round: Round) -> StatusAnd<Self>[src]

fn from_i128(input: i128) -> StatusAnd<Self>[src]

fn from_u128(input: u128) -> StatusAnd<Self>[src]

fn to_i128_r(
    self,
    width: usize,
    round: Round,
    is_exact: &mut bool
) -> StatusAnd<i128>
[src]

Converts a floating point number to an integer according to the rounding mode. In case of an invalid operation exception, deterministic values are returned, namely zero for NaNs and the minimal or maximal value respectively for underflow or overflow. If the rounded value is in range but the floating point number is not the exact integer, the C standard doesn’t require an inexact exception to be raised. IEEE-854 does require it so we do that. Read more

fn to_i128(self, width: usize) -> StatusAnd<i128>[src]

fn to_u128(self, width: usize) -> StatusAnd<u128>[src]

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

Implements IEEE minNum semantics. Returns the smaller of the 2 arguments if both are not NaN. If either argument is a NaN, returns the other argument. Read more

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

Implements IEEE maxNum semantics. Returns the larger of the 2 arguments if both are not NaN. If either argument is a NaN, returns the other argument. Read more

fn is_normal(self) -> bool[src]

IEEE-754R isNormal: Returns whether the current value is normal. Read more

fn is_finite(self) -> bool[src]

Returns true if the current value is zero, subnormal, or normal. Read more

fn is_zero(self) -> bool[src]

Returns true if the float is plus or minus zero.

fn is_infinite(self) -> bool[src]

IEEE-754R isInfinite(): Returns whether the float is infinity.

fn is_nan(self) -> bool[src]

Returns true if the float is a quiet or signaling NaN.

fn is_non_zero(self) -> bool[src]

fn is_finite_non_zero(self) -> bool[src]

fn is_pos_zero(self) -> bool[src]

fn is_neg_zero(self) -> bool[src]

fn is_smallest(self) -> bool[src]

Returns true if the number has the smallest possible non-zero magnitude in the current semantics. Read more

fn is_largest(self) -> bool[src]

Returns true if the number has the largest possible finite magnitude in the current semantics. Read more

fn is_integer(self) -> bool[src]

Returns true if the number is an exact integer.

fn scalbn(self, exp: ExpInt) -> Self[src]

fn frexp(self, exp: &mut ExpInt) -> Self[src]

impl<F: FloatConvert<Self>> From<DoubleFloat<F>> for IeeeFloat<FallbackS<F>>[src]

fn from(DoubleFloat: DoubleFloat<F>) -> Self[src]

Performs the conversion.

impl<F: Float> From<IeeeFloat<FallbackS<F>>> for DoubleFloat<F> where
    F: FloatConvert<IeeeFloat<FallbackExtendedS<F>>>,
    IeeeFloat<FallbackExtendedS<F>>: FloatConvert<F>, 
[src]

fn from(x: IeeeFloat<FallbackS<F>>) -> Self[src]

Performs the conversion.

impl<F> FromStr for DoubleFloat<F> where
    Self: Float, 
[src]

type Err = ParseError

The associated error which can be returned from parsing.

fn from_str(s: &str) -> Result<Self, ParseError>[src]

Parses a string s to return a value of this type. Read more

impl<F> Mul<DoubleFloat<F>> for DoubleFloat<F> where
    Self: Float, 
[src]

type Output = StatusAnd<Self>

The resulting type after applying the * operator.

fn mul(self, rhs: Self) -> StatusAnd<Self>[src]

Performs the * operation. Read more

impl<F> MulAssign<DoubleFloat<F>> for DoubleFloat<F> where
    Self: Float, 
[src]

fn mul_assign(&mut self, rhs: Self)[src]

Performs the *= operation. Read more

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

type Output = Self

The resulting type after applying the - operator.

fn neg(self) -> Self[src]

Performs the unary - operation. Read more

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

fn eq(&self, other: &DoubleFloat<F>) -> bool[src]

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, other: &DoubleFloat<F>) -> bool[src]

This method tests for !=.

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

fn partial_cmp(&self, other: &DoubleFloat<F>) -> Option<Ordering>[src]

This method returns an ordering between self and other values if one exists. Read more

#[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> Rem<DoubleFloat<F>> for DoubleFloat<F> where
    Self: Float, 
[src]

type Output = StatusAnd<Self>

The resulting type after applying the % operator.

fn rem(self, rhs: Self) -> StatusAnd<Self>[src]

Performs the % operation. Read more

impl<F> RemAssign<DoubleFloat<F>> for DoubleFloat<F> where
    Self: Float, 
[src]

fn rem_assign(&mut self, rhs: Self)[src]

Performs the %= operation. Read more

impl<F> Sub<DoubleFloat<F>> for DoubleFloat<F> where
    Self: Float, 
[src]

type Output = StatusAnd<Self>

The resulting type after applying the - operator.

fn sub(self, rhs: Self) -> StatusAnd<Self>[src]

Performs the - operation. Read more

impl<F> SubAssign<DoubleFloat<F>> for DoubleFloat<F> where
    Self: Float, 
[src]

fn sub_assign(&mut self, rhs: Self)[src]

Performs the -= operation. Read more

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

impl<F> StructuralPartialEq for DoubleFloat<F>[src]

Auto Trait Implementations

impl<F> Send for DoubleFloat<F> where
    F: Send, 

impl<F> Sync for DoubleFloat<F> where
    F: Sync, 

impl<F> Unpin for DoubleFloat<F> where
    F: Unpin, 

Blanket Implementations

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

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

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

pub fn into(self) -> U[src]

Performs the conversion.

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

type Owned = T

The resulting type after obtaining ownership.

pub fn to_owned(&self) -> T[src]

Creates owned data from borrowed data, usually by cloning. Read more

pub fn clone_into(&self, target: &mut T)[src]

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

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

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

pub default fn to_string(&self) -> String[src]

Converts the given value to a String. Read more

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

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

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

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

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.