AssertFloatEq

Trait AssertFloatEq 

Source
pub trait AssertFloatEq<Rhs: ?Sized = Self>: FloatEq<Rhs> {
    type DebugAbsDiff: Debug + Sized + FloatEqDebugUlpsDiff;
    type DebugTol: Debug + FloatEqUlpsTol;

    // Required methods
    fn debug_abs_diff(&self, other: &Rhs) -> Self::DebugAbsDiff;
    fn debug_ulps_diff(&self, other: &Rhs) -> DebugUlpsDiff<Self::DebugAbsDiff>;
    fn debug_abs_tol(&self, other: &Rhs, tol: &Self::Tol) -> Self::DebugTol;
    fn debug_rmax_tol(&self, other: &Rhs, tol: &Self::Tol) -> Self::DebugTol;
    fn debug_rmin_tol(&self, other: &Rhs, tol: &Self::Tol) -> Self::DebugTol;
    fn debug_r1st_tol(&self, other: &Rhs, tol: &Self::Tol) -> Self::DebugTol;
    fn debug_r2nd_tol(&self, other: &Rhs, tol: &Self::Tol) -> Self::DebugTol;
    fn debug_ulps_tol(
        &self,
        other: &Rhs,
        tol: &UlpsTol<Self::Tol>,
    ) -> UlpsTol<Self::DebugTol>
       where UlpsTol<Self::DebugTol>: Sized;

    // Provided method
    fn debug_rel_tol(&self, other: &Rhs, tol: &Self::Tol) -> Self::DebugTol { ... }
}
Expand description

Debug context for when an assert fails.

This trait is used by assert_float_eq! and assert_float_ne!.

To implement this trait over a new type, see How to compare custom types.

Required Associated Types§

Source

type DebugAbsDiff: Debug + Sized + FloatEqDebugUlpsDiff

The absolute difference between two values, displayed to the user via fmt::Debug when an assert fails.

This is usually the wider of Self and Rhs.

Source

type DebugTol: Debug + FloatEqUlpsTol

The per-field tolerance value used for comparison between two values, displayed to the user via fmt::Debug when an assert fails.

This should match Self::Tol.

Required Methods§

Source

fn debug_abs_diff(&self, other: &Rhs) -> Self::DebugAbsDiff

Always positive absolute difference between two values.

Implementations should be the equivalent of:

(self - other).abs()
Source

fn debug_ulps_diff(&self, other: &Rhs) -> DebugUlpsDiff<Self::DebugAbsDiff>

Always positive absolute difference between two values in terms of ULPs.

For primitive values, this should be a partial function that returns:

  • Some(0) if both arguments are either 0.0 or -0.0
  • None if either argument is NaN
  • None if the arguments have differing signs
  • Some(bitwise-difference) otherwise

For composite types, this should return per-field recursively calculated results in order to present the most possible context to the user.

Implementations over primitive types should be the equivalent of (using f32 as an example):

if self == other {
    Some(0)
} else if self.is_nan() || other.is_nan() {
    None
} else if self.is_sign_positive() != other.is_sign_positive() {
    None
} else {
    let a = self.to_bits();
    let b = other.to_bits();
    let max = a.max(b);
    let min = a.min(b);
    Some(max - min)
}
Source

fn debug_abs_tol(&self, other: &Rhs, tol: &Self::Tol) -> Self::DebugTol

The tolerance used by an abs comparison, displayed when an assert fails.

Source

fn debug_rmax_tol(&self, other: &Rhs, tol: &Self::Tol) -> Self::DebugTol

The tolerance used by an rmax comparison, displayed when an assert fails.

Returns tol scaled by the magnitude of the larger operand.

Source

fn debug_rmin_tol(&self, other: &Rhs, tol: &Self::Tol) -> Self::DebugTol

The tolerance used by an rmin comparison, displayed when an assert fails.

Returns tol scaled by the magnitude of the smaller operand.

Source

fn debug_r1st_tol(&self, other: &Rhs, tol: &Self::Tol) -> Self::DebugTol

The tolerance used by an r1st comparison, displayed when an assert fails.

Returns tol scaled by the magnitude of the first operand.

Source

fn debug_r2nd_tol(&self, other: &Rhs, tol: &Self::Tol) -> Self::DebugTol

The tolerance used by an r2nd comparison, displayed when an assert fails.

Returns tol scaled by the magnitude of the second operand.

Source

