pub struct MutServiceChainBuilder<P: MutService, S: MutService<Input = P::Output>> { /* private fields */ }Expand description
Returned by ServiceChain::start_mut to build a mut service chain.
Use the next(self, MutService) function to append more services to the ServiceChain.
Use the end(self) function to finish building and return the resulting ServiceChain.
Implementations§
Source§impl<P: MutService, S: MutService<Input = P::Output>> MutServiceChainBuilder<P, S>
impl<P: MutService, S: MutService<Input = P::Output>> MutServiceChainBuilder<P, S>
Sourcepub fn next<NS: MutService<Input = S::Output>>(
self,
service: NS,
) -> MutServiceChainBuilder<ServiceChain<P, S>, NS>
pub fn next<NS: MutService<Input = S::Output>>( self, service: NS, ) -> MutServiceChainBuilder<ServiceChain<P, S>, NS>
Append another MutService to the end of the service chain
Source§impl<P: MutService, S: MutService<Input = P::Output>> MutServiceChainBuilder<P, S>
impl<P: MutService, S: MutService<Input = P::Output>> MutServiceChainBuilder<P, S>
Sourcepub fn fork_clone<E, NS1: MutService<Input = S::Output, Error = E>, NS2: MutService<Input = S::Output, Error = E>>(
self,
first: NS1,
second: NS2,
) -> MutServiceChainBuilder<ServiceChain<P, S>, CloningForkService<NS1, NS2>>
pub fn fork_clone<E, NS1: MutService<Input = S::Output, Error = E>, NS2: MutService<Input = S::Output, Error = E>>( self, first: NS1, second: NS2, ) -> MutServiceChainBuilder<ServiceChain<P, S>, CloningForkService<NS1, NS2>>
Fork the service chain to the given two services by cloning the input.
Source§impl<'a, P: MutService + 'a, S: MutService<Input = P::Output> + 'a> MutServiceChainBuilder<P, S>
impl<'a, P: MutService + 'a, S: MutService<Input = P::Output> + 'a> MutServiceChainBuilder<P, S>
Sourcepub fn end(self) -> ServiceChain<P, S>
pub fn end(self) -> ServiceChain<P, S>
End and return the resulting ServiceChain.
Auto Trait Implementations§
impl<P, S> Freeze for MutServiceChainBuilder<P, S>
impl<P, S> RefUnwindSafe for MutServiceChainBuilder<P, S>where
P: RefUnwindSafe,
S: RefUnwindSafe,
impl<P, S> Send for MutServiceChainBuilder<P, S>
impl<P, S> Sync for MutServiceChainBuilder<P, S>
impl<P, S> Unpin for MutServiceChainBuilder<P, S>
impl<P, S> UnwindSafe for MutServiceChainBuilder<P, S>where
P: UnwindSafe,
S: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more