Trait timely::communication::Pull[][src]

pub trait Pull<T> {
    pub fn pull(&mut self) -> &mut Option<T>;

    pub fn recv(&mut self) -> Option<T> { ... }
}

Pulling elements of type T.

Required methods

pub fn pull(&mut self) -> &mut Option<T>[src]

Pulls an element and provides the opportunity to take ownership.

The puller may mutate the result, in particular take ownership of the data by replacing it with other data or even None. This allows the puller to return resources to the implementor.

If pull returns None this conventionally signals that no more data is available at the moment, and the puller should find something better to do.

Loading content...

Provided methods

pub fn recv(&mut self) -> Option<T>[src]

Takes an Option<T> and leaves None behind.

Loading content...

Implementations on Foreign Types

impl<T, P> Pull<T> for Box<P, Global> where
    P: Pull<T> + ?Sized
[src]

Loading content...

Implementors

impl<T> Pull<Message<T>> for timely::communication::allocator::zero_copy::push_pull::Puller<T> where
    T: Data
[src]

impl<T> Pull<Message<T>> for PullerInner<T> where
    T: Data
[src]

impl<T> Pull<T> for timely::communication::allocator::thread::Puller<T>[src]

impl<T, D, P: Pull<Bundle<T, D>>> Pull<Message<Message<T, D>>> for LogPuller<T, D, P>[src]

impl<T, P> Pull<T> for timely::communication::allocator::counters::Puller<T, P> where
    P: Pull<T>, 
[src]

Loading content...