pub trait Accept: Sized {
type Ring: Owner<File = Self::File, Closing = Self::Closing>;
type Owned;
type Probe: Copy;
type Outcome: Outcome<Probe = Self::Probe>;
type Error;
type File: Occupied;
type Closing;
// Required methods
fn new(ring: Self::Ring, probe: Self::Probe) -> Self;
fn submit(
self,
entry: Self::Owned,
) -> Result<(Self, Self::Outcome), Stopped<Self, Cause<<Self as Accept>::Probe, <<Self as Accept>::Outcome as Outcome>::Observation, <Self as Accept>::Error>>>;
fn cancel(
self,
) -> Result<Self::Ring, Stopped<Self, Cause<<Self as Accept>::Probe, <<Self as Accept>::Outcome as Outcome>::Observation, <Self as Accept>::Error>>>;
fn try_close(self, file: Self::File) -> Result<(), Self::Closing>;
}Expand description
An active accept canary owns its ring until cancellation or descriptor close.
Required Associated Types§
type Ring: Owner<File = Self::File, Closing = Self::Closing>
type Owned
type Probe: Copy
type Outcome: Outcome<Probe = Self::Probe>
type Error
type File: Occupied
type Closing
Required Methods§
fn new(ring: Self::Ring, probe: Self::Probe) -> Self
fn submit( self, entry: Self::Owned, ) -> Result<(Self, Self::Outcome), Stopped<Self, Cause<<Self as Accept>::Probe, <<Self as Accept>::Outcome as Outcome>::Observation, <Self as Accept>::Error>>>
fn cancel( self, ) -> Result<Self::Ring, Stopped<Self, Cause<<Self as Accept>::Probe, <<Self as Accept>::Outcome as Outcome>::Observation, <Self as Accept>::Error>>>
fn try_close(self, file: Self::File) -> Result<(), Self::Closing>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".