Skip to main content

NetworkOps

Trait NetworkOps 

Source
pub trait NetworkOps {
    // Required methods
    fn listen(
        &self,
        addr: SocketAddr,
    ) -> BoxFuture<'static, Result<SocketAddr, ListenError>>;
    fn accept(
        &self,
        listener_addr: SocketAddr,
    ) -> BoxFuture<'static, Result<(Peer, ConnectionId), AcceptError>>;
    fn connect(
        &self,
        addr: ToSocketAddrs,
        timeout: Duration,
    ) -> BoxFuture<'static, Result<ConnectionId, ConnectError>>;
    fn send(
        &self,
        conn: ConnectionId,
        data: NonEmptyBytes,
    ) -> BoxFuture<'static, Result<(), SendError>>;
    fn recv(
        &self,
        conn: ConnectionId,
        bytes: NonZeroUsize,
    ) -> BoxFuture<'static, Result<NonEmptyBytes, ReceiveError>>;
    fn close(
        &self,
        conn: ConnectionId,
    ) -> BoxFuture<'static, Result<(), CloseError>>;
}

Required Methods§

Source

fn listen( &self, addr: SocketAddr, ) -> BoxFuture<'static, Result<SocketAddr, ListenError>>

Source

fn accept( &self, listener_addr: SocketAddr, ) -> BoxFuture<'static, Result<(Peer, ConnectionId), AcceptError>>

Source

fn connect( &self, addr: ToSocketAddrs, timeout: Duration, ) -> BoxFuture<'static, Result<ConnectionId, ConnectError>>

Source

fn send( &self, conn: ConnectionId, data: NonEmptyBytes, ) -> BoxFuture<'static, Result<(), SendError>>

Source

fn recv( &self, conn: ConnectionId, bytes: NonZeroUsize, ) -> BoxFuture<'static, Result<NonEmptyBytes, ReceiveError>>

Source

fn close( &self, conn: ConnectionId, ) -> BoxFuture<'static, Result<(), CloseError>>

Implementors§

Source§

impl<T> NetworkOps for Network<'_, T>