fn log_numeric<F>(mut a: Numeric, logic: F, name: &'static str) -> Result<Numeric, EvalError>
where
    F: Fn(&mut dec::Context<Numeric>, &mut Numeric),
{
    log_guard_numeric(&a, name)?;
    let mut cx = numeric::cx_datum();
    logic(&mut cx, &mut a);
    numeric::munge_numeric(&mut a).unwrap();
    Ok(a)
}
// From the `decNumber` library's documentation:
// > Inexact results will almost always be correctly rounded, but may be up to 1
// > ulp (unit in last place) in error in rare cases.
//
// See decNumberLog10 documentation at http://speleotrove.com/decimal/dnnumb.html
From the `decNumber` library's documentation:
> Inexact results will almost always be correctly rounded, but may be up to 1
> ulp (unit in last place) in error in rare cases.


From the ` decNumber ` library ' s documentation : > Inexact results will almost always be correctly rounded but may be up to 1 > ulp ( unit in last place ) in error in rare cases .
fn log_numeric<F>(mut a: Numeric, logic: F, name: &'static str) -> Result<Numeric, EvalError>
where
    F: Fn(&mut dec::Context<Numeric>, &mut Numeric),
{
    log_guard_numeric(&a, name)?;
    let mut cx = numeric::cx_datum();
    logic(&mut cx, &mut a);
    numeric::munge_numeric(&mut a).unwrap();
    Ok(a)
}
fn log_numeric < F > ( mut a : Numeric , logic : F , name : & ' static str ) -> Result < Numeric , EvalError > where F : Fn ( & mut dec :: Context < Numeric > , & mut Numeric ) , { log_guard_numeric ( & a , name ) ? ; let mut cx = numeric :: cx_datum ( ) ; logic ( & mut cx , & mut a ) ; numeric :: munge_numeric ( & mut a ) . unwrap ( ) ; Ok ( a ) }
From the `decNumber` library's documentation:
> Inexact results will almost always be correctly rounded, but may be up to 1
> ulp (unit in last place) in error in rare cases.
From the ` decNumber ` library ' s documentation : > Inexact results will almost always be correctly rounded but may be up to 1 > ulp ( unit in last place ) in error in rare cases .
a
Numeric
logic
F
name
&'static str
a
Numeric
logic
F
name
&'static str