pub struct Channel<T> {
    receiver: Receiver<T>,
    source: PingSource,
}
Expand description

The receiving end of the channel

This is the event source to be inserted into your EventLoop.

Fields§

§receiver: Receiver<T>§source: PingSource

Implementations§

source§

impl<T> Channel<T>

source

pub fn recv(&self) -> Result<T, RecvError>

Proxy for mpsc::Receiver::recv to manually poll events.

Note: Normally you would want to use the Channel by inserting it into an event loop instead. Use this for example to immediately dispatch pending events after creation.

source

pub fn try_recv(&self) -> Result<T, TryRecvError>

Proxy for mpsc::Receiver::try_recv to manually poll events.

Note: Normally you would want to use the Channel by inserting it into an event loop instead. Use this for example to immediately dispatch pending events after creation.

Trait Implementations§

source§

impl<T: Debug> Debug for Channel<T>

source§

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

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

impl<T> EventSource for Channel<T>

§

type Event = Event<T>

The type of events generated by your source.
§

type Metadata = ()

Some metadata of your event source Read more
§

type Ret = ()

The return type of the user callback Read more
§

type Error = ChannelError

The error type returned from process_events() (not the user callback!).
source§

fn process_events<C>( &mut self, readiness: Readiness, token: Token, callback: C ) -> Result<PostAction, Self::Error>where C: FnMut(Self::Event, &mut Self::Metadata) -> Self::Ret,

Process any relevant events Read more
source§

fn register( &mut self, poll: &mut Poll, token_factory: &mut TokenFactory ) -> Result<()>

Register yourself to this poll instance Read more
source§

fn reregister( &mut self, poll: &mut Poll, token_factory: &mut TokenFactory ) -> Result<()>

Re-register your file descriptors Read more
source§

fn unregister(&mut self, poll: &mut Poll) -> Result<()>

Unregister your file descriptors Read more
source§

fn pre_run<F>(&mut self, _callback: F) -> Result<()>where F: FnMut(Self::Event, &mut Self::Metadata) -> Self::Ret,

Notification that a polling session is going to start Read more
source§

fn post_run<F>(&mut self, _callback: F) -> Result<()>where F: FnMut(Self::Event, &mut Self::Metadata) -> Self::Ret,

Notification that the current polling session ended Read more
source§

impl<T: Send> Send for Channel<T>

Auto Trait Implementations§

§

impl<T> !RefUnwindSafe for Channel<T>

§

impl<T> !Sync for Channel<T>

§

impl<T> Unpin for Channel<T>

§

impl<T> !UnwindSafe for Channel<T>

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere 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 Twhere 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 Twhere 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 Twhere 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.