Trait predicates::prelude::PredicateStrExt
source · pub trait PredicateStrExtwhere
Self: Predicate<str> + Sized,{
fn trim(self) -> TrimPredicate<Self> { ... }
fn from_utf8(self) -> Utf8Predicate<Self> { ... }
fn normalize(self) -> NormalizedPredicate<Self> { ... }
}Expand description
Predicate extension adapting a str Predicate.
Provided Methods§
sourcefn trim(self) -> TrimPredicate<Self>
fn trim(self) -> TrimPredicate<Self>
Returns a TrimPredicate that ensures the data passed to Self is trimmed.
Examples
use predicates::prelude::*;
let predicate_fn = predicate::str::is_empty().trim();
assert_eq!(true, predicate_fn.eval(" "));
assert_eq!(false, predicate_fn.eval(" Hello "));sourcefn from_utf8(self) -> Utf8Predicate<Self>
fn from_utf8(self) -> Utf8Predicate<Self>
Returns a Utf8Predicate that adapts Self to a [u8] Predicate.
Examples
use predicates::prelude::*;
use std::ffi::OsStr;
let predicate_fn = predicate::str::is_empty().not().from_utf8();
assert_eq!(true, predicate_fn.eval(OsStr::new("Hello")));
assert_eq!(false, predicate_fn.eval(OsStr::new("")));
let variable: &[u8] = b"";
assert_eq!(false, predicate_fn.eval(variable));sourcefn normalize(self) -> NormalizedPredicate<Self>
fn normalize(self) -> NormalizedPredicate<Self>
Returns a NormalizedPredicate that ensures
the newlines within the data passed to Self is normalised.
Examples
use predicates::prelude::*;
let predicate_fn = predicate::eq("Hello World!\n").normalize();
assert_eq!(true, predicate_fn.eval("Hello World!\n"));
assert_eq!(true, predicate_fn.eval("Hello World!\r"));
assert_eq!(true, predicate_fn.eval("Hello World!\r\n"));
assert_eq!(false, predicate_fn.eval("Goodbye"));