Skip to main content

State

Trait State 

Source
pub trait State<S: Slots, E: Entry>: Sized {
    type Files: Files<S, Changes: Changes<Id = E::File>>;
    type Vacancy<'a>: Vacancy<Echo = E::Echo>
       where Self: 'a;
    type Occupied<'a>: Occupied<Entry = E>
       where Self: 'a;

Show 13 methods // Required methods fn try_new(plan: Plan) -> Result<Self, Error>; fn try_vacant(&mut self, slot: E) -> Result<Self::Vacancy<'_>, (E, Failure)>; fn occupied( &mut self, echo: E::Echo, family: E::Family, ) -> Option<Self::Occupied<'_>>; fn take(&mut self, id: E::Id) -> Option<E::Call>; fn remove_fd( &mut self, raw: RawFd, owner: &mut Self::Files, ) -> Result<Option<E::Echo>, Index<S::Index>>; fn operation(&self, id: E::Id) -> Option<E::Call>; fn resolve(&self, echo: E::Echo) -> Option<(E::Id, E::Call)>; fn find(&self, echo: E::Echo, family: E::Family) -> Option<E::File>; fn queue_resume(&mut self, id: E::Id); fn pop_resume(&mut self) -> Option<E::Id>; fn can_resume(&self) -> bool; fn files(&self) -> impl Iterator<Item = E::File>; fn clear(&mut self);
}

Required Associated Types§

Source

type Files: Files<S, Changes: Changes<Id = E::File>>

Source

type Vacancy<'a>: Vacancy<Echo = E::Echo>
where Self: 'a,

Source

type Occupied<'a>: Occupied<Entry = E>
where Self: 'a,

Required Methods§

Source

fn try_new(plan: Plan) -> Result<Self, Error>

Source

fn try_vacant(&mut self, slot: E) -> Result<Self::Vacancy<'_>, (E, Failure)>

Source

fn occupied( &mut self, echo: E::Echo, family: E::Family, ) -> Option<Self::Occupied<'_>>

Source

fn take(&mut self, id: E::Id) -> Option<E::Call>

Source

fn remove_fd( &mut self, raw: RawFd, owner: &mut Self::Files, ) -> Result<Option<E::Echo>, Index<S::Index>>

Source

fn operation(&self, id: E::Id) -> Option<E::Call>

Source

fn resolve(&self, echo: E::Echo) -> Option<(E::Id, E::Call)>

Source

fn find(&self, echo: E::Echo, family: E::Family) -> Option<E::File>

Source

fn queue_resume(&mut self, id: E::Id)

Source

fn pop_resume(&mut self) -> Option<E::Id>

Source

fn can_resume(&self) -> bool

Source

fn files(&self) -> impl Iterator<Item = E::File>

Source

fn clear(&mut self)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§