fn debug_ulps_tol( &self, other: &Rhs, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>
where UlpsTol<Self::DebugTol>: Sized,

The tolerance used by an ulps comparison, displayed when an assert fails.

Provided Methods§

Source

fn debug_rel_tol(&self, other: &Rhs, tol: &Self::Tol) -> Self::DebugTol

The tolerance used by a rel comparison, displayed when an assert fails.

Equivalent to self.debug_rmax_tol(self, other, tol), there is no need to reimplement this for your own types.

Implementations on Foreign Types§

Source§

impl AssertFloatEq for f32

Source§

type DebugAbsDiff = f32

Source§

type DebugTol = <f32 as FloatEq>::Tol

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, _other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, _other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, _other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl AssertFloatEq for f64

Source§

type DebugAbsDiff = f64

Source§

type DebugTol = <f64 as FloatEq>::Tol

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, _other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, _other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, _other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl AssertFloatEq for ()

Source§

type DebugAbsDiff = ()

Source§

type DebugTol = ()

Source§

fn debug_abs_diff(&self, _other: &()) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, _other: &()) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, _other: &(), _tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, _other: &(), _tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, _other: &(), _tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, _other: &(), _tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, _other: &(), _tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, _other: &(), _tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A> AssertFloatEq for (A,)

Source§

type DebugAbsDiff = (<A as AssertFloatEq>::DebugAbsDiff,)

Source§

type DebugTol = (<A as AssertFloatEq>::DebugTol,)

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A, B> AssertFloatEq<[B]> for [A]

Source§

type DebugAbsDiff = Option<Vec<<A as AssertFloatEq<B>>::DebugAbsDiff>>

Source§

type DebugTol = Option<Vec<<A as AssertFloatEq<B>>::DebugTol>>

Source§

fn debug_abs_diff(&self, other: &[B]) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &[B]) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &[B], tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &[B], tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &[B], tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &[B], tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &[B], tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &[B], tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A, B> AssertFloatEq<Box<B>> for Box<A>
where A: AssertFloatEq<B> + Copy + ?Sized, B: Copy + ?Sized,

Source§

type DebugAbsDiff = <A as AssertFloatEq<B>>::DebugAbsDiff

Source§

type DebugTol = <A as AssertFloatEq<B>>::DebugTol

Source§

fn debug_abs_diff(&self, other: &Box<B>) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Box<B>) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Box<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Box<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Box<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Box<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Box<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Box<B>, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>
where UlpsTol<Self::DebugTol>: Sized,

Source§

impl<A, B> AssertFloatEq<LinkedList<B>> for LinkedList<A>
where A: AssertFloatEq<B> + Copy + ?Sized, B: Copy + ?Sized, A::Tol: Sized, A::DebugTol: Sized, UlpsTol<A::Tol>: Sized, UlpsTol<A::DebugTol>: Sized,

Source§

type DebugAbsDiff = Option<LinkedList<<A as AssertFloatEq<B>>::DebugAbsDiff>>

Source§

type DebugTol = Option<LinkedList<<A as AssertFloatEq<B>>::DebugTol>>

Source§

