[−][src]Trait tide::listener::Listener
The Listener trait represents an implementation of http transport for a tide
application. In order to provide a Listener to tide, you will also need to
implement at least one ToListener
that
outputs your Listener type.
Required methods
#[must_use]fn bind<'life0, 'async_trait>(
&'life0 mut self,
app: Server<State>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 mut self,
app: Server<State>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Bind the listener. This starts the listening process by opening the
necessary network ports, but not yet accepting incoming connections. This
method must be called before accept
.
#[must_use]fn accept<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Start accepting incoming connections. This method must be called only
after bind
has succeeded.
fn info(&self) -> Vec<ListenInfo>
Expose information about the connection. This should always return valid
data after bind
has succeeded.
Implementations on Foreign Types
impl<L, State> Listener<State> for Box<L> where
L: Listener<State>,
State: Send + Sync + 'static,
[src]
L: Listener<State>,
State: Send + Sync + 'static,
fn bind<'life0, 'async_trait>(
&'life0 mut self,
app: Server<State>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
app: Server<State>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn accept<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn info(&self) -> Vec<ListenInfo>
[src]
Implementors
impl<State> Listener<State> for ConcurrentListener<State> where
State: Clone + Send + Sync + 'static,
[src]
State: Clone + Send + Sync + 'static,
fn bind<'life0, 'async_trait>(
&'life0 mut self,
app: Server<State>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
app: Server<State>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn accept<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn info(&self) -> Vec<ListenInfo>
[src]
impl<State> Listener<State> for FailoverListener<State> where
State: Clone + Send + Sync + 'static,
[src]
State: Clone + Send + Sync + 'static,
fn bind<'life0, 'async_trait>(
&'life0 mut self,
app: Server<State>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
app: Server<State>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn accept<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,