Trait tokio_tower::multiplex::client::TagStore [−][src]
A transport capable of transporting tagged requests and responses must implement this
interface in order to be used with a Client
.
Note that we require self to be pinned here as assign_tag
and finish_tag
are called on the
transport, which is already pinned so that we can use it as a Stream + Sink
. It wouldn't be
safe to then give out &mut
to the transport without Pin
, as that might move the transport.
Associated Types
Loading content...Required methods
fn assign_tag(self: Pin<&mut Self>, r: &mut Request) -> Self::Tag
[src]
Assign a fresh tag to the given Request
, and return that tag.
fn finish_tag(self: Pin<&mut Self>, r: &Response) -> Self::Tag
[src]
Retire and return the tag contained in the given Response
.
Implementors
impl<T, S, Request> TagStore<Request, <T as TryStream>::Ok> for MultiplexTransport<T, S> where
T: Sink<Request> + TryStream,
S: TagStore<Request, <T as TryStream>::Ok>,
[src]
T: Sink<Request> + TryStream,
S: TagStore<Request, <T as TryStream>::Ok>,