fn debug_abs_diff(&self, other: &LinkedList<B>) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff( &self, other: &LinkedList<B>, ) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol( &self, other: &LinkedList<B>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_rmax_tol( &self, other: &LinkedList<B>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_rmin_tol( &self, other: &LinkedList<B>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_r1st_tol( &self, other: &LinkedList<B>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_r2nd_tol( &self, other: &LinkedList<B>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &LinkedList<B>, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A, B> AssertFloatEq<VecDeque<B>> for VecDeque<A>
where A: AssertFloatEq<B> + Copy + ?Sized, B: Copy + ?Sized, A::Tol: Sized, A::DebugTol: Sized, UlpsTol<A::Tol>: Sized, UlpsTol<A::DebugTol>: Sized,

Source§

type DebugAbsDiff = Option<VecDeque<<A as AssertFloatEq<B>>::DebugAbsDiff>>

Source§

type DebugTol = Option<VecDeque<<A as AssertFloatEq<B>>::DebugTol>>

Source§

fn debug_abs_diff(&self, other: &VecDeque<B>) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff( &self, other: &VecDeque<B>, ) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &VecDeque<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &VecDeque<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &VecDeque<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &VecDeque<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &VecDeque<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &VecDeque<B>, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A, B> AssertFloatEq<Rc<B>> for Rc<A>
where A: AssertFloatEq<B> + Copy + ?Sized, B: Copy + ?Sized,

Source§

type DebugAbsDiff = <A as AssertFloatEq<B>>::DebugAbsDiff

Source§

type DebugTol = <A as AssertFloatEq<B>>::DebugTol

Source§

fn debug_abs_diff(&self, other: &Rc<B>) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Rc<B>) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Rc<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Rc<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Rc<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Rc<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Rc<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Rc<B>, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>
where UlpsTol<Self::DebugTol>: Sized,

Source§

impl<A, B> AssertFloatEq<Arc<B>> for Arc<A>
where A: AssertFloatEq<B> + Copy + ?Sized, B: Copy + ?Sized,

Source§

type DebugAbsDiff = <A as AssertFloatEq<B>>::DebugAbsDiff

Source§

type DebugTol = <A as AssertFloatEq<B>>::DebugTol

Source§

fn debug_abs_diff(&self, other: &Arc<B>) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Arc<B>) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Arc<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Arc<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Arc<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Arc<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Arc<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Arc<B>, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>
where UlpsTol<Self::DebugTol>: Sized,

Source§

impl<A, B> AssertFloatEq<Vec<B>> for Vec<A>
where A: AssertFloatEq<B> + Copy + ?Sized, B: Copy + ?Sized, A::Tol: Sized, A::DebugTol: Sized, UlpsTol<A::Tol>: Sized, UlpsTol<A::DebugTol>: Sized,

Source§

type DebugAbsDiff = Option<Vec<<A as AssertFloatEq<B>>::DebugAbsDiff>>

Source§

type DebugTol = Option<Vec<<A as AssertFloatEq<B>>::DebugTol>>

Source§

fn debug_abs_diff(&self, other: &Vec<B>) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Vec<B>) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Vec<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Vec<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Vec<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Vec<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Vec<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Vec<B>, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A, B> AssertFloatEq<Cell<B>> for Cell<A>
where A: AssertFloatEq<B> + Copy, B: Copy,

Source§

type DebugAbsDiff = <A as AssertFloatEq<B>>::DebugAbsDiff

Source§

type DebugTol = <A as AssertFloatEq<B>>::DebugTol

Source§

fn debug_abs_diff(&self, other: &Cell<B>) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Cell<B>) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Cell<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Cell<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Cell<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Cell<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Cell<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Cell<B>, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>
where UlpsTol<Self::DebugTol>: Sized,

Source§

impl<A, B> AssertFloatEq<RefCell<B>> for RefCell<A>
where A: AssertFloatEq<B> + Copy + ?Sized, B: Copy + ?Sized,

Source§

type DebugAbsDiff = <A as AssertFloatEq<B>>::DebugAbsDiff

Source§

type DebugTol = <A as AssertFloatEq<B>>::DebugTol

Source§

fn debug_abs_diff(&self, other: &RefCell<B>) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff( &self, other: &RefCell<B>, ) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &RefCell<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &RefCell<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &RefCell<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &RefCell<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &RefCell<B>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &RefCell<B>, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>
where UlpsTol<Self::DebugTol>: Sized,

Source§

impl<A, B, const N: usize> AssertFloatEq<[B; N]> for [A; N]

Source§

type DebugAbsDiff = [<A as AssertFloatEq<B>>::DebugAbsDiff; N]

Source§

type DebugTol = [<A as AssertFloatEq<B>>::DebugTol; N]

Source§

fn debug_abs_diff(&self, other: &[B; N]) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &[B; N]) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &[B; N], tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &[B; N], tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &[B; N], tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &[B; N], tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &[B; N], tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &[B; N], tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A, B: ?Sized> AssertFloatEq<&B> for &A
where A: AssertFloatEq<B> + ?Sized,

Source§

type DebugAbsDiff = <A as AssertFloatEq<B>>::DebugAbsDiff

Source§

type DebugTol = <A as AssertFloatEq<B>>::DebugTol

Source§

fn debug_abs_diff(&self, other: &&B) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &&B) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &&B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &&B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &&B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &&B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &&B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &&B, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>
where UlpsTol<Self::DebugTol>: Sized,

Source§

impl<A, B: ?Sized> AssertFloatEq<&B> for &mut A
where A: AssertFloatEq<B> + ?Sized,

Source§

type DebugAbsDiff = <A as AssertFloatEq<B>>::DebugAbsDiff

Source§

type DebugTol = <A as AssertFloatEq<B>>::DebugTol

