Struct mio::Interest[][src]

pub struct Interest(_);

Interest used in registering.

Interest are used in registering event::Sources with Poll, they indicate what readiness should be monitored for. For example if a socket is registered with readable interests and the socket becomes writable, no event will be returned from a call to poll.

Implementations

impl Interest[src]

pub const READABLE: Interest[src]

Returns a Interest set representing readable interests.

pub const WRITABLE: Interest[src]

Returns a Interest set representing writable interests.

pub const fn add(self, other: Interest) -> Interest[src]

Add together two Interest.

This does the same thing as the BitOr implementation, but is a constant function.

use mio::Interest;

const INTERESTS: Interest = Interest::READABLE.add(Interest::WRITABLE);

pub fn remove(self, other: Interest) -> Option<Interest>[src]

Removes other Interest from self.

Returns None if the set would be empty after removing other.

use mio::Interest;

const RW_INTERESTS: Interest = Interest::READABLE.add(Interest::WRITABLE);

// As long a one interest remain this will return `Some`.
let w_interest = RW_INTERESTS.remove(Interest::READABLE).unwrap();
assert!(!w_interest.is_readable());
assert!(w_interest.is_writable());

// Removing all interests from the set will return `None`.
assert_eq!(w_interest.remove(Interest::WRITABLE), None);

// Its also possible to remove multiple interests at once.
assert_eq!(RW_INTERESTS.remove(RW_INTERESTS), None);

pub const fn is_readable(self) -> bool[src]

Returns true if the value includes readable readiness.

pub const fn is_writable(self) -> bool[src]

Returns true if the value includes writable readiness.

pub const fn is_aio(self) -> bool[src]

Returns true if Interest contains AIO readiness

pub const fn is_lio(self) -> bool[src]

Returns true if Interest contains LIO readiness

Trait Implementations

impl BitOr<Interest> for Interest[src]

type Output = Self

The resulting type after applying the | operator.

impl BitOrAssign<Interest> for Interest[src]

impl Clone for Interest[src]

impl Copy for Interest[src]

impl Debug for Interest[src]

impl Eq for Interest[src]

impl Ord for Interest[src]

impl PartialEq<Interest> for Interest[src]

impl PartialOrd<Interest> for Interest[src]

impl StructuralEq for Interest[src]

impl StructuralPartialEq for Interest[src]

Auto Trait Implementations

impl RefUnwindSafe for Interest

impl Send for Interest

impl Sync for Interest

impl Unpin for Interest

impl UnwindSafe for Interest

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.