pub struct Io<F = Base>(/* private fields */);
Expand description
Interface object to underlying io stream
Implementations§
source§impl<F> Io<F>
impl<F> Io<F>
sourcepub fn set_memory_pool(&self, pool: PoolRef)
pub fn set_memory_pool(&self, pool: PoolRef)
Set memory pool
sourcepub fn set_disconnect_timeout(&self, timeout: Seconds)
pub fn set_disconnect_timeout(&self, timeout: Seconds)
Set io disconnect timeout in millis
source§impl<F> Io<F>where
F: Filter,
impl<F> Io<F>where
F: Filter,
sourcepub fn add_filter<U>(self, nf: U) -> Io<Layer<U, F>>where
U: FilterLayer,
pub fn add_filter<U>(self, nf: U) -> Io<Layer<U, F>>where
U: FilterLayer,
Map current filter with new one
source§impl<F> Io<F>
impl<F> Io<F>
sourcepub async fn recv<U>(
&self,
codec: &U
) -> Result<Option<<U as Decoder>::Item>, Either<<U as Decoder>::Error, Error>>where
U: Decoder,
pub async fn recv<U>(
&self,
codec: &U
) -> Result<Option<<U as Decoder>::Item>, Either<<U as Decoder>::Error, Error>>where
U: Decoder,
Read incoming io stream and decode codec item.
sourcepub async fn send<U>(
&self,
item: <U as Encoder>::Item,
codec: &U
) -> Result<(), Either<<U as Encoder>::Error, Error>>where
U: Encoder,
pub async fn send<U>(
&self,
item: <U as Encoder>::Item,
codec: &U
) -> Result<(), Either<<U as Encoder>::Error, Error>>where
U: Encoder,
Encode item, send to the peer. Fully flush write buffer.
sourcepub async fn flush(&self, full: bool) -> Result<(), Error>
pub async fn flush(&self, full: bool) -> Result<(), Error>
Wake write task and instruct to flush data.
This is async version of .poll_flush() method.
sourcepub fn poll_read_ready(
&self,
cx: &mut Context<'_>
) -> Poll<Result<Option<()>, Error>>
pub fn poll_read_ready( &self, cx: &mut Context<'_> ) -> Poll<Result<Option<()>, Error>>
Polls for read readiness.
If the io stream is not currently ready for reading, this method will store a clone of the Waker from the provided Context. When the io stream becomes ready for reading, Waker::wake will be called on the waker.
Return value The function returns:
Poll::Pending
if the io stream is not ready for reading.
Poll::Ready(Ok(Some(()))))
if the io stream is ready for reading.
Poll::Ready(Ok(None))
if io stream is disconnected
Some(Poll::Ready(Err(e)))
if an error is encountered.
sourcepub fn poll_recv<U>(
&self,
codec: &U,
cx: &mut Context<'_>
) -> Poll<Result<<U as Decoder>::Item, RecvError<U>>>where
U: Decoder,
pub fn poll_recv<U>(
&self,
codec: &U,
cx: &mut Context<'_>
) -> Poll<Result<<U as Decoder>::Item, RecvError<U>>>where
U: Decoder,
Decode codec item from incoming bytes stream.
Wake read task and request to read more data if data is not enough for decoding. If error get returned this method does not register waker for later wake up action.
sourcepub fn poll_flush(
&self,
cx: &mut Context<'_>,
full: bool
) -> Poll<Result<(), Error>>
pub fn poll_flush( &self, cx: &mut Context<'_>, full: bool ) -> Poll<Result<(), Error>>
Wake write task and instruct to flush data.
If full
is true then wake up dispatcher when all data is flushed
otherwise wake up when size of write buffer is lower than
buffer max size.
sourcepub fn poll_shutdown(&self, cx: &mut Context<'_>) -> Poll<Result<(), Error>>
pub fn poll_shutdown(&self, cx: &mut Context<'_>) -> Poll<Result<(), Error>>
Gracefully shutdown io stream
sourcepub fn poll_read_pause(&self, cx: &mut Context<'_>) -> Poll<IoStatusUpdate>
pub fn poll_read_pause(&self, cx: &mut Context<'_>) -> Poll<IoStatusUpdate>
Pause read task
Returns status updates
sourcepub fn poll_status_update(&self, cx: &mut Context<'_>) -> Poll<IoStatusUpdate>
pub fn poll_status_update(&self, cx: &mut Context<'_>) -> Poll<IoStatusUpdate>
Wait for status updates
sourcepub fn poll_dispatch(&self, cx: &mut Context<'_>)
pub fn poll_dispatch(&self, cx: &mut Context<'_>)
Register dispatch task
Methods from Deref<Target = IoRef>§
sourcepub fn memory_pool(&self) -> PoolRef
pub fn memory_pool(&self) -> PoolRef
Get memory pool
sourcepub fn close(&self)
pub fn close(&self)
Gracefully close connection
Notify dispatcher and initiate io stream shutdown process.
sourcepub fn force_close(&self)
pub fn force_close(&self)
Force close connection
Dispatcher does not wait for uncompleted responses. Io stream get terminated without any graceful period.
sourcepub fn want_shutdown(&self)
pub fn want_shutdown(&self)
Gracefully shutdown io stream
sourcepub fn encode<U>(
&self,
item: <U as Encoder>::Item,
codec: &U
) -> Result<(), <U as Encoder>::Error>where
U: Encoder,
pub fn encode<U>(
&self,
item: <U as Encoder>::Item,
codec: &U
) -> Result<(), <U as Encoder>::Error>where
U: Encoder,
Encode and write item to a buffer and wake up write task
sourcepub fn decode<U>(
&self,
codec: &U
) -> Result<Option<<U as Decoder>::Item>, <U as Decoder>::Error>where
U: Decoder,
pub fn decode<U>(
&self,
codec: &U
) -> Result<Option<<U as Decoder>::Item>, <U as Decoder>::Error>where
U: Decoder,
Attempts to decode a frame from the read buffer
sourcepub fn decode_item<U>(
&self,
codec: &U
) -> Result<Decoded<<U as Decoder>::Item>, <U as Decoder>::Error>where
U: Decoder,
pub fn decode_item<U>(
&self,
codec: &U
) -> Result<Decoded<<U as Decoder>::Item>, <U as Decoder>::Error>where
U: Decoder,
Attempts to decode a frame from the read buffer
sourcepub fn write(&self, src: &[u8]) -> Result<(), Error>
pub fn write(&self, src: &[u8]) -> Result<(), Error>
Write bytes to a buffer and wake up write task
sourcepub fn with_write_buf<F, R>(&self, f: F) -> Result<R, Error>
pub fn with_write_buf<F, R>(&self, f: F) -> Result<R, Error>
Get mut access to source write buffer
sourcepub fn with_read_buf<F, R>(&self, f: F) -> R
pub fn with_read_buf<F, R>(&self, f: F) -> R
Get mut access to source read buffer
sourcepub fn timer_handle(&self) -> TimerHandle
pub fn timer_handle(&self) -> TimerHandle
current timer handle
sourcepub fn start_timer(&self, timeout: Seconds) -> TimerHandle
pub fn start_timer(&self, timeout: Seconds) -> TimerHandle
Start timer
sourcepub fn stop_timer(&self)
pub fn stop_timer(&self)
Stop timer
sourcepub fn on_disconnect(&self) -> OnDisconnect ⓘ
pub fn on_disconnect(&self) -> OnDisconnect ⓘ
Notify when io stream get disconnected
Trait Implementations§
source§impl<F> PartialEq for Io<F>
impl<F> PartialEq for Io<F>
source§impl<F, S, B, C> Service<Io<F>> for H1ServiceHandler<F, S, B, C>where
F: Filter,
C: Service<Control<F, S::Error>, Response = ControlAck> + 'static,
C::Error: Error,
S: Service<Request> + 'static,
S::Error: ResponseError,
S::Response: Into<Response<B>>,
B: MessageBody,
impl<F, S, B, C> Service<Io<F>> for H1ServiceHandler<F, S, B, C>where
F: Filter,
C: Service<Control<F, S::Error>, Response = ControlAck> + 'static,
C::Error: Error,
S: Service<Request> + 'static,
S::Error: ResponseError,
S::Response: Into<Response<B>>,
B: MessageBody,
§type Error = DispatchError
type Error = DispatchError
source§fn poll_ready(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>
fn poll_ready(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>
Ready
when the service is able to process requests. Read moresource§async fn call(
&self,
io: Io<F>,
_: ServiceCtx<'_, Self>
) -> Result<(), Self::Error>
async fn call( &self, io: Io<F>, _: ServiceCtx<'_, Self> ) -> Result<(), Self::Error>
source§impl<F, Ctl, Pub> Service<Io<F>> for ServerHandler<Ctl, Pub>where
F: Filter,
Ctl: ServiceFactory<Control<<Pub as ServiceFactory<Message>>::Error>, Response = ControlAck> + 'static,
<Ctl as ServiceFactory<Control<<Pub as ServiceFactory<Message>>::Error>>>::Error: Debug,
<Ctl as ServiceFactory<Control<<Pub as ServiceFactory<Message>>::Error>>>::InitError: Debug,
Pub: ServiceFactory<Message, Response = ()> + 'static,
<Pub as ServiceFactory<Message>>::Error: Debug,
<Pub as ServiceFactory<Message>>::InitError: Debug,
impl<F, Ctl, Pub> Service<Io<F>> for ServerHandler<Ctl, Pub>where
F: Filter,
Ctl: ServiceFactory<Control<<Pub as ServiceFactory<Message>>::Error>, Response = ControlAck> + 'static,
<Ctl as ServiceFactory<Control<<Pub as ServiceFactory<Message>>::Error>>>::Error: Debug,
<Ctl as ServiceFactory<Control<<Pub as ServiceFactory<Message>>::Error>>>::InitError: Debug,
Pub: ServiceFactory<Message, Response = ()> + 'static,
<Pub as ServiceFactory<Message>>::Error: Debug,
<Pub as ServiceFactory<Message>>::InitError: Debug,
§type Error = ServerError<()>
type Error = ServerError<()>
source§async fn call(
&self,
req: Io<F>,
_: ServiceCtx<'_, ServerHandler<Ctl, Pub>>
) -> Result<<ServerHandler<Ctl, Pub> as Service<Io<F>>>::Response, <ServerHandler<Ctl, Pub> as Service<Io<F>>>::Error>
async fn call( &self, req: Io<F>, _: ServiceCtx<'_, ServerHandler<Ctl, Pub>> ) -> Result<<ServerHandler<Ctl, Pub> as Service<Io<F>>>::Response, <ServerHandler<Ctl, Pub> as Service<Io<F>>>::Error>
source§fn poll_ready(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>
fn poll_ready(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>
Ready
when the service is able to process requests. Read moresource§impl<F> Service<Io<F>> for SslAcceptorServicewhere
F: Filter,
impl<F> Service<Io<F>> for SslAcceptorServicewhere
F: Filter,
§type Error = Box<dyn Error>
type Error = Box<dyn Error>
source§fn poll_ready(
&self,
cx: &mut Context<'_>
) -> Poll<Result<(), <SslAcceptorService as Service<Io<F>>>::Error>>
fn poll_ready( &self, cx: &mut Context<'_> ) -> Poll<Result<(), <SslAcceptorService as Service<Io<F>>>::Error>>
Ready
when the service is able to process requests. Read moresource§async fn call(
&self,
io: Io<F>,
_: ServiceCtx<'_, SslAcceptorService>
) -> Result<<SslAcceptorService as Service<Io<F>>>::Response, <SslAcceptorService as Service<Io<F>>>::Error>
async fn call( &self, io: Io<F>, _: ServiceCtx<'_, SslAcceptorService> ) -> Result<<SslAcceptorService as Service<Io<F>>>::Response, <SslAcceptorService as Service<Io<F>>>::Error>
source§impl<F> Service<Io<F>> for TlsAcceptorServicewhere
F: Filter,
impl<F> Service<Io<F>> for TlsAcceptorServicewhere
F: Filter,
§type Response = Io<Layer<TlsServerFilter, F>>
type Response = Io<Layer<TlsServerFilter, F>>
source§fn poll_ready(
&self,
cx: &mut Context<'_>
) -> Poll<Result<(), <TlsAcceptorService as Service<Io<F>>>::Error>>
fn poll_ready( &self, cx: &mut Context<'_> ) -> Poll<Result<(), <TlsAcceptorService as Service<Io<F>>>::Error>>
Ready
when the service is able to process requests. Read moresource§async fn call(
&self,
io: Io<F>,
_: ServiceCtx<'_, TlsAcceptorService>
) -> Result<<TlsAcceptorService as Service<Io<F>>>::Response, <TlsAcceptorService as Service<Io<F>>>::Error>
async fn call( &self, io: Io<F>, _: ServiceCtx<'_, TlsAcceptorService> ) -> Result<<TlsAcceptorService as Service<Io<F>>>::Response, <TlsAcceptorService as Service<Io<F>>>::Error>
source§impl<F: Filter> Service<Io<F>> for WsTransportService
impl<F: Filter> Service<Io<F>> for WsTransportService
§type Response = Io<Layer<WsTransport, F>>
type Response = Io<Layer<WsTransport, F>>
source§async fn call(
&self,
io: Io<F>,
_: ServiceCtx<'_, Self>
) -> Result<Self::Response, Self::Error>
async fn call( &self, io: Io<F>, _: ServiceCtx<'_, Self> ) -> Result<Self::Response, Self::Error>
source§fn poll_ready(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>
fn poll_ready(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>
Ready
when the service is able to process requests. Read moresource§impl<F, S, B, C> ServiceFactory<Io<F>> for H1Service<F, S, B, C>where
F: Filter,
S: ServiceFactory<Request> + 'static,
S::Error: ResponseError,
S::Response: Into<Response<B>>,
S::InitError: Debug,
B: MessageBody,
C: ServiceFactory<Control<F, S::Error>, Response = ControlAck> + 'static,
C::Error: Error,
C::InitError: Debug,
impl<F, S, B, C> ServiceFactory<Io<F>> for H1Service<F, S, B, C>where
F: Filter,
S: ServiceFactory<Request> + 'static,
S::Error: ResponseError,
S::Response: Into<Response<B>>,
S::InitError: Debug,
B: MessageBody,
C: ServiceFactory<Control<F, S::Error>, Response = ControlAck> + 'static,
C::Error: Error,
C::InitError: Debug,
§type Error = DispatchError
type Error = DispatchError
§type Service = H1ServiceHandler<F, <S as ServiceFactory<Request>>::Service, B, <C as ServiceFactory<Control<F, <S as ServiceFactory<Request>>::Error>>>::Service>
type Service = H1ServiceHandler<F, <S as ServiceFactory<Request>>::Service, B, <C as ServiceFactory<Control<F, <S as ServiceFactory<Request>>::Error>>>::Service>
Service
created by this factory.source§async fn create(&self, _: ()) -> Result<Self::Service, Self::InitError>
async fn create(&self, _: ()) -> Result<Self::Service, Self::InitError>
source§async fn pipeline(
&self,
cfg: Cfg
) -> Result<Pipeline<Self::Service>, Self::InitError>where
Self: Sized,
async fn pipeline(
&self,
cfg: Cfg
) -> Result<Pipeline<Self::Service>, Self::InitError>where
Self: Sized,
source§fn map<F, Res>(
self,
f: F
) -> ServiceChainFactory<MapFactory<Self, F, Req, Res, Cfg>, Req, Cfg>
fn map<F, Res>( self, f: F ) -> ServiceChainFactory<MapFactory<Self, F, Req, Res, Cfg>, Req, Cfg>
source§fn map_err<F, E>(
self,
f: F
) -> ServiceChainFactory<MapErrFactory<Self, Req, Cfg, F, E>, Req, Cfg>
fn map_err<F, E>( self, f: F ) -> ServiceChainFactory<MapErrFactory<Self, Req, Cfg, F, E>, Req, Cfg>
source§fn map_init_err<F, E>(
self,
f: F
) -> ServiceChainFactory<MapInitErr<Self, Req, Cfg, F, E>, Req, Cfg>
fn map_init_err<F, E>( self, f: F ) -> ServiceChainFactory<MapInitErr<Self, Req, Cfg, F, E>, Req, Cfg>
source§impl<F, S, B, C> ServiceFactory<Io<F>> for H2Service<F, S, B, C>where
F: Filter,
S: ServiceFactory<Request> + 'static,
S::Error: ResponseError,
S::InitError: Debug,
S::Response: Into<Response<B>>,
B: MessageBody,
C: ServiceFactory<Control<H2Error>, Response = ControlAck> + 'static,
C::Error: Error,
C::InitError: Debug,
impl<F, S, B, C> ServiceFactory<Io<F>> for H2Service<F, S, B, C>where
F: Filter,
S: ServiceFactory<Request> + 'static,
S::Error: ResponseError,
S::InitError: Debug,
S::Response: Into<Response<B>>,
B: MessageBody,
C: ServiceFactory<Control<H2Error>, Response = ControlAck> + 'static,
C::Error: Error,
C::InitError: Debug,
§type Error = DispatchError
type Error = DispatchError
§type Service = H2ServiceHandler<F, <S as ServiceFactory<Request>>::Service, B, C>
type Service = H2ServiceHandler<F, <S as ServiceFactory<Request>>::Service, B, C>
Service
created by this factory.source§async fn create(&self, _: ()) -> Result<Self::Service, Self::InitError>
async fn create(&self, _: ()) -> Result<Self::Service, Self::InitError>
source§async fn pipeline(
&self,
cfg: Cfg
) -> Result<Pipeline<Self::Service>, Self::InitError>where
Self: Sized,
async fn pipeline(
&self,
cfg: Cfg
) -> Result<Pipeline<Self::Service>, Self::InitError>where
Self: Sized,
source§fn map<F, Res>(
self,
f: F
) -> ServiceChainFactory<MapFactory<Self, F, Req, Res, Cfg>, Req, Cfg>
fn map<F, Res>( self, f: F ) -> ServiceChainFactory<MapFactory<Self, F, Req, Res, Cfg>, Req, Cfg>
source§fn map_err<F, E>(
self,
f: F
) -> ServiceChainFactory<MapErrFactory<Self, Req, Cfg, F, E>, Req, Cfg>
fn map_err<F, E>( self, f: F ) -> ServiceChainFactory<MapErrFactory<Self, Req, Cfg, F, E>, Req, Cfg>
source§fn map_init_err<F, E>(
self,
f: F
) -> ServiceChainFactory<MapInitErr<Self, Req, Cfg, F, E>, Req, Cfg>
fn map_init_err<F, E>( self, f: F ) -> ServiceChainFactory<MapInitErr<Self, Req, Cfg, F, E>, Req, Cfg>
source§impl<F, S, B, C1, C2> ServiceFactory<Io<F>> for HttpService<F, S, B, C1, C2>where
F: Filter,
S: ServiceFactory<Request> + 'static,
S::Error: ResponseError,
S::InitError: Debug,
S::Response: Into<Response<B>>,
B: MessageBody,
C1: ServiceFactory<Control<F, S::Error>, Response = ControlAck> + 'static,
C1::Error: Error,
C1::InitError: Debug,
C2: ServiceFactory<Control<H2Error>, Response = ControlAck> + 'static,
C2::Error: Error,
C2::InitError: Debug,
impl<F, S, B, C1, C2> ServiceFactory<Io<F>> for HttpService<F, S, B, C1, C2>where
F: Filter,
S: ServiceFactory<Request> + 'static,
S::Error: ResponseError,
S::InitError: Debug,
S::Response: Into<Response<B>>,
B: MessageBody,
C1: ServiceFactory<Control<F, S::Error>, Response = ControlAck> + 'static,
C1::Error: Error,
C1::InitError: Debug,
C2: ServiceFactory<Control<H2Error>, Response = ControlAck> + 'static,
C2::Error: Error,
C2::InitError: Debug,
§type Error = DispatchError
type Error = DispatchError
§type Service = HttpServiceHandler<F, <S as ServiceFactory<Request>>::Service, B, <C1 as ServiceFactory<Control<F, <S as ServiceFactory<Request>>::Error>>>::Service, C2>
type Service = HttpServiceHandler<F, <S as ServiceFactory<Request>>::Service, B, <C1 as ServiceFactory<Control<F, <S as ServiceFactory<Request>>::Error>>>::Service, C2>
Service
created by this factory.source§async fn create(&self, _: ()) -> Result<Self::Service, Self::InitError>
async fn create(&self, _: ()) -> Result<Self::Service, Self::InitError>
source§async fn pipeline(
&self,
cfg: Cfg
) -> Result<Pipeline<Self::Service>, Self::InitError>where
Self: Sized,
async fn pipeline(
&self,
cfg: Cfg
) -> Result<Pipeline<Self::Service>, Self::InitError>where
Self: Sized,
source§fn map<F, Res>(
self,
f: F
) -> ServiceChainFactory<MapFactory<Self, F, Req, Res, Cfg>, Req, Cfg>
fn map<F, Res>( self, f: F ) -> ServiceChainFactory<MapFactory<Self, F, Req, Res, Cfg>, Req, Cfg>
source§fn map_err<F, E>(
self,
f: F
) -> ServiceChainFactory<MapErrFactory<Self, Req, Cfg, F, E>, Req, Cfg>
fn map_err<F, E>( self, f: F ) -> ServiceChainFactory<MapErrFactory<Self, Req, Cfg, F, E>, Req, Cfg>
source§fn map_init_err<F, E>(
self,
f: F
) -> ServiceChainFactory<MapInitErr<Self, Req, Cfg, F, E>, Req, Cfg>
fn map_init_err<F, E>( self, f: F ) -> ServiceChainFactory<MapInitErr<Self, Req, Cfg, F, E>, Req, Cfg>
source§impl<F, Ctl, Pub> ServiceFactory<Io<F>> for Server<Ctl, Pub>where
F: Filter,
Ctl: ServiceFactory<Control<<Pub as ServiceFactory<Message>>::Error>, Response = ControlAck> + 'static,
<Ctl as ServiceFactory<Control<<Pub as ServiceFactory<Message>>::Error>>>::Error: Debug,
<Ctl as ServiceFactory<Control<<Pub as ServiceFactory<Message>>::Error>>>::InitError: Debug,
Pub: ServiceFactory<Message, Response = ()> + 'static,
<Pub as ServiceFactory<Message>>::Error: Debug,
<Pub as ServiceFactory<Message>>::InitError: Debug,
impl<F, Ctl, Pub> ServiceFactory<Io<F>> for Server<Ctl, Pub>where
F: Filter,
Ctl: ServiceFactory<Control<<Pub as ServiceFactory<Message>>::Error>, Response = ControlAck> + 'static,
<Ctl as ServiceFactory<Control<<Pub as ServiceFactory<Message>>::Error>>>::Error: Debug,
<Ctl as ServiceFactory<Control<<Pub as ServiceFactory<Message>>::Error>>>::InitError: Debug,
Pub: ServiceFactory<Message, Response = ()> + 'static,
<Pub as ServiceFactory<Message>>::Error: Debug,
<Pub as ServiceFactory<Message>>::InitError: Debug,
§type Error = ServerError<()>
type Error = ServerError<()>
§type Service = ServerHandler<Ctl, Pub>
type Service = ServerHandler<Ctl, Pub>
Service
created by this factory.source§async fn create(
&self,
_: ()
) -> Result<<Server<Ctl, Pub> as ServiceFactory<Io<F>>>::Service, <Server<Ctl, Pub> as ServiceFactory<Io<F>>>::InitError>
async fn create( &self, _: () ) -> Result<<Server<Ctl, Pub> as ServiceFactory<Io<F>>>::Service, <Server<Ctl, Pub> as ServiceFactory<Io<F>>>::InitError>
source§async fn pipeline(
&self,
cfg: Cfg
) -> Result<Pipeline<Self::Service>, Self::InitError>where
Self: Sized,
async fn pipeline(
&self,
cfg: Cfg
) -> Result<Pipeline<Self::Service>, Self::InitError>where
Self: Sized,
source§fn map<F, Res>(
self,
f: F
) -> ServiceChainFactory<MapFactory<Self, F, Req, Res, Cfg>, Req, Cfg>
fn map<F, Res>( self, f: F ) -> ServiceChainFactory<MapFactory<Self, F, Req, Res, Cfg>, Req, Cfg>
source§fn map_err<F, E>(
self,
f: F
) -> ServiceChainFactory<MapErrFactory<Self, Req, Cfg, F, E>, Req, Cfg>
fn map_err<F, E>( self, f: F ) -> ServiceChainFactory<MapErrFactory<Self, Req, Cfg, F, E>, Req, Cfg>
source§fn map_init_err<F, E>(
self,
f: F
) -> ServiceChainFactory<MapInitErr<Self, Req, Cfg, F, E>, Req, Cfg>
fn map_init_err<F, E>( self, f: F ) -> ServiceChainFactory<MapInitErr<Self, Req, Cfg, F, E>, Req, Cfg>
source§impl<F, C> ServiceFactory<Io<F>, C> for SslAcceptorwhere
F: Filter,
impl<F, C> ServiceFactory<Io<F>, C> for SslAcceptorwhere
F: Filter,
§type Service = SslAcceptorService
type Service = SslAcceptorService
Service
created by this factory.source§async fn create(
&self,
_: C
) -> Result<<SslAcceptor as ServiceFactory<Io<F>, C>>::Service, <SslAcceptor as ServiceFactory<Io<F>, C>>::InitError>
async fn create( &self, _: C ) -> Result<<SslAcceptor as ServiceFactory<Io<F>, C>>::Service, <SslAcceptor as ServiceFactory<Io<F>, C>>::InitError>
source§async fn pipeline(
&self,
cfg: Cfg
) -> Result<Pipeline<Self::Service>, Self::InitError>where
Self: Sized,
async fn pipeline(
&self,
cfg: Cfg
) -> Result<Pipeline<Self::Service>, Self::InitError>where
Self: Sized,
source§fn map<F, Res>(
self,
f: F
) -> ServiceChainFactory<MapFactory<Self, F, Req, Res, Cfg>, Req, Cfg>
fn map<F, Res>( self, f: F ) -> ServiceChainFactory<MapFactory<Self, F, Req, Res, Cfg>, Req, Cfg>
source§fn map_err<F, E>(
self,
f: F
) -> ServiceChainFactory<MapErrFactory<Self, Req, Cfg, F, E>, Req, Cfg>
fn map_err<F, E>( self, f: F ) -> ServiceChainFactory<MapErrFactory<Self, Req, Cfg, F, E>, Req, Cfg>
source§fn map_init_err<F, E>(
self,
f: F
) -> ServiceChainFactory<MapInitErr<Self, Req, Cfg, F, E>, Req, Cfg>
fn map_init_err<F, E>( self, f: F ) -> ServiceChainFactory<MapInitErr<Self, Req, Cfg, F, E>, Req, Cfg>
source§impl<F, C> ServiceFactory<Io<F>, C> for TlsAcceptorwhere
F: Filter,
impl<F, C> ServiceFactory<Io<F>, C> for TlsAcceptorwhere
F: Filter,
§type Response = Io<Layer<TlsServerFilter, F>>
type Response = Io<Layer<TlsServerFilter, F>>
§type Service = TlsAcceptorService
type Service = TlsAcceptorService
Service
created by this factory.