Source§

fn debug_abs_diff(&self, other: &&B) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &&B) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &&B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &&B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &&B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &&B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &&B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &&B, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>
where UlpsTol<Self::DebugTol>: Sized,

Source§

impl<A, B: ?Sized> AssertFloatEq<&mut B> for &A
where A: AssertFloatEq<B> + ?Sized,

Source§

type DebugAbsDiff = <A as AssertFloatEq<B>>::DebugAbsDiff

Source§

type DebugTol = <A as AssertFloatEq<B>>::DebugTol

Source§

fn debug_abs_diff(&self, other: &&mut B) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &&mut B) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &&mut B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &&mut B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &&mut B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &&mut B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &&mut B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &&mut B, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>
where UlpsTol<Self::DebugTol>: Sized,

Source§

impl<A, B: ?Sized> AssertFloatEq<&mut B> for &mut A
where A: AssertFloatEq<B> + ?Sized,

Source§

type DebugAbsDiff = <A as AssertFloatEq<B>>::DebugAbsDiff

Source§

type DebugTol = <A as AssertFloatEq<B>>::DebugTol

Source§

fn debug_abs_diff(&self, other: &&mut B) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &&mut B) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &&mut B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &&mut B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &&mut B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &&mut B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &&mut B, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &&mut B, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>
where UlpsTol<Self::DebugTol>: Sized,

Source§

impl<A: AssertFloatEq + Debug, B> AssertFloatEq for (A, B)

Source§

type DebugAbsDiff = (<A as AssertFloatEq>::DebugAbsDiff, <B as AssertFloatEq>::DebugAbsDiff)

Source§

type DebugTol = (<A as AssertFloatEq>::DebugTol, <B as AssertFloatEq>::DebugTol)

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A: AssertFloatEq + Debug, B: AssertFloatEq + Debug, C> AssertFloatEq for (A, B, C)

Source§

type DebugAbsDiff = (<A as AssertFloatEq>::DebugAbsDiff, <B as AssertFloatEq>::DebugAbsDiff, <C as AssertFloatEq>::DebugAbsDiff)

Source§

type DebugTol = (<A as AssertFloatEq>::DebugTol, <B as AssertFloatEq>::DebugTol, <C as AssertFloatEq>::DebugTol)

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A: AssertFloatEq + Debug, B: AssertFloatEq + Debug, C: AssertFloatEq + Debug, D> AssertFloatEq for (A, B, C, D)

Source§

type DebugAbsDiff = (<A as AssertFloatEq>::DebugAbsDiff, <B as AssertFloatEq>::DebugAbsDiff, <C as AssertFloatEq>::DebugAbsDiff, <D as AssertFloatEq>::DebugAbsDiff)

Source§

type DebugTol = (<A as AssertFloatEq>::DebugTol, <B as AssertFloatEq>::DebugTol, <C as AssertFloatEq>::DebugTol, <D as AssertFloatEq>::DebugTol)

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A: AssertFloatEq + Debug, B: AssertFloatEq + Debug, C: AssertFloatEq + Debug, D: AssertFloatEq + Debug, E> AssertFloatEq for (A, B, C, D, E)

Source§

type DebugAbsDiff = (<A as AssertFloatEq>::DebugAbsDiff, <B as AssertFloatEq>::DebugAbsDiff, <C as AssertFloatEq>::DebugAbsDiff, <D as AssertFloatEq>::DebugAbsDiff, <E as AssertFloatEq>::DebugAbsDiff)

Source§

type DebugTol = (<A as AssertFloatEq>::DebugTol, <B as AssertFloatEq>::DebugTol, <C as AssertFloatEq>::DebugTol, <D as AssertFloatEq>::DebugTol, <E as AssertFloatEq>::DebugTol)

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A: AssertFloatEq + Debug, B: AssertFloatEq + Debug, C: AssertFloatEq + Debug, D: AssertFloatEq + Debug, E: AssertFloatEq + Debug, F> AssertFloatEq for (A, B, C, D, E, F)

Source§

type DebugAbsDiff = (<A as AssertFloatEq>::DebugAbsDiff, <B as AssertFloatEq>::DebugAbsDiff, <C as AssertFloatEq>::DebugAbsDiff, <D as AssertFloatEq>::DebugAbsDiff, <E as AssertFloatEq>::DebugAbsDiff, <F as AssertFloatEq>::DebugAbsDiff)

Source§

