Trait mockers::MatchArg

source ·
pub trait MatchArg<T> {
    // Required methods
    fn matches(&self, arg: &T) -> Result<(), String>;
    fn describe(&self) -> String;
}
Expand description

Argument matcher

Basically it is predicate telling whether argument value satisfies to some criteria. However, in case of mismatch it explains what and why doesn’t match.

Required Methods§

source

fn matches(&self, arg: &T) -> Result<(), String>

source

fn describe(&self) -> String

Implementors§

source§

impl<E: Debug, T: Debug, M: MatchArg<E>> MatchArg<Result<T, E>> for MatchErr<E, M>

source§

impl<T> MatchArg<T> for MatchAny

source§

impl<T> MatchArg<T> for MatchAnyT<T>

source§

impl<T, F: Fn(&T) -> Result<(), String>> MatchArg<T> for FnMatchArg<T, F>

source§

impl<T, F: Fn(&T) -> bool> MatchArg<T> for BoolFnMatchArg<T, F>

source§

impl<T, M: MatchArg<T>> MatchArg<&T> for MatchRef<T, M>

source§

impl<T: Ord + Debug, R: RangeBounds<T>> MatchArg<T> for RangeMatchArg<T, R>

source§

impl<T: PartialEq + Debug> MatchArg<T> for EqMatchArg<T>

source§

impl<T: PartialEq + Debug> MatchArg<T> for NeMatchArg<T>

source§

impl<T: PartialOrd + Debug> MatchArg<T> for GeMatchArg<T>

source§

impl<T: PartialOrd + Debug> MatchArg<T> for GtMatchArg<T>

source§

impl<T: PartialOrd + Debug> MatchArg<T> for LeMatchArg<T>

source§

impl<T: PartialOrd + Debug> MatchArg<T> for LtMatchArg<T>

source§

impl<T: Debug, E: Debug, M: MatchArg<T>> MatchArg<Result<T, E>> for MatchOk<T, M>

source§

impl<T: Debug, M0: MatchArg<T>, M1: MatchArg<T>> MatchArg<T> for AndMatchArg<T, M0, M1>

source§

impl<T: Debug, M0: MatchArg<T>, M1: MatchArg<T>> MatchArg<T> for OrMatchArg<T, M0, M1>

source§

impl<T: Debug, M: MatchArg<T>> MatchArg<Option<T>> for MatchSome<T, M>

source§

impl<T: Debug, M: MatchArg<T>> MatchArg<T> for NotMatchArg<T, M>

source§

impl<T: Debug, M: MatchArg<T>, F: Fn() -> String> MatchArg<T> for WithDescriptionFn<T, M, F>

source§

impl<T: Debug, M: MatchArg<T>, F: Fn(&T) -> String> MatchArg<T> for WithMessageFn<T, M, F>

source§

impl<T: Debug, S: Debug + PartialEq<T>> MatchArg<T> for S

Matches argument with value of same type using equality.