Struct PollFlags
#[repr(transparent)]
pub struct PollFlags(/* private field */);
These flags define the different events that can be monitored by poll and ppoll
Implementations
impl PollFlags
const POLLIN: Self = _;There is data to read.
const POLLPRI: Self = _;There is some exceptional condition on the file descriptor.
Possibilities include:
- There is out-of-band data on a TCP socket (see tcp(7)).
- A pseudoterminal master in packet mode has seen a state change on the slave (see ioctl_tty(2)).
- A cgroup.events file has been modified (see cgroups(7)).
const POLLOUT: Self = _;Writing is now possible, though a write larger that the available space in a socket or pipe will still block (unless
O_NONBLOCKis set).const POLLRDNORM: Self = _;Equivalent to
POLLINconst POLLWRNORM: Self = _;Equivalent to
POLLOUTconst POLLRDBAND: Self = _;Priority band data can be read (generally unused on Linux).
const POLLWRBAND: Self = _;Priority data may be written.
const POLLERR: Self = _;Error condition (only returned in
PollFd::revents; ignored inPollFd::new). This bit is also set for a file descriptor referring to the write end of a pipe when the read end has been closed.const POLLHUP: Self = _;Hang up (only returned in
PollFd::revents; ignored inPollFd::new). Note that when reading from a channel such as a pipe or a stream socket, this event merely indicates that the peer closed its end of the channel. Subsequent reads from the channel will return 0 (end of file) only after all outstanding data in the channel has been consumed.const POLLNVAL: Self = _;Invalid request:
fdnot open (only returned inPollFd::revents; ignored inPollFd::new).
impl PollFlags
const fn empty() -> SelfGet a flags value with all bits unset.
const fn all() -> SelfGet a flags value with all known bits set.
const fn bits(&self) -> c_shortGet the underlying bits value.
The returned value is exactly the bits set in this flags value.
const fn from_bits(bits: c_short) -> Option<Self>Convert from a bits value.
This method will return
Noneif any unknown bits are set.const fn from_bits_truncate(bits: c_short) -> SelfConvert from a bits value, unsetting any unknown bits.
const fn from_bits_retain(bits: c_short) -> SelfConvert from a bits value exactly.
fn from_name(name: &str) -> Option<Self>Get a flags value with the bits of a flag with the given name set.
This method will return
Noneifnameis empty or doesn't correspond to any named flag.const fn is_empty(&self) -> boolWhether all bits in
selfare unset.const fn is_all(&self) -> boolWhether all known bits in this flags value are set.
const fn intersects(&self, other: Self) -> boolWhether any set bits in
otherare also set inself.const fn contains(&self, other: Self) -> boolWhether all set bits in
otherare also set inself.fn insert(&mut self, other: Self)The bitwise or (
|) of the bits inselfandother.fn remove(&mut self, other: Self)The intersection of
selfwith the complement ofother(&!).This method is not equivalent to
self & !otherwhenotherhas unknown bits set.removewon't truncateother, but the!operator will.fn toggle(&mut self, other: Self)The bitwise exclusive-or (
^) of the bits inselfandother.fn set(&mut self, other: Self, value: bool)Call
insertwhenvalueistrueorremovewhenvalueisfalse.const fn intersection(self, other: Self) -> SelfThe bitwise and (
&) of the bits inselfandother.const fn union(self, other: Self) -> SelfThe bitwise or (
|) of the bits inselfandother.const fn difference(self, other: Self) -> SelfThe intersection of
selfwith the complement ofother(&!).This method is not equivalent to
self & !otherwhenotherhas unknown bits set.differencewon't truncateother, but the!operator will.const fn symmetric_difference(self, other: Self) -> SelfThe bitwise exclusive-or (
^) of the bits inselfandother.const fn complement(self) -> SelfThe bitwise negation (
!) of the bits inself, truncating the result.
impl PollFlags
const fn iter(&self) -> Iter<PollFlags>Yield a set of contained flags values.
Each yielded flags value will correspond to a defined named flag. Any unknown bits will be yielded together as a final flags value.
const fn iter_names(&self) -> IterNames<PollFlags>Yield a set of contained named flags values.
This method is like
iter, except only yields bits in contained named flags. Any unknown bits, or bits not corresponding to a contained flag will not be yielded.
Trait Implementations
impl Binary for PollFlags
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl BitAnd for PollFlags
type Output = PollFlags;fn bitand(self, other: Self) -> SelfThe bitwise and (
&) of the bits inselfandother.
impl BitAndAssign for PollFlags
fn bitand_assign(&mut self, other: Self)The bitwise and (
&) of the bits inselfandother.
impl BitOr for PollFlags
type Output = PollFlags;fn bitor(self, other: PollFlags) -> SelfThe bitwise or (
|) of the bits inselfandother.
impl BitOrAssign for PollFlags
fn bitor_assign(&mut self, other: Self)The bitwise or (
|) of the bits inselfandother.
impl BitXor for PollFlags
type Output = PollFlags;fn bitxor(self, other: Self) -> SelfThe bitwise exclusive-or (
^) of the bits inselfandother.
impl BitXorAssign for PollFlags
fn bitxor_assign(&mut self, other: Self)The bitwise exclusive-or (
^) of the bits inselfandother.
impl Clone for PollFlags
fn clone(&self) -> Self
impl Copy for PollFlags
impl Debug for PollFlags
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl Eq for PollFlags
impl Extend<PollFlags> for PollFlags
fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)The bitwise or (
|) of the bits in each flags value.
impl Flags for PollFlags
const FLAGS: &'static [Flag<PollFlags>] = _;type Bits = i16;fn bits(&self) -> c_shortfn from_bits_retain(bits: c_short) -> PollFlagsfn all_named() -> PollFlags
impl FromIterator<PollFlags> for PollFlags
fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> SelfThe bitwise or (
|) of the bits in each flags value.
impl Hash for PollFlags
fn hash<__H: Hasher>(&self, state: &mut __H)
impl IntoIterator for PollFlags
type Item = PollFlags;type IntoIter = Iter<PollFlags>;fn into_iter(self) -> Self::IntoIter
impl LowerHex for PollFlags
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl Not for PollFlags
type Output = PollFlags;fn not(self) -> SelfThe bitwise negation (
!) of the bits inself, truncating the result.
impl Octal for PollFlags
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl Ord for PollFlags
fn cmp(&self, other: &Self) -> Ordering
impl PartialEq for PollFlags
fn eq(&self, other: &Self) -> bool
impl PartialOrd for PollFlags
fn partial_cmp(&self, other: &Self) -> Option<Ordering>
impl PublicFlags for PollFlags
type Primitive = i16;type Internal = InternalBitFlags;
impl StructuralPartialEq for PollFlags
impl Sub for PollFlags
type Output = PollFlags;fn sub(self, other: Self) -> SelfThe intersection of
selfwith the complement ofother(&!).This method is not equivalent to
self & !otherwhenotherhas unknown bits set.differencewon't truncateother, but the!operator will.
impl SubAssign for PollFlags
fn sub_assign(&mut self, other: Self)The intersection of
selfwith the complement ofother(&!).This method is not equivalent to
self & !otherwhenotherhas unknown bits set.differencewon't truncateother, but the!operator will.
impl UpperHex for PollFlags
fn fmt(&self, f: &mut Formatter<'_>) -> Result
Auto Trait Implementations
impl Freeze for PollFlags
impl RefUnwindSafe for PollFlags
impl Send for PollFlags
impl Sync for PollFlags
impl Unpin for PollFlags
impl UnsafeUnpin for PollFlags
impl UnwindSafe for PollFlags
Blanket Implementations
impl<T> Any for PollFlags
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for PollFlags
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for PollFlags
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> CloneToUninit for PollFlags
where
T: Clone,
unsafe fn clone_to_uninit(&self, dest: *mut u8)
impl<T> From<T> for PollFlags
fn from(t: T) -> TReturns the argument unchanged.
impl<T> ToOwned for PollFlags
where
T: Clone,
type Owned = T;fn to_owned(&self) -> Tfn clone_into(&self, target: &mut T)
impl<T, U> Into<U> for PollFlags
where
U: From<T>,
fn into(self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom<U> for PollFlags
where
U: Into<T>,
type Error = never;fn try_from(value: U) -> Result<T, never>
impl<T, U> TryInto<U> for PollFlags
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>