use super::Matcher;
use crate::extensions::Extensions;
#[derive(Debug, Clone)]
pub struct Not<T>(T);
impl<T> Not<T> {
pub const fn new(inner: T) -> Self {
Self(inner)
}
}
impl<Request, T> Matcher<Request> for Not<T>
where
T: Matcher<Request>,
{
fn matches(&self, ext: Option<&Extensions>, req: &Request) -> bool {
!self.0.matches(ext, req)
}
}