pub trait INet:
    Unpin
    + Send
    + Sync {
    // Required methods
    fn tcp_connect<'life0, 'life1, 'async_trait>(
        &'life0 self,
        ctx: &'life1 mut Context,
        addr: Address,
    ) -> Pin<Box<dyn Future<Output = Result<TcpStream>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn tcp_bind<'life0, 'life1, 'async_trait>(
        &'life0 self,
        ctx: &'life1 mut Context,
        addr: Address,
    ) -> Pin<Box<dyn Future<Output = Result<TcpListener>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn udp_bind<'life0, 'life1, 'async_trait>(
        &'life0 self,
        ctx: &'life1 mut Context,
        addr: Address,
    ) -> Pin<Box<dyn Future<Output = Result<UdpSocket>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
}Expand description
A Net.