Trait approx::RelativeEq[][src]

pub trait RelativeEq<Rhs = Self>: AbsDiffEq<Rhs> where
    Rhs: ?Sized
{ fn default_max_relative() -> Self::Epsilon;
fn relative_eq(
        &self,
        other: &Rhs,
        epsilon: Self::Epsilon,
        max_relative: Self::Epsilon
    ) -> bool; fn relative_ne(
        &self,
        other: &Rhs,
        epsilon: Self::Epsilon,
        max_relative: Self::Epsilon
    ) -> bool { ... } }
Expand description

Equality comparisons between two numbers using both the absolute difference and relative based comparisons.

Required methods

fn default_max_relative() -> Self::Epsilon[src]

The default relative tolerance for testing values that are far-apart.

This is used when no max_relative value is supplied to the relative_eq macro.

fn relative_eq(
    &self,
    other: &Rhs,
    epsilon: Self::Epsilon,
    max_relative: Self::Epsilon
) -> bool
[src]

A test for equality that uses a relative comparison if the values are far apart.

Provided methods

fn relative_ne(
    &self,
    other: &Rhs,
    epsilon: Self::Epsilon,
    max_relative: Self::Epsilon
) -> bool
[src]

The inverse of RelativeEq::relative_eq.

Implementations on Foreign Types

impl RelativeEq<f32> for f32[src]

fn default_max_relative() -> f32[src]

fn relative_eq(&self, other: &f32, epsilon: f32, max_relative: f32) -> bool[src]

impl RelativeEq<f64> for f64[src]

fn default_max_relative() -> f64[src]

fn relative_eq(&self, other: &f64, epsilon: f64, max_relative: f64) -> bool[src]

impl<'a, T: RelativeEq + ?Sized> RelativeEq<&'a T> for &'a T[src]

fn default_max_relative() -> T::Epsilon[src]

fn relative_eq(
    &self,
    other: &&'a T,
    epsilon: T::Epsilon,
    max_relative: T::Epsilon
) -> bool
[src]

impl<'a, T: RelativeEq + ?Sized> RelativeEq<&'a mut T> for &'a mut T[src]

fn default_max_relative() -> T::Epsilon[src]

fn relative_eq(
    &self,
    other: &&'a mut T,
    epsilon: T::Epsilon,
    max_relative: T::Epsilon
) -> bool
[src]

impl<T: RelativeEq + Copy> RelativeEq<Cell<T>> for Cell<T>[src]

fn default_max_relative() -> T::Epsilon[src]

fn relative_eq(
    &self,
    other: &Cell<T>,
    epsilon: T::Epsilon,
    max_relative: T::Epsilon
) -> bool
[src]

impl<T: RelativeEq + ?Sized> RelativeEq<RefCell<T>> for RefCell<T>[src]

fn default_max_relative() -> T::Epsilon[src]

fn relative_eq(
    &self,
    other: &RefCell<T>,
    epsilon: T::Epsilon,
    max_relative: T::Epsilon
) -> bool
[src]

impl<A, B> RelativeEq<[B]> for [A] where
    A: RelativeEq<B>,
    A::Epsilon: Clone
[src]

fn default_max_relative() -> A::Epsilon[src]

fn relative_eq(
    &self,
    other: &[B],
    epsilon: A::Epsilon,
    max_relative: A::Epsilon
) -> bool
[src]

impl<T: RelativeEq> RelativeEq<Complex<T>> for Complex<T> where
    T::Epsilon: Clone
[src]

fn default_max_relative() -> T::Epsilon[src]

fn relative_eq(
    &self,
    other: &Complex<T>,
    epsilon: T::Epsilon,
    max_relative: T::Epsilon
) -> bool
[src]

Implementors