use iron::modifier::Modifier; use iron::prelude::*; use iron::AfterMiddleware; /// Applies a modifier to every request. pub struct ModifyWith { modifier: M, } impl ModifyWith { pub fn new(modifier: M) -> ModifyWith { ModifyWith { modifier } } } impl AfterMiddleware for ModifyWith where M: Clone + Modifier + Send + Sync + 'static, { fn after(&self, _req: &mut Request<'_, '_>, mut res: Response) -> IronResult { self.modifier.clone().modify(&mut res); Ok(res) } }