pub trait Filter: 'static + Send + Sync {
fn filter(&self, req: &mut Request, path: &mut PathState) -> bool;
fn and<F>(self, other: F) -> And<Self, F>
where
F: Filter + Sync + Send,
{ ... }
fn or<F>(self, other: F) -> Or<Self, F>
where
F: Filter + Sync + Send,
{ ... }
fn and_then<F, U>(self, fun: F) -> AndThen<Self, F>
where
F: Fn(&mut Request, &mut PathState) -> bool + Send + Sync + 'static,
U: Filter + Sync + Send,
{ ... }
fn or_else<F, U>(self, fun: F) -> OrElse<Self, F>
where
F: Fn(&mut Request, &mut PathState) -> bool + Send + Sync + 'static,
U: Filter + Sync + Send,
{ ... }
}