pub trait ByteLink {
// Required methods
fn read(
&mut self,
buf: &mut [u8],
) -> impl Future<Output = Result<usize>> + Send;
fn write_all(
&mut self,
data: &[u8],
) -> impl Future<Output = Result<()>> + Send;
}Expand description
A bidirectional byte stream: the seam a MAVLink Connection moves frames over.
Implemented here by MemoryLink for hardware-free testing; a serial port or UDP
socket implements the same two methods to carry MAVLink over real links.
Required Methods§
Sourcefn read(&mut self, buf: &mut [u8]) -> impl Future<Output = Result<usize>> + Send
fn read(&mut self, buf: &mut [u8]) -> impl Future<Output = Result<usize>> + Send
Reads available bytes into buf, returning how many were read.
§Arguments
buf- the destination for the bytes read.
§Returns
The number of bytes read; 0 means the link has no more input.
§Errors
Returns a MavlinkError if the underlying link fails.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".