pub trait TxToken {
// Required method
fn consume<R, F>(self, len: usize, f: F) -> R
where F: FnOnce(&mut [u8]) -> R;
// Provided method
fn set_meta(&mut self, meta: PacketMeta) { ... }
}Expand description
A token to transmit a single network packet.
Required Methods§
Sourcefn consume<R, F>(self, len: usize, f: F) -> R
fn consume<R, F>(self, len: usize, f: F) -> R
Consumes the token to send a single network packet.
This method constructs a transmit buffer of size len and calls the passed
closure f with a mutable reference to that buffer. The closure should construct
a valid network packet (e.g. an ethernet packet) in the buffer. When the closure
returns, the transmit buffer is sent out.
Provided Methods§
Sourcefn set_meta(&mut self, meta: PacketMeta)
fn set_meta(&mut self, meta: PacketMeta)
The Packet ID to be associated with the frame to be transmitted by this TxToken.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.