Trait rug::ops::SubRound
[−]
[src]
pub trait SubRound<Rhs = Self> { type Round; type Ordering; type Output; fn sub_round(
self,
rhs: Rhs,
round: Self::Round
) -> (Self::Output, Self::Ordering); }
Subtraction with a specified rounding method.
Associated Types
type Round
The rounding method.
type Ordering
The direction from rounding.
type Output
The resulting type after the subtraction.
Required Methods
fn sub_round(
self,
rhs: Rhs,
round: Self::Round
) -> (Self::Output, Self::Ordering)
self,
rhs: Rhs,
round: Self::Round
) -> (Self::Output, Self::Ordering)
Performs the subtraction.
Examples
use rug::Float; use rug::float::Round; use rug::ops::SubRound; use std::cmp::Ordering; // only four significant bits let minus_three = Float::from((-3, 4)); let (f, dir) = minus_three.sub_round(0.3, Round::Nearest); // -3.3 rounded up to -3.25 assert_eq!(f, -3.25); assert_eq!(dir, Ordering::Greater);
Implementors
impl<'a> SubRound<&'a Float> for Float
impl SubRound<Float> for Float
impl<'a> SubRound<Float> for &'a Float
impl<'a> SubRound<&'a Integer> for Float
impl SubRound<Integer> for Float
impl<'a> SubRound<Float> for &'a Integer
impl SubRound<Float> for Integer
impl<'a> SubRound<&'a Rational> for Float
impl SubRound<Rational> for Float
impl<'a> SubRound<Float> for &'a Rational
impl SubRound<Float> for Rational
impl SubRound<i32> for Float
impl SubRound<Float> for i32
impl SubRound<u32> for Float
impl SubRound<Float> for u32
impl SubRound<f32> for Float
impl SubRound<Float> for f32
impl SubRound<f64> for Float
impl SubRound<Float> for f64
impl<'a> SubRound<&'a Complex> for Complex
impl SubRound<Complex> for Complex
impl<'a> SubRound<Complex> for &'a Complex
impl<'a> SubRound<&'a Float> for Complex
impl SubRound<Float> for Complex
impl<'a> SubRound<Complex> for &'a Float
impl SubRound<Complex> for Float
impl SubRound<u32> for Complex
impl SubRound<Complex> for u32
impl SubRound<i32> for Complex
impl SubRound<Complex> for i32