Skip to main content

ReadinessSource

Enum ReadinessSource 

Source
pub enum ReadinessSource {
    None,
    Notify,
    Waitable(i32),
}
Expand description

phase-521 W3 (RFC-0113 D4) — how a session reports that data arrived.

The executor’s park ends for exactly two reasons: the tier’s next deadline, or readiness. This is the readiness half, in one of two forms, and the executor picks its wait from it rather than blocking inside the transport.

Variants§

§

None

Neither form: the executor can only learn of an arrival by blocking in Session::drive_io. RFC-0113 D5 refuses this once phase-521 W6 lands.

§

Notify

The backend calls the wake callback Session::set_wake_callback installed when data arrives (a transport thread, a listener, an RX interrupt).

§

Waitable(i32)

An OS handle that becomes readable when data arrives — a file descriptor on POSIX and NuttX. The executor multiplexes it with its own wake object and drives the session non-blockingly after the park. It must stay valid until the session closes.

Trait Implementations§

Source§

impl Clone for ReadinessSource

Source§

fn clone(&self) -> ReadinessSource

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Copy for ReadinessSource

Source§

impl Debug for ReadinessSource

Source§

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

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

impl Eq for ReadinessSource

Source§

impl PartialEq for ReadinessSource

Source§

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

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

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

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for ReadinessSource

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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,

Source§

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>,

Source§

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>,

Source§

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.