Trait usvg::ApproxEqUlps

pub trait ApproxEqUlps {
    type Flt: Ulps;

    // Required method
    fn approx_eq_ulps(&self, other: &Self, ulps: <Self::Flt as Ulps>::U) -> bool;

    // Provided method
    fn approx_ne_ulps(&self, other: &Self, ulps: <Self::Flt as Ulps>::U) -> bool { ... }
}
Expand description

ApproxEqUlps is a trait for approximate equality comparisons. The associated type Flt is a floating point type which implements Ulps, and is required so that this trait can be implemented for compound types (e.g. vectors), not just for the floats themselves.

Required Associated Types§

type Flt: Ulps

Required Methods§

fn approx_eq_ulps(&self, other: &Self, ulps: <Self::Flt as Ulps>::U) -> bool

This method tests for self and other values to be approximately equal within ULPs (Units of Least Precision) floating point representations. Differing signs are always unequal with this method, and zeroes are only equal to zeroes. Use approx_eq() from the ApproxEq trait if that is more appropriate.

Provided Methods§

fn approx_ne_ulps(&self, other: &Self, ulps: <Self::Flt as Ulps>::U) -> bool

This method tests for self and other values to be not approximately equal within ULPs (Units of Least Precision) floating point representations. Differing signs are always unequal with this method, and zeroes are only equal to zeroes. Use approx_eq() from the ApproxEq trait if that is more appropriate.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

§

impl ApproxEqUlps for f32

§

type Flt = f32

§

fn approx_eq_ulps(&self, other: &f32, ulps: i32) -> bool

§

impl ApproxEqUlps for f64

§

type Flt = f64

§

fn approx_eq_ulps(&self, other: &f64, ulps: i64) -> bool

Implementors§