Skip to main content

DatagramSocketExt

Trait DatagramSocketExt 

pub trait DatagramSocketExt: DatagramSocket + DatagramSocketExtSealed {
    // Provided methods
    fn recv<'a>(
        &'a mut self,
        buffer: &'a mut [u8],
    ) -> impl Future<Output = Result<DatagramMetadata, DatagramError>> + Send + 'a
       where Self: Sized { ... }
    fn recv_batch<'a, 'buffer>(
        &'a mut self,
        buffers: &'a mut [IoSliceMut<'buffer>],
        metadata: &'a mut [DatagramMetadata],
    ) -> impl Future<Output = Result<usize, DatagramError>> + Send + 'a
       where 'buffer: 'a,
             Self: Sized { ... }
}
Available on crate features std and udp only.
Expand description

Async convenience methods for DatagramSocket.

Provided Methods§

fn recv<'a>( &'a mut self, buffer: &'a mut [u8], ) -> impl Future<Output = Result<DatagramMetadata, DatagramError>> + Send + 'a
where Self: Sized,

Receive one datagram into buffer.

fn recv_batch<'a, 'buffer>( &'a mut self, buffers: &'a mut [IoSliceMut<'buffer>], metadata: &'a mut [DatagramMetadata], ) -> impl Future<Output = Result<usize, DatagramError>> + Send + 'a
where 'buffer: 'a, Self: Sized,

Receive one or more datagrams into parallel buffer and metadata slices.

Dyn Compatibility§

This trait is dyn compatible.

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

Implementors§

§

impl<T> DatagramSocketExt for T
where T: DatagramSocket + ?Sized,