Struct nrf_modem::UdpSocket

source ·
pub struct UdpSocket { /* private fields */ }
Expand description

A socket that sends and receives UDP messages

Implementations§

source§

impl UdpSocket

source

pub async fn bind(addr: impl ToSocketAddrs) -> Result<Self, Error>

Bind a new socket to the given address

source

pub async fn bind_with_cancellation( addr: impl ToSocketAddrs, token: &CancellationToken ) -> Result<Self, Error>

Bind a new socket to the given address

source

pub fn as_raw_fd(&self) -> i32

Get the raw underlying file descriptor

source

pub async fn split_owned( self ) -> Result<(OwnedUdpReceiveSocket, OwnedUdpSendSocket), Error>

Split the socket into an owned read and write half

source

pub fn split(&self) -> (UdpReceiveSocket<'_>, UdpSendSocket<'_>)

Split the socket into a borrowed read and write half

source

pub async fn receive_from<'buf>( &self, buf: &'buf mut [u8] ) -> Result<(&'buf mut [u8], SocketAddr), Error>

Try to fill the given buffer with received data. The part of the buffer that was filled is returned together with the address of the source of the message.

source

pub async fn receive_from_with_cancellation<'buf>( &self, buf: &'buf mut [u8], token: &CancellationToken ) -> Result<(&'buf mut [u8], SocketAddr), Error>

Try to fill the given buffer with received data. The part of the buffer that was filled is returned together with the address of the source of the message.

source

pub async fn send_to(&self, buf: &[u8], addr: SocketAddr) -> Result<(), Error>

Send the given buffer to the given address

source

pub async fn send_to_with_cancellation( &self, buf: &[u8], addr: SocketAddr, token: &CancellationToken ) -> Result<(), Error>

Send the given buffer to the given address

source

pub async fn deactivate(self) -> Result<(), Error>

Deactivates the socket and the LTE link. A normal drop will do the same thing, but blocking.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.