pub struct NearMatcher<T: Debug> { /* private fields */ }
Expand description

A matcher which matches floating-point numbers approximately equal to its expected value.

Implementations§

source§

impl<T: Debug> NearMatcher<T>

source

pub fn nans_are_equal(self) -> Self

Configures this instance to treat two NaNs as equal.

This behaviour differs from the IEEE standad for floating point which treats two NaNs as infinitely far apart.

source

pub fn nans_are_not_equal(self) -> Self

Configures this instance to treat two NaNs as not equal.

This behaviour complies with the IEEE standad for floating point. It is the default behaviour for this matcher, so invoking this method is usually redunant.

Trait Implementations§

source§

impl<T: Debug + Float> Matcher for NearMatcher<T>

§

type ActualT = T

The type against which this matcher matches.
source§

fn matches(&self, actual: &T) -> MatcherResult

Returns whether the condition matches the datum actual. Read more
source§

fn describe(&self, matcher_result: MatcherResult) -> Description

Returns a description of self or a negative description if matcher_result is DoesNotMatch. Read more
source§

fn explain_match(&self, actual: &Self::ActualT) -> Description

Prepares a String describing how the expected value encoded in this instance matches or does not match the given value actual. Read more
source§

fn and<Right: Matcher<ActualT = Self::ActualT>>( self, right: Right ) -> ConjunctionMatcher<Self, Right>
where Self: Sized,

Constructs a matcher that matches both self and right. Read more
source§

fn or<Right: Matcher<ActualT = Self::ActualT>>( self, right: Right ) -> DisjunctionMatcher<Self, Right>
where Self: Sized,

Constructs a matcher that matches when at least one of self or right matches the input. Read more

Auto Trait Implementations§

§

impl<T> RefUnwindSafe for NearMatcher<T>
where T: RefUnwindSafe,

§

impl<T> Send for NearMatcher<T>
where T: Send,

§

impl<T> Sync for NearMatcher<T>
where T: Sync,

§

impl<T> Unpin for NearMatcher<T>
where T: Unpin,

§

impl<T> UnwindSafe for NearMatcher<T>
where T: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.