Crate embedded_nal

source ·
Expand description

Re-exports

pub use nb;
pub use heapless;

Structs

An IPv4 address.
An IPv6 address.
Sharable wrapper for a network stack implementation.
Single-thread shared reference to an internal network stack implementation.
An IPv4 socket address.
An IPv6 socket address.

Enums

This is the host address type to be returned by gethostbyname.
An IP address, either IPv4 or IPv6.
An internet socket address, either IPv4 or IPv6.

Traits

This trait is an extension trait for TcpStack and UdpStack for dns resolutions. It does not handle every DNS record type, but is meant as an embedded alternative to ToSocketAddrs, and is as such meant to resolve an ip address from a hostname, or a hostname from an ip address. This means that it only deals in host address records A (IPv4) and AAAA (IPv6).
This trait is implemented by TCP/IP stacks. You could, for example, have an implementation which knows how to send AT commands to an ESP8266 WiFi module. You could have another implementation which knows how to driver the Rust Standard Library’s std::net module. Given this trait, you can write a portable HTTP client which can work with either implementation.
This trait is implemented by TCP/IP stacks that expose TCP server functionality. TCP servers may listen for connection requests to establish multiple unique TCP connections with various clients.
This trait is implemented by UDP/IP stacks. You could, for example, have an implementation which knows how to send AT commands to an ESP8266 WiFi module. You could have another implementation which knows how to driver the Rust Standard Library’s std::net module. Given this trait, you can how write a portable CoAP client which can work with either implementation.
This trait is implemented by UDP/IP stacks. It provides the ability to listen for packets on a specified port and send replies.