Struct socket2::RecvFlags

source ·
pub struct RecvFlags(pub(crate) c_int);
Expand description

Flags for incoming messages.

Flags provide additional information about incoming messages.

Tuple Fields§

§0: c_int

Implementations§

source§

impl RecvFlags

Unix-only API.

source

pub const fn is_end_of_record(self) -> bool

Check if the message terminates a record.

Not all socket types support the notion of records. For socket types that do support it (such as SEQPACKET), a record is terminated by sending a message with the end-of-record flag set.

On Unix this corresponds to the MSG_EOR flag.

source

pub const fn is_out_of_band(self) -> bool

Check if the message contains out-of-band data.

This is useful for protocols where you receive out-of-band data mixed in with the normal data stream.

On Unix this corresponds to the MSG_OOB flag.

source

pub const fn is_confirm(self) -> bool

Check if the confirm flag is set.

This is used by SocketCAN to indicate a frame was sent via the socket it is received on. This flag can be interpreted as a ‘transmission confirmation’.

On Unix this corresponds to the MSG_CONFIRM flag.

source

pub const fn is_dontroute(self) -> bool

Check if the don’t route flag is set.

This is used by SocketCAN to indicate a frame was created on the local host.

On Unix this corresponds to the MSG_DONTROUTE flag.

source§

impl RecvFlags

source

pub const fn is_truncated(self) -> bool

Check if the message contains a truncated datagram.

This flag is only used for datagram-based sockets, not for stream sockets.

On Unix this corresponds to the MSG_TRUNC flag. On Windows this corresponds to the WSAEMSGSIZE error code.

Trait Implementations§

source§

impl Clone for RecvFlags

source§

fn clone(&self) -> RecvFlags

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for RecvFlags

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for RecvFlags

source§

fn eq(&self, other: &RecvFlags) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for RecvFlags

source§

impl Eq for RecvFlags

source§

impl StructuralPartialEq for RecvFlags

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where 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 T
where 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> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where 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 T
where 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.