Skip to main content

NetStack

Trait NetStack 

Source
pub trait NetStack {
    type UdpBind<'a>: UdpBind
       where Self: 'a;
    type UdpConnect<'a>: UdpConnect
       where Self: 'a;
    type TcpBind<'a>: TcpBind
       where Self: 'a;
    type TcpConnect<'a>: TcpConnect
       where Self: 'a;
    type Dns<'a>: Dns
       where Self: 'a;

    // Required methods
    fn udp_bind(&self) -> Option<Self::UdpBind<'_>>;
    fn udp_connect(&self) -> Option<Self::UdpConnect<'_>>;
    fn tcp_bind(&self) -> Option<Self::TcpBind<'_>>;
    fn tcp_connect(&self) -> Option<Self::TcpConnect<'_>>;
    fn dns(&self) -> Option<Self::Dns<'_>>;
}
Expand description

The network stack used by rs-matter-stack

Depending on the platform and features enabled, the stack might or might not support certain protocols.

Required Associated Types§

Source

type UdpBind<'a>: UdpBind where Self: 'a

Source

type UdpConnect<'a>: UdpConnect where Self: 'a

Source

type TcpBind<'a>: TcpBind where Self: 'a

Source

type TcpConnect<'a>: TcpConnect where Self: 'a

Source

type Dns<'a>: Dns where Self: 'a

Required Methods§

Source

fn udp_bind(&self) -> Option<Self::UdpBind<'_>>

Return a UDP Bind implementation, if supported by the network stack

Source

fn udp_connect(&self) -> Option<Self::UdpConnect<'_>>

Return a UDP Connect implementation, if supported by the network stack

Source

fn tcp_bind(&self) -> Option<Self::TcpBind<'_>>

Return a TCP Bind implementation, if supported by the network stack

Source

fn tcp_connect(&self) -> Option<Self::TcpConnect<'_>>

Return a TCP Connect implementation, if supported by the network stack

Source

fn dns(&self) -> Option<Self::Dns<'_>>

Return a DNS implementation, if supported by the network stack

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<T> NetStack for &T
where T: NetStack,

Source§

type UdpBind<'a> = <T as NetStack>::UdpBind<'a> where Self: 'a

Source§

type UdpConnect<'a> = <T as NetStack>::UdpConnect<'a> where Self: 'a

Source§

type TcpBind<'a> = <T as NetStack>::TcpBind<'a> where Self: 'a

Source§

type TcpConnect<'a> = <T as NetStack>::TcpConnect<'a> where Self: 'a

Source§

type Dns<'a> = <T as NetStack>::Dns<'a> where Self: 'a

Source§

fn udp_bind(&self) -> Option<Self::UdpBind<'_>>

Source§

fn udp_connect(&self) -> Option<Self::UdpConnect<'_>>

Source§

fn tcp_bind(&self) -> Option<Self::TcpBind<'_>>

Source§

fn tcp_connect(&self) -> Option<Self::TcpConnect<'_>>

Source§

fn dns(&self) -> Option<Self::Dns<'_>>

Implementors§