Module timely::dataflow::operators::enterleave[][src]

Extension traits to move a Stream between an outer Scope and inner Scope.

Each Stream indicates its containing Scope as part of its type signature. To create a new stream with the same contents in another scope, one must explicit use the methods enter and leave, to clearly indicate the transition to the timely dataflow progress tracking logic.

Examples

use timely::dataflow::scopes::Scope;
use timely::dataflow::operators::{Enter, Leave, ToStream, Inspect};

timely::example(|outer| {
    let stream = (0..9).to_stream(outer);
    let output = outer.region(|inner| {
        stream.enter(inner)
              .inspect(|x| println!("in nested scope: {:?}", x))
              .leave()
    });
});

Traits

Enter

Extension trait to move a Stream into a child of its current Scope.

EnterAt

Extension trait to move a Stream into a child of its current Scope setting the timestamp for each element.

Leave

Extension trait to move a Stream to the parent of its current Scope.