Struct nix::sys::socket::MsgFlags [−][src]
pub struct MsgFlags { /* fields omitted */ }
Flags for send/recv and their relatives
Implementations
impl MsgFlags
[src]
pub const MSG_OOB: MsgFlags
[src]
Sends or requests out-of-band data on sockets that support this notion
(e.g., of type Stream
); the underlying protocol must also
support out-of-band data.
pub const MSG_PEEK: MsgFlags
[src]
Peeks at an incoming message. The data is treated as unread and the next
recv()
or similar function shall still return this data.
pub const MSG_WAITALL: MsgFlags
[src]
Receive operation blocks until the full amount of data can be returned. The function may return smaller amount of data if a signal is caught, an error or disconnect occurs.
pub const MSG_DONTWAIT: MsgFlags
[src]
Enables nonblocking operation; if the operation would block,
EAGAIN
or EWOULDBLOCK
is returned. This provides similar
behavior to setting the O_NONBLOCK
flag
(via the fcntl
F_SETFL
operation), but differs in that MSG_DONTWAIT
is a per-
call option, whereas O_NONBLOCK
is a setting on the open file
description (see open(2)),
which will affect all threads in
the calling process and as well as other processes that hold
file descriptors referring to the same open file description.
pub const MSG_CTRUNC: MsgFlags
[src]
Receive flags: Control Data was discarded (buffer too small)
pub const MSG_TRUNC: MsgFlags
[src]
For raw (Packet
), Internet datagram
(since Linux 2.4.27/2.6.8),
netlink (since Linux 2.6.22) and UNIX datagram (since Linux 3.4)
sockets: return the real length of the packet or datagram, even
when it was longer than the passed buffer. Not implemented for UNIX
domain (unix(7)) sockets.
For use with Internet stream sockets, see tcp(7).
pub const MSG_EOR: MsgFlags
[src]
Terminates a record (when this notion is supported, as for
sockets of type SeqPacket
).
pub const MSG_ERRQUEUE: MsgFlags
[src]
This flag specifies that queued errors should be received from the socket error queue. (For more details, see recvfrom(2))
pub const MSG_CMSG_CLOEXEC: MsgFlags
[src]
Set the close-on-exec
flag for the file descriptor received via a UNIX domain
file descriptor using the SCM_RIGHTS
operation (described in
unix(7)).
This flag is useful for the same reasons as the O_CLOEXEC
flag of
open(2).
Only used in recvmsg
function.
pub const fn empty() -> MsgFlags
[src]
Returns an empty set of flags
pub const fn all() -> MsgFlags
[src]
Returns the set containing all flags.
pub const fn bits(&self) -> c_int
[src]
Returns the raw value of the flags currently stored.
pub fn from_bits(bits: c_int) -> Option<MsgFlags>
[src]
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
pub const fn from_bits_truncate(bits: c_int) -> MsgFlags
[src]
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
pub const unsafe fn from_bits_unchecked(bits: c_int) -> MsgFlags
[src]
Convert from underlying bit representation, preserving all bits (even those not corresponding to a defined flag).
pub const fn is_empty(&self) -> bool
[src]
Returns true
if no flags are currently stored.
pub const fn is_all(&self) -> bool
[src]
Returns true
if all flags are currently set.
pub const fn intersects(&self, other: MsgFlags) -> bool
[src]
Returns true
if there are flags common to both self
and other
.
pub const fn contains(&self, other: MsgFlags) -> bool
[src]
Returns true
all of the flags in other
are contained within self
.
pub fn insert(&mut self, other: MsgFlags)
[src]
Inserts the specified flags in-place.
pub fn remove(&mut self, other: MsgFlags)
[src]
Removes the specified flags in-place.
pub fn toggle(&mut self, other: MsgFlags)
[src]
Toggles the specified flags in-place.
pub fn set(&mut self, other: MsgFlags, value: bool)
[src]
Inserts or removes the specified flags depending on the passed value.
Trait Implementations
impl Binary for MsgFlags
[src]
impl BitAnd<MsgFlags> for MsgFlags
[src]
type Output = MsgFlags
The resulting type after applying the &
operator.
fn bitand(self, other: MsgFlags) -> MsgFlags
[src]
Returns the intersection between the two sets of flags.
impl BitAndAssign<MsgFlags> for MsgFlags
[src]
fn bitand_assign(&mut self, other: MsgFlags)
[src]
Disables all flags disabled in the set.
impl BitOr<MsgFlags> for MsgFlags
[src]
type Output = MsgFlags
The resulting type after applying the |
operator.
fn bitor(self, other: MsgFlags) -> MsgFlags
[src]
Returns the union of the two sets of flags.
impl BitOrAssign<MsgFlags> for MsgFlags
[src]
fn bitor_assign(&mut self, other: MsgFlags)
[src]
Adds the set of flags.
impl BitXor<MsgFlags> for MsgFlags
[src]
type Output = MsgFlags
The resulting type after applying the ^
operator.
fn bitxor(self, other: MsgFlags) -> MsgFlags
[src]
Returns the left flags, but with all the right flags toggled.
impl BitXorAssign<MsgFlags> for MsgFlags
[src]
fn bitxor_assign(&mut self, other: MsgFlags)
[src]
Toggles the set of flags.
impl Clone for MsgFlags
[src]
impl Copy for MsgFlags
[src]
impl Debug for MsgFlags
[src]
impl Eq for MsgFlags
[src]
impl Extend<MsgFlags> for MsgFlags
[src]
fn extend<T: IntoIterator<Item = MsgFlags>>(&mut self, iterator: T)
[src]
pub fn extend_one(&mut self, item: A)
[src]
pub fn extend_reserve(&mut self, additional: usize)
[src]
impl FromIterator<MsgFlags> for MsgFlags
[src]
fn from_iter<T: IntoIterator<Item = MsgFlags>>(iterator: T) -> MsgFlags
[src]
impl Hash for MsgFlags
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl LowerHex for MsgFlags
[src]
impl Not for MsgFlags
[src]
type Output = MsgFlags
The resulting type after applying the !
operator.
fn not(self) -> MsgFlags
[src]
Returns the complement of this set of flags.
impl Octal for MsgFlags
[src]
impl Ord for MsgFlags
[src]
fn cmp(&self, other: &MsgFlags) -> Ordering
[src]
#[must_use]pub fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn clamp(self, min: Self, max: Self) -> Self
1.50.0[src]
impl PartialEq<MsgFlags> for MsgFlags
[src]
impl PartialOrd<MsgFlags> for MsgFlags
[src]
fn partial_cmp(&self, other: &MsgFlags) -> Option<Ordering>
[src]
#[must_use]pub fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn gt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn ge(&self, other: &Rhs) -> bool
1.0.0[src]
impl StructuralEq for MsgFlags
[src]
impl StructuralPartialEq for MsgFlags
[src]
impl Sub<MsgFlags> for MsgFlags
[src]
type Output = MsgFlags
The resulting type after applying the -
operator.
fn sub(self, other: MsgFlags) -> MsgFlags
[src]
Returns the set difference of the two sets of flags.
impl SubAssign<MsgFlags> for MsgFlags
[src]
fn sub_assign(&mut self, other: MsgFlags)
[src]
Disables all flags enabled in the set.
impl UpperHex for MsgFlags
[src]
Auto Trait Implementations
impl RefUnwindSafe for MsgFlags
impl Send for MsgFlags
impl Sync for MsgFlags
impl Unpin for MsgFlags
impl UnwindSafe for MsgFlags
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,