Trait rug::ops::AddRound
[−]
[src]
pub trait AddRound<Rhs = Self> { type Round; type Ordering; type Output; fn add_round(
self,
rhs: Rhs,
round: Self::Round
) -> (Self::Output, Self::Ordering); }
Addition 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 addition.
Required Methods
fn add_round(
self,
rhs: Rhs,
round: Self::Round
) -> (Self::Output, Self::Ordering)
self,
rhs: Rhs,
round: Self::Round
) -> (Self::Output, Self::Ordering)
Performs the addition.
Examples
use rug::Float; use rug::float::Round; use rug::ops::AddRound; use std::cmp::Ordering; // only four significant bits let minus_three = Float::from((-3, 4)); let (f, dir) = minus_three.add_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> AddRound<&'a Float> for Float
impl AddRound<Float> for Float
impl<'a> AddRound<Float> for &'a Float
impl<'a> AddRound<&'a Integer> for Float
impl AddRound<Integer> for Float
impl<'a> AddRound<Float> for &'a Integer
impl AddRound<Float> for Integer
impl<'a> AddRound<&'a Rational> for Float
impl AddRound<Rational> for Float
impl<'a> AddRound<Float> for &'a Rational
impl AddRound<Float> for Rational
impl AddRound<i32> for Float
impl AddRound<Float> for i32
impl AddRound<u32> for Float
impl AddRound<Float> for u32
impl AddRound<f32> for Float
impl AddRound<Float> for f32
impl AddRound<f64> for Float
impl AddRound<Float> for f64
impl<'a> AddRound<MulRef<'a>> for Float
impl<'a> AddRound<&'a Complex> for Complex
impl AddRound<Complex> for Complex
impl<'a> AddRound<Complex> for &'a Complex
impl<'a> AddRound<&'a Float> for Complex
impl AddRound<Float> for Complex
impl<'a> AddRound<Complex> for &'a Float
impl AddRound<Complex> for Float
impl AddRound<u32> for Complex
impl AddRound<Complex> for u32
impl AddRound<i32> for Complex
impl AddRound<Complex> for i32
impl<'a> AddRound<MulRef<'a>> for Complex