type DebugTol = (<A as AssertFloatEq>::DebugTol, <B as AssertFloatEq>::DebugTol, <C as AssertFloatEq>::DebugTol, <D as AssertFloatEq>::DebugTol, <E as AssertFloatEq>::DebugTol, <F as AssertFloatEq>::DebugTol)

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A: AssertFloatEq + Debug, B: AssertFloatEq + Debug, C: AssertFloatEq + Debug, D: AssertFloatEq + Debug, E: AssertFloatEq + Debug, F: AssertFloatEq + Debug, G> AssertFloatEq for (A, B, C, D, E, F, G)

Source§

type DebugAbsDiff = (<A as AssertFloatEq>::DebugAbsDiff, <B as AssertFloatEq>::DebugAbsDiff, <C as AssertFloatEq>::DebugAbsDiff, <D as AssertFloatEq>::DebugAbsDiff, <E as AssertFloatEq>::DebugAbsDiff, <F as AssertFloatEq>::DebugAbsDiff, <G as AssertFloatEq>::DebugAbsDiff)

Source§

type DebugTol = (<A as AssertFloatEq>::DebugTol, <B as AssertFloatEq>::DebugTol, <C as AssertFloatEq>::DebugTol, <D as AssertFloatEq>::DebugTol, <E as AssertFloatEq>::DebugTol, <F as AssertFloatEq>::DebugTol, <G as AssertFloatEq>::DebugTol)

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A: AssertFloatEq + Debug, B: AssertFloatEq + Debug, C: AssertFloatEq + Debug, D: AssertFloatEq + Debug, E: AssertFloatEq + Debug, F: AssertFloatEq + Debug, G: AssertFloatEq + Debug, H> AssertFloatEq for (A, B, C, D, E, F, G, H)

Source§

type DebugAbsDiff = (<A as AssertFloatEq>::DebugAbsDiff, <B as AssertFloatEq>::DebugAbsDiff, <C as AssertFloatEq>::DebugAbsDiff, <D as AssertFloatEq>::DebugAbsDiff, <E as AssertFloatEq>::DebugAbsDiff, <F as AssertFloatEq>::DebugAbsDiff, <G as AssertFloatEq>::DebugAbsDiff, <H as AssertFloatEq>::DebugAbsDiff)

Source§

type DebugTol = (<A as AssertFloatEq>::DebugTol, <B as AssertFloatEq>::DebugTol, <C as AssertFloatEq>::DebugTol, <D as AssertFloatEq>::DebugTol, <E as AssertFloatEq>::DebugTol, <F as AssertFloatEq>::DebugTol, <G as AssertFloatEq>::DebugTol, <H as AssertFloatEq>::DebugTol)

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A: AssertFloatEq + Debug, B: AssertFloatEq + Debug, C: AssertFloatEq + Debug, D: AssertFloatEq + Debug, E: AssertFloatEq + Debug, F: AssertFloatEq + Debug, G: AssertFloatEq + Debug, H: AssertFloatEq + Debug, I> AssertFloatEq for (A, B, C, D, E, F, G, H, I)

Source§

type DebugAbsDiff = (<A as AssertFloatEq>::DebugAbsDiff, <B as AssertFloatEq>::DebugAbsDiff, <C as AssertFloatEq>::DebugAbsDiff, <D as AssertFloatEq>::DebugAbsDiff, <E as AssertFloatEq>::DebugAbsDiff, <F as AssertFloatEq>::DebugAbsDiff, <G as AssertFloatEq>::DebugAbsDiff, <H as AssertFloatEq>::DebugAbsDiff, <I as AssertFloatEq>::DebugAbsDiff)

Source§

type DebugTol = (<A as AssertFloatEq>::DebugTol, <B as AssertFloatEq>::DebugTol, <C as AssertFloatEq>::DebugTol, <D as AssertFloatEq>::DebugTol, <E as AssertFloatEq>::DebugTol, <F as AssertFloatEq>::DebugTol, <G as AssertFloatEq>::DebugTol, <H as AssertFloatEq>::DebugTol, <I as AssertFloatEq>::DebugTol)

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A: AssertFloatEq + Debug, B: AssertFloatEq + Debug, C: AssertFloatEq + Debug, D: AssertFloatEq + Debug, E: AssertFloatEq + Debug, F: AssertFloatEq + Debug, G: AssertFloatEq + Debug, H: AssertFloatEq + Debug, I: AssertFloatEq + Debug, J> AssertFloatEq for (A, B, C, D, E, F, G, H, I, J)

