Skip to main content

RangeMatcher

Enum RangeMatcher 

Source
pub enum RangeMatcher<T: PartialOrd> {
    Closed(&'static str, RangeInclusive<T>),
    HalfOpen(&'static str, Range<T>),
}
Expand description

RangeMatcher offers a flexible way to assert whether a value falls within a specified range.

Supports both closed ranges (inclusive of endpoints) and half-open ranges (exclusive of the upper endpoint).

Works with any data type that implements the Debug and PartialOrd traits.

§Example

 use clearcheck::matchers::Matcher;
 use clearcheck::matchers::range::be_in_inclusive_range;

 let matcher = be_in_inclusive_range(1..=4);
 assert!(matcher.test(&2).passed());

Variants§

§

Closed(&'static str, RangeInclusive<T>)

§

HalfOpen(&'static str, Range<T>)

Trait Implementations§

Source§

impl<T> Matcher<T> for RangeMatcher<T>
where T: PartialOrd<T> + Debug,

Source§

fn test(&self, value: &T) -> MatcherResult

Auto Trait Implementations§

§

impl<T> Freeze for RangeMatcher<T>
where T: Freeze,

§

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

§

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

§

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

§

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

§

impl<T> UnsafeUnpin for RangeMatcher<T>
where T: UnsafeUnpin,

§

impl<T> UnwindSafe for RangeMatcher<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<M, T> BoxWrap<M> for T
where T: Matcher<M> + 'static,

Source§

fn boxed(self) -> Box<dyn Matcher<M>>

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> Should<T> for T

Source§

fn should(&self, matcher: &dyn Matcher<T>)

Takes a matcher as input and performs an assertion against the value itself.Panics if the assertion fails, indicating that the value did not match the matcher’s expectations. Read more
Source§

impl<T> ShouldNot<T> for T

Source§

fn should_not(&self, matcher: &dyn Matcher<T>)

Takes a matcher as input and performs an inverted assertion against the value itself.Inverts the result of the matcher’s test method, ensuring the value does not match.Panics if the inverted assertion fails, indicating that the value unexpectedly matched the matcher. Read more
Source§

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

Source§

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>,

Source§

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.