pub struct RegisteredSource<F> {
    pub(crate) source: F,
    ex: Weak<RawExecutor<EpollReactor>>,
    pub(crate) duped_fd: Arc<OwnedFd>,
}

Fields§

§source: F§ex: Weak<RawExecutor<EpollReactor>>§duped_fd: Arc<OwnedFd>

A clone of source’s underlying FD. Allows us to ensure that the FD isn’t closed during the epoll wait call. There are well defined sematics for closing an FD in an epoll context so it might be possible to eliminate this dup if someone thinks hard about it.

Implementations§

source§

impl<F: AsRawDescriptor> RegisteredSource<F>

source

pub(crate) fn new(raw: &Arc<RawExecutor<EpollReactor>>, f: F) -> Result<Self>

source

pub fn wait_readable(&self) -> Result<PendingOperation>

source

pub fn wait_writable(&self) -> Result<PendingOperation>

Auto Trait Implementations§

§

impl<F> RefUnwindSafe for RegisteredSource<F>
where F: RefUnwindSafe,

§

impl<F> Send for RegisteredSource<F>
where F: Send,

§

impl<F> Sync for RegisteredSource<F>
where F: Sync,

§

impl<F> Unpin for RegisteredSource<F>
where F: Unpin,

§

impl<F> UnwindSafe for RegisteredSource<F>
where F: UnwindSafe,

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> 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, U> TryFrom<U> for T
where U: Into<T>,

§

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

§

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.