Source§

type DebugAbsDiff = (<A as AssertFloatEq>::DebugAbsDiff, <B as AssertFloatEq>::DebugAbsDiff, <C as AssertFloatEq>::DebugAbsDiff, <D as AssertFloatEq>::DebugAbsDiff, <E as AssertFloatEq>::DebugAbsDiff, <F as AssertFloatEq>::DebugAbsDiff, <G as AssertFloatEq>::DebugAbsDiff, <H as AssertFloatEq>::DebugAbsDiff, <I as AssertFloatEq>::DebugAbsDiff, <J as AssertFloatEq>::DebugAbsDiff)

Source§

type DebugTol = (<A as AssertFloatEq>::DebugTol, <B as AssertFloatEq>::DebugTol, <C as AssertFloatEq>::DebugTol, <D as AssertFloatEq>::DebugTol, <E as AssertFloatEq>::DebugTol, <F as AssertFloatEq>::DebugTol, <G as AssertFloatEq>::DebugTol, <H as AssertFloatEq>::DebugTol, <I as AssertFloatEq>::DebugTol, <J as AssertFloatEq>::DebugTol)

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A: AssertFloatEq + Debug, B: AssertFloatEq + Debug, C: AssertFloatEq + Debug, D: AssertFloatEq + Debug, E: AssertFloatEq + Debug, F: AssertFloatEq + Debug, G: AssertFloatEq + Debug, H: AssertFloatEq + Debug, I: AssertFloatEq + Debug, J: AssertFloatEq + Debug, K> AssertFloatEq for (A, B, C, D, E, F, G, H, I, J, K)

Source§

type DebugAbsDiff = (<A as AssertFloatEq>::DebugAbsDiff, <B as AssertFloatEq>::DebugAbsDiff, <C as AssertFloatEq>::DebugAbsDiff, <D as AssertFloatEq>::DebugAbsDiff, <E as AssertFloatEq>::DebugAbsDiff, <F as AssertFloatEq>::DebugAbsDiff, <G as AssertFloatEq>::DebugAbsDiff, <H as AssertFloatEq>::DebugAbsDiff, <I as AssertFloatEq>::DebugAbsDiff, <J as AssertFloatEq>::DebugAbsDiff, <K as AssertFloatEq>::DebugAbsDiff)

Source§

type DebugTol = (<A as AssertFloatEq>::DebugTol, <B as AssertFloatEq>::DebugTol, <C as AssertFloatEq>::DebugTol, <D as AssertFloatEq>::DebugTol, <E as AssertFloatEq>::DebugTol, <F as AssertFloatEq>::DebugTol, <G as AssertFloatEq>::DebugTol, <H as AssertFloatEq>::DebugTol, <I as AssertFloatEq>::DebugTol, <J as AssertFloatEq>::DebugTol, <K as AssertFloatEq>::DebugTol)

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<A: AssertFloatEq + Debug, B: AssertFloatEq + Debug, C: AssertFloatEq + Debug, D: AssertFloatEq + Debug, E: AssertFloatEq + Debug, F: AssertFloatEq + Debug, G: AssertFloatEq + Debug, H: AssertFloatEq + Debug, I: AssertFloatEq + Debug, J: AssertFloatEq + Debug, K: AssertFloatEq + Debug, L> AssertFloatEq for (A, B, C, D, E, F, G, H, I, J, K, L)

Source§

type DebugAbsDiff = (<A as AssertFloatEq>::DebugAbsDiff, <B as AssertFloatEq>::DebugAbsDiff, <C as AssertFloatEq>::DebugAbsDiff, <D as AssertFloatEq>::DebugAbsDiff, <E as AssertFloatEq>::DebugAbsDiff, <F as AssertFloatEq>::DebugAbsDiff, <G as AssertFloatEq>::DebugAbsDiff, <H as AssertFloatEq>::DebugAbsDiff, <I as AssertFloatEq>::DebugAbsDiff, <J as AssertFloatEq>::DebugAbsDiff, <K as AssertFloatEq>::DebugAbsDiff, <L as AssertFloatEq>::DebugAbsDiff)

Source§

