pub trait Map<S: Scope, D: Data> {
// Required methods
fn map_in_place<L: FnMut(&mut D) + 'static>(&self, logic: L) -> Stream<S, D>;
fn flat_map<I: IntoIterator, L: FnMut(D) -> I + 'static>(
&self,
logic: L,
) -> Stream<S, I::Item>
where I::Item: Data;
// Provided method
fn map<D2: Data, L: FnMut(D) -> D2 + 'static>(
&self,
logic: L,
) -> Stream<S, D2> { ... }
}
Expand description
Extension trait for Stream
.
Required Methods§
sourcefn map_in_place<L: FnMut(&mut D) + 'static>(&self, logic: L) -> Stream<S, D>
fn map_in_place<L: FnMut(&mut D) + 'static>(&self, logic: L) -> Stream<S, D>
Updates each element of the stream and yields the element, re-using memory where possible.
§Examples
use timely::dataflow::operators::{ToStream, Map, Inspect};
timely::example(|scope| {
(0..10).to_stream(scope)
.map_in_place(|x| *x += 1)
.inspect(|x| println!("seen: {:?}", x));
});
sourcefn flat_map<I: IntoIterator, L: FnMut(D) -> I + 'static>(
&self,
logic: L,
) -> Stream<S, I::Item>
fn flat_map<I: IntoIterator, L: FnMut(D) -> I + 'static>( &self, logic: L, ) -> Stream<S, I::Item>
Consumes each element of the stream and yields some number of new elements.
§Examples
use timely::dataflow::operators::{ToStream, Map, Inspect};
timely::example(|scope| {
(0..10).to_stream(scope)
.flat_map(|x| (0..x))
.inspect(|x| println!("seen: {:?}", x));
});
Provided Methods§
sourcefn map<D2: Data, L: FnMut(D) -> D2 + 'static>(&self, logic: L) -> Stream<S, D2>
fn map<D2: Data, L: FnMut(D) -> D2 + 'static>(&self, logic: L) -> Stream<S, D2>
Consumes each element of the stream and yields a new element.
§Examples
use timely::dataflow::operators::{ToStream, Map, Inspect};
timely::example(|scope| {
(0..10).to_stream(scope)
.map(|x| x + 1)
.inspect(|x| println!("seen: {:?}", x));
});
Object Safety§
This trait is not object safe.