Trait float_cmp::ApproxEq

source ·
pub trait ApproxEq: Sized {
    type Margin: Copy + Default;

    // Required method
    fn approx_eq<M: Into<Self::Margin>>(self, other: Self, margin: M) -> bool;

    // Provided method
    fn approx_ne<M: Into<Self::Margin>>(self, other: Self, margin: M) -> bool { ... }
}
Expand description

A trait for approximate equality comparisons.

Required Associated Types§

source

type Margin: Copy + Default

This type type defines a margin within which two values are to be considered approximately equal. It must implement Default so that approx_eq() can be called on unknown types.

Required Methods§

source

fn approx_eq<M: Into<Self::Margin>>(self, other: Self, margin: M) -> bool

This method tests that the self and other values are equal within margin of each other.

Provided Methods§

source

fn approx_ne<M: Into<Self::Margin>>(self, other: Self, margin: M) -> bool

This method tests that the self and other values are not within margin of each other.

Implementations on Foreign Types§

source§

impl<T> ApproxEq for &[T]where T: Copy + ApproxEq,

§

type Margin = <T as ApproxEq>::Margin

source§

fn approx_eq<M: Into<Self::Margin>>(self, other: Self, margin: M) -> bool

source§

impl ApproxEq for f64

§

type Margin = F64Margin

source§

fn approx_eq<M: Into<Self::Margin>>(self, other: f64, margin: M) -> bool

source§

impl ApproxEq for f32

§

type Margin = F32Margin

source§

fn approx_eq<M: Into<Self::Margin>>(self, other: f32, margin: M) -> bool

Implementors§