type DebugTol = (<A as AssertFloatEq>::DebugTol, <B as AssertFloatEq>::DebugTol, <C as AssertFloatEq>::DebugTol, <D as AssertFloatEq>::DebugTol, <E as AssertFloatEq>::DebugTol, <F as AssertFloatEq>::DebugTol, <G as AssertFloatEq>::DebugTol, <H as AssertFloatEq>::DebugTol, <I as AssertFloatEq>::DebugTol, <J as AssertFloatEq>::DebugTol, <K as AssertFloatEq>::DebugTol, <L as AssertFloatEq>::DebugTol)

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<K, VA, VB> AssertFloatEq<BTreeMap<K, VB>> for BTreeMap<K, VA>
where K: Eq + Ord + Clone + Debug, VA: AssertFloatEq<VB>, VA::Tol: Sized, VA::DebugTol: Sized, UlpsTol<VA::Tol>: Sized, UlpsTol<VA::DebugTol>: Sized,

Source§

type DebugAbsDiff = Option<BTreeMap<K, <VA as AssertFloatEq<VB>>::DebugAbsDiff>>

Source§

type DebugTol = Option<BTreeMap<K, <VA as AssertFloatEq<VB>>::DebugTol>>

Source§

fn debug_abs_diff(&self, other: &BTreeMap<K, VB>) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff( &self, other: &BTreeMap<K, VB>, ) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol( &self, other: &BTreeMap<K, VB>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_rmax_tol( &self, other: &BTreeMap<K, VB>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_rmin_tol( &self, other: &BTreeMap<K, VB>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_r1st_tol( &self, other: &BTreeMap<K, VB>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_r2nd_tol( &self, other: &BTreeMap<K, VB>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &BTreeMap<K, VB>, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>
where UlpsTol<Self::DebugTol>: Sized,

Source§

impl<K, VA, VB, S> AssertFloatEq<HashMap<K, VB, S>> for HashMap<K, VA, S>
where K: Eq + Hash + Clone + Debug, S: BuildHasher + Clone, VA: AssertFloatEq<VB>, VA::Tol: Sized, UlpsTol<VA::Tol>: Sized, VA::DebugTol: Sized, UlpsTol<VA::DebugTol>: Sized,

Source§

type DebugAbsDiff = Option<HashMap<K, <VA as AssertFloatEq<VB>>::DebugAbsDiff, S>>

Source§

type DebugTol = Option<HashMap<K, <VA as AssertFloatEq<VB>>::DebugTol, S>>

Source§

fn debug_abs_diff(&self, other: &HashMap<K, VB, S>) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff( &self, other: &HashMap<K, VB, S>, ) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol( &self, other: &HashMap<K, VB, S>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_rmax_tol( &self, other: &HashMap<K, VB, S>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_rmin_tol( &self, other: &HashMap<K, VB, S>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_r1st_tol( &self, other: &HashMap<K, VB, S>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_r2nd_tol( &self, other: &HashMap<K, VB, S>, tol: &Self::Tol, ) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &HashMap<K, VB, S>, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Source§

impl<T> AssertFloatEq for Complex<T>

Source§

type DebugAbsDiff = Complex<<T as AssertFloatEq>::DebugAbsDiff>

Source§

type DebugTol = Complex<<T as AssertFloatEq>::DebugTol>

Source§

fn debug_abs_diff(&self, other: &Self) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff(&self, other: &Self) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Self, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Self, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>
where UlpsTol<Self::DebugTol>: Sized,

Source§

impl<T: AssertFloatEq> AssertFloatEq for Option<T>
where T::Tol: Sized, UlpsTol<T::Tol>: Sized, UlpsTol<T::DebugTol>: Sized,

Source§

type DebugAbsDiff = Option<<T as AssertFloatEq>::DebugAbsDiff>

Source§

type DebugTol = Option<<T as AssertFloatEq>::DebugTol>

Source§

fn debug_abs_diff(&self, other: &Option<T>) -> Self::DebugAbsDiff

Source§

fn debug_ulps_diff( &self, other: &Option<T>, ) -> DebugUlpsDiff<Self::DebugAbsDiff>

Source§

fn debug_abs_tol(&self, other: &Option<T>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmax_tol(&self, other: &Option<T>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_rmin_tol(&self, other: &Option<T>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r1st_tol(&self, other: &Option<T>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_r2nd_tol(&self, other: &Option<T>, tol: &Self::Tol) -> Self::DebugTol

Source§

fn debug_ulps_tol( &self, other: &Option<T>, tol: &UlpsTol<Self::Tol>, ) -> UlpsTol<Self::DebugTol>

Implementors§