Trait tokio_proto::BindClient [] [src]

pub trait BindClient<Kind, T: 'static>: 'static {
    type ServiceRequest;
    type ServiceResponse;
    type ServiceError;
    type BindClient: Service<Request = Self::ServiceRequest, Response = Self::ServiceResponse, Error = Self::ServiceError>;
    fn bind_client(&self, handle: &Handle, io: T) -> Self::BindClient;
}

Binds an I/O object as a client of a service.

This trait is not intended to be implemented directly; instead, implement one of the server protocol traits:

  • pipeline::ClientProto
  • multiplex::ClientProto
  • streaming::pipeline::ClientProto
  • streaming::multiplex::ClientProto

See the crate documentation for more details on those traits.

The Kind parameter, in particular, is a zero-sized type used to allow blanket implementation from the various protocol traits. Any additional implementations of this trait should use their own zero-sized kind type to distinguish them.

Associated Types

The request type for the service.

The response type for the service.

The error type for the service.

The bound service.

Required Methods

Bind an I/O object as a service.

Implementors