Trait predicates::Predicate [−][src]
Trait for generically evaluating a type against a dynamically created predicate function.
The exact meaning of eval
depends on the situation, but will usually
mean that the evaluated item is in some sort of pre-defined set. This is
different from Ord
and Eq
in that an item
will almost never be the
same type as the implementing Predicate
type.
Required Methods
fn eval(&self, variable: &Item) -> bool
Execute this Predicate
against variable
, returning the resulting
boolean.
Implementors
impl<Item> Predicate<Item> for BoxPredicate<Item> where
Item: ?Sized,impl<Item> Predicate<Item> for BooleanPredicate<Item>
impl<F, T> Predicate<T> for FnPredicate<F, T> where
F: Fn(&T) -> bool,impl<T> Predicate<T> for InPredicate<T> where
T: PartialEq + Debug,impl<'a, T: ?Sized> Predicate<T> for InPredicate<&'a T> where
T: PartialEq + Debug,impl<T> Predicate<T> for OrdInPredicate<T> where
T: Ord + Debug,impl<'a, T: ?Sized> Predicate<T> for OrdInPredicate<&'a T> where
T: Ord + Debug,impl<T> Predicate<T> for HashableInPredicate<T> where
T: Hash + Eq + Debug,impl<'a, T: ?Sized> Predicate<T> for HashableInPredicate<&'a T> where
T: Hash + Eq + Debug,impl<M, Item> Predicate<Item> for NamePredicate<M, Item> where
M: Predicate<Item>,
Item: ?Sized,impl<T> Predicate<T> for EqPredicate<T> where
T: Debug + PartialEq,impl<'a, T: ?Sized> Predicate<T> for EqPredicate<&'a T> where
T: Debug + PartialEq,impl<T> Predicate<T> for OrdPredicate<T> where
T: Debug + PartialOrd,impl<'a, T: ?Sized> Predicate<T> for OrdPredicate<&'a T> where
T: Debug + PartialOrd,impl<M1, M2, Item> Predicate<Item> for AndPredicate<M1, M2, Item> where
M1: Predicate<Item>,
M2: Predicate<Item>,
Item: ?Sized,impl<M1, M2, Item> Predicate<Item> for OrPredicate<M1, M2, Item> where
M1: Predicate<Item>,
M2: Predicate<Item>,
Item: ?Sized,impl<M, Item> Predicate<Item> for NotPredicate<M, Item> where
M: Predicate<Item>,
Item: ?Sized,impl Predicate<f64> for IsClosePredicate
impl Predicate<Path> for ExistencePredicate
impl Predicate<Path> for FileTypePredicate
impl<P> Predicate<Path> for FileContentPredicate<P> where
P: Predicate<[u8]>,impl Predicate<Path> for BinaryFilePredicate
impl Predicate<[u8]> for BinaryFilePredicate
impl Predicate<Path> for StrFilePredicate
impl Predicate<str> for StrFilePredicate
impl Predicate<str> for IsEmptyPredicate
impl Predicate<str> for StartsWithPredicate
impl Predicate<str> for EndsWithPredicate
impl Predicate<str> for ContainsPredicate
impl Predicate<str> for MatchesPredicate
impl<P> Predicate<str> for TrimPredicate<P> where
P: Predicate<str>,impl<P> Predicate<OsStr> for Utf8Predicate<P> where
P: Predicate<str>,impl<P> Predicate<[u8]> for Utf8Predicate<P> where
P: Predicate<str>,impl Predicate<str> for DifferencePredicate
impl Predicate<str> for RegexPredicate