Struct timely::dataflow::channels::pact::TimeExchange
[−]
[src]
pub struct TimeExchange<D, T, F: Fn(&T, &D) -> u64 + 'static> { /* fields omitted */ }
An exchange between multiple observers by time and data
Methods
impl<D, T, F: Fn(&T, &D) -> u64> TimeExchange<D, T, F>
[src]
pub fn new(func: F) -> TimeExchange<D, T, F>
[src]
Allocates a new TimeExchange
pact from a distribution function.
Trait Implementations
impl<T: Eq + Data + Abomonation + Clone, D: Data + Abomonation + Clone, F: Fn(&T, &D) -> u64 + 'static> ParallelizationContract<T, D> for TimeExchange<D, T, F>
[src]
type Pusher = ExchangePusher<T, D, Pusher<T, D, Box<Push<Message<T, D>>>>, F>
Type implementing Push
produced by this pact.
type Puller = Puller<T, D, Box<Pull<Message<T, D>>>>
Type implementing Pull
produced by this pact.
fn connect<A: Allocate>(
self,
allocator: &mut A,
identifier: usize,
logging: Logger
) -> (Self::Pusher, Self::Puller)
[src]
self,
allocator: &mut A,
identifier: usize,
logging: Logger
) -> (Self::Pusher, Self::Puller)
Alloctes a matched pair of push and pull endpoints implementing the pact.