Struct timely::dataflow::channels::pact::Exchange
[−]
[src]
pub struct Exchange<D, F: Fn(&D) -> u64 + 'static> { /* fields omitted */ }
An exchange between multiple observers by data
Methods
impl<D, F: Fn(&D) -> u64> Exchange<D, F>
[src]
pub fn new(func: F) -> Exchange<D, F>
[src]
Allocates a new Exchange
pact from a distribution function.
Trait Implementations
impl<T: Eq + Data + Abomonation + Clone, D: Data + Abomonation + Clone, F: Fn(&D) -> u64 + 'static> ParallelizationContract<T, D> for Exchange<D, F>
[src]
type Pusher = Box<Push<(T, Content<D>)>>
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.