[][src]Struct splinter::network::dispatch::DispatchLoop

pub struct DispatchLoop<MT: Any + Hash + Eq + Debug + Clone> { /* fields omitted */ }

The Dispatch Loop

The dispatch loop processes messages that are pulled from a Receiver<DispatchMessage> and passes them to a Dispatcher. The dispatch loop only processes messages from a specific message type.

Methods

impl<MT: Any + Hash + Eq + Debug + Clone> DispatchLoop<MT>[src]

pub fn new(
    receiver: Box<dyn Receiver<DispatchMessage<MT>>>,
    dispatcher: Dispatcher<MT>,
    running: Arc<AtomicBool>
) -> Self
[src]

Constructs a new DispatchLoop.

This constructs a new dispatch loop with a concrete Receiver implementation and a dispatcher instance.

pub fn run(&self) -> Result<(), DispatchLoopError>[src]

Runs the loop.

Errors

An error will be returned if the receiver no longer can return messages. This is effectively an exit signal for the loop.

Auto Trait Implementations

impl<MT> !RefUnwindSafe for DispatchLoop<MT>

impl<MT> Send for DispatchLoop<MT> where
    MT: Send

impl<MT> !Sync for DispatchLoop<MT>

impl<MT> Unpin for DispatchLoop<MT> where
    MT: Unpin

impl<MT> !UnwindSafe for DispatchLoop<MT>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> IntoSql for T

impl<T> SafeBorrow<T> for T where
    T: ?Sized

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,