RelativeEq in approx - Rust
Description: Equality comparisons between two numbers using both the absolute difference and relative based comparisons.
Keywords: rust, rustlang, rust-lang, RelativeEq

# Trait approx::RelativeEq

source ·

    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§

source

#### fn default_max_relative() -> Self::Epsilon

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.

source

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

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

## Provided Methods§

source

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

The inverse of `RelativeEq::relative_eq`.

## Implementations on Foreign Types§

source§

### impl RelativeEq<f32> for f32

source§

#### fn default_max_relative() -> f32

source§

#### fn relative_eq(&self, other: &f32, epsilon: f32, max_relative: f32) -> bool

source§

### impl RelativeEq<f64> for f64

source§

#### fn default_max_relative() -> f64

source§

#### fn relative_eq(&self, other: &f64, epsilon: f64, max_relative: f64) -> bool

source§

### impl<'a, T: RelativeEq + ?Sized> RelativeEq<&'a T> for &'a T

source§

#### fn default_max_relative() -> T::Epsilon

source§

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

source§

### impl<'a, T: RelativeEq + ?Sized> RelativeEq<&'a mut T> for &'a mut T

source§

#### fn default_max_relative() -> T::Epsilon

source§

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

source§

### impl<T: RelativeEq + Copy> RelativeEq<Cell<T>> for Cell<T>

source§

#### fn default_max_relative() -> T::Epsilon

source§

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

source§

### impl<T: RelativeEq + ?Sized> RelativeEq<RefCell<T>> for RefCell<T>

source§

#### fn default_max_relative() -> T::Epsilon

source§

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

source§

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

source§

#### fn default_max_relative() -> A::Epsilon

source§

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

## Implementors§