Skip to main content

SocketBuilderTrait

Trait SocketBuilderTrait 

Source
pub trait SocketBuilderTrait<'d, const N: usize, const TX_SZ: usize, const RX_SZ: usize, const BUF_SIZE: usize> {
    // Required methods
    fn build_tcp_client<CB: TcpClientCallBack>(
        self,
        ip: Ipv4Addr,
        port: u16,
        cb: CB,
        state: &'d SocketState<N, TX_SZ, RX_SZ, BUF_SIZE>,
    ) -> TcpClient<'d, N, TX_SZ, RX_SZ, BUF_SIZE, CB>;
    fn build_tcp_server<CB: TcpServerCallBack>(
        self,
        state: &'d SocketState<N, TX_SZ, RX_SZ, BUF_SIZE>,
        port: u16,
        cb: &'d CB,
    ) -> TcpServer<'d, N, TX_SZ, RX_SZ, BUF_SIZE, CB>;
}
Expand description

socket builder trait, let stack build tcp client or tcp server

Required Methods§

Source

fn build_tcp_client<CB: TcpClientCallBack>( self, ip: Ipv4Addr, port: u16, cb: CB, state: &'d SocketState<N, TX_SZ, RX_SZ, BUF_SIZE>, ) -> TcpClient<'d, N, TX_SZ, RX_SZ, BUF_SIZE, CB>

build tcp client

Source

fn build_tcp_server<CB: TcpServerCallBack>( self, state: &'d SocketState<N, TX_SZ, RX_SZ, BUF_SIZE>, port: u16, cb: &'d CB, ) -> TcpServer<'d, N, TX_SZ, RX_SZ, BUF_SIZE, CB>

build tcp server

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<'d, const N: usize, const TX_SZ: usize, const RX_SZ: usize, const BUF_SIZE: usize> SocketBuilderTrait<'d, N, TX_SZ, RX_SZ, BUF_SIZE> for Stack<'d>

support socket to build tcp client/server

Source§

fn build_tcp_client<CB: TcpClientCallBack>( self, ip: Ipv4Addr, port: u16, cb: CB, state: &'d SocketState<N, TX_SZ, RX_SZ, BUF_SIZE>, ) -> TcpClient<'d, N, TX_SZ, RX_SZ, BUF_SIZE, CB>

Source§

fn build_tcp_server<CB: TcpServerCallBack>( self, state: &'d SocketState<N, TX_SZ, RX_SZ, BUF_SIZE>, port: u16, cb: &'d CB, ) -> TcpServer<'d, N, TX_SZ, RX_SZ, BUF_SIZE, CB>

Implementors§