pub struct Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE> {
pub sink: SinkT,
pub phantom: PhantomDisown<(ResponseT, TransportE, TimeoutFut, TimeoutE)>,
}
Fields§
§sink: SinkT
The sink over which to communicate with the Task
.
phantom: PhantomDisown<(ResponseT, TransportE, TimeoutFut, TimeoutE)>
Implementations§
Trait Implementations§
Source§impl<SinkT: Clone, ResponseT, TransportE, TimeoutFut, TimeoutE> Clone for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>
impl<SinkT: Clone, ResponseT, TransportE, TimeoutFut, TimeoutE> Clone for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>
Source§impl<SinkT: Debug, ResponseT: Debug, TransportE: Debug, TimeoutFut: Debug, TimeoutE: Debug> Debug for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>
impl<SinkT: Debug, ResponseT: Debug, TransportE: Debug, TimeoutFut: Debug, TimeoutE: Debug> Debug for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>
Source§impl<'a, SinkT, SinkE, RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE> Service<Dialogue<RequestT, ResponseT, TimeoutFut>> for &'a Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>
impl<'a, SinkT, SinkE, RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE> Service<Dialogue<RequestT, ResponseT, TimeoutFut>> for &'a Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>
Source§type Future = OneTwo<MapErr<SendAndClose<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>, &'a SinkT>, fn(SinkE) -> Error<SinkE, TransportE, TimeoutE>>, OneTwo<Map<Receiver<TransportE>, fn(Result<TransportE, Canceled>) -> Result<(), Error<SinkE, TransportE, TimeoutE>>>, Map<Receiver<Result<ResponseT, Either<TransportE, TimeoutE>>>, fn(Result<Result<ResponseT, Either<TransportE, TimeoutE>>, Canceled>) -> Result<ResponseT, Error<SinkE, TransportE, TimeoutE>>>>>
type Future = OneTwo<MapErr<SendAndClose<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>, &'a SinkT>, fn(SinkE) -> Error<SinkE, TransportE, TimeoutE>>, OneTwo<Map<Receiver<TransportE>, fn(Result<TransportE, Canceled>) -> Result<(), Error<SinkE, TransportE, TimeoutE>>>, Map<Receiver<Result<ResponseT, Either<TransportE, TimeoutE>>>, fn(Result<Result<ResponseT, Either<TransportE, TimeoutE>>, Canceled>) -> Result<ResponseT, Error<SinkE, TransportE, TimeoutE>>>>>
The future response value.
Source§impl<SinkT, RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE> Service<Dialogue<RequestT, ResponseT, TimeoutFut>> for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>
impl<SinkT, RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE> Service<Dialogue<RequestT, ResponseT, TimeoutFut>> for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>
Source§type Error = Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE, TimeoutE>
type Error = Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE, TimeoutE>
Errors produced by the service.
Source§type Future = OneTwo<MapErr<SendAndClose<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>, SinkT>, fn(<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error) -> Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE, TimeoutE>>, OneTwo<Map<Receiver<TransportE>, fn(Result<TransportE, Canceled>) -> Result<(), Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE, TimeoutE>>>, Map<Receiver<Result<ResponseT, Either<TransportE, TimeoutE>>>, fn(Result<Result<ResponseT, Either<TransportE, TimeoutE>>, Canceled>) -> Result<ResponseT, Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE, TimeoutE>>>>>
type Future = OneTwo<MapErr<SendAndClose<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>, SinkT>, fn(<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error) -> Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE, TimeoutE>>, OneTwo<Map<Receiver<TransportE>, fn(Result<TransportE, Canceled>) -> Result<(), Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE, TimeoutE>>>, Map<Receiver<Result<ResponseT, Either<TransportE, TimeoutE>>>, fn(Result<Result<ResponseT, Either<TransportE, TimeoutE>>, Canceled>) -> Result<ResponseT, Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE, TimeoutE>>>>>
The future response value.
Source§impl<'a, SinkT, SinkE, RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE> Service<Notification<RequestT>> for &'a Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>
impl<'a, SinkT, SinkE, RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE> Service<Notification<RequestT>> for &'a Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>
Source§type Future = OneTwo<MapErr<SendAndClose<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>, &'a SinkT>, fn(SinkE) -> Error<SinkE, TransportE>>, Map<Receiver<TransportE>, fn(Result<TransportE, Canceled>) -> Result<(), Error<SinkE, TransportE>>>>
type Future = OneTwo<MapErr<SendAndClose<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>, &'a SinkT>, fn(SinkE) -> Error<SinkE, TransportE>>, Map<Receiver<TransportE>, fn(Result<TransportE, Canceled>) -> Result<(), Error<SinkE, TransportE>>>>
The future response value.
Source§impl<SinkT, RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE> Service<Notification<RequestT>> for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>
impl<SinkT, RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE> Service<Notification<RequestT>> for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>
Source§type Error = Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE>
type Error = Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE>
Errors produced by the service.
Source§type Future = OneTwo<MapErr<SendAndClose<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>, SinkT>, fn(<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error) -> Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE>>, Map<Receiver<TransportE>, fn(Result<TransportE, Canceled>) -> Result<(), Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE>>>>
type Future = OneTwo<MapErr<SendAndClose<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>, SinkT>, fn(<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error) -> Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE>>, Map<Receiver<TransportE>, fn(Result<TransportE, Canceled>) -> Result<(), Error<<SinkT as Sink<Ask<RequestT, ResponseT, TransportE, TimeoutFut, TimeoutE>>>::Error, TransportE>>>>
The future response value.
Auto Trait Implementations§
impl<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE> Freeze for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>where
SinkT: Freeze,
impl<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE> RefUnwindSafe for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>where
SinkT: RefUnwindSafe,
impl<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE> Send for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>where
SinkT: Send,
impl<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE> Sync for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>where
SinkT: Sync,
impl<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE> Unpin for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>where
SinkT: Unpin,
impl<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE> UnwindSafe for Service<SinkT, ResponseT, TransportE, TimeoutFut, TimeoutE>where
SinkT: 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