use crate::Matcher;
use std::fmt::{Debug, Display};
pub fn item<I>(item: I) -> Item<I> {
Item { item }
}
pub struct Item<T> {
item: T,
}
impl<T> Matcher<Vec<T>> for Item<T>
where
T: PartialEq + Display + Debug,
{
fn matches(&self, value: &Vec<T>) -> bool {
value.contains(&self.item)
}
fn description(&self) -> String {
format!("item {}", self.item)
}
}