pub fn link<B, A>(&mut self, link: (B, A)) -> &mut Chain
    where A: AfterMiddleware, B: BeforeMiddleware {
        let (before, after) = link;
        self.befores.push(Box::new(before) as Box<BeforeMiddleware>);
        self.afters.push(Box::new(after) as Box<AfterMiddleware>);
        self
    }
/// Link both a before and after middleware to the chain at once.
///
/// Middleware that have a Before and After piece should have a constructor
/// which returns both as a tuple, so it can be passed directly to link.
Link both a before and after middleware to the chain at once.
Middleware that have a Before and After piece should have a constructor
which returns both as a tuple, so it can be passed directly to link.
Link both a before and after middleware to the chain at once . Middleware that have a Before and After piece should have a constructor which returns both as a tuple so it can be passed directly to link .
pub fn link<B, A>(&mut self, link: (B, A)) -> &mut Chain
    where A: AfterMiddleware, B: BeforeMiddleware {
        let (before, after) = link;
        self.befores.push(Box::new(before) as Box<BeforeMiddleware>);
        self.afters.push(Box::new(after) as Box<AfterMiddleware>);
        self
    }
pub fn link < B , A > ( & mut self , link : ( B , A ) ) -> & mut Chain where A : AfterMiddleware , B : BeforeMiddleware { let ( before , after ) = link ; self . befores . push ( Box :: new ( before ) as Box < BeforeMiddleware > ) ; self . afters . push ( Box :: new ( after ) as Box < AfterMiddleware > ) ; self }
Link both a before and after middleware to the chain at once.
Link both a before and after middleware to the chain at once .
&mut self
link
(B, A)