Skip to main content

timely/dataflow/operators/
mod.rs

1//! Extension traits for `Stream` and `StreamVec` implementing various operators.
2//!
3//! A collection of functions taking typed stream objects as input and producing new stream
4//! objects as output. Many of the operators provide simple, composable functionality. Some of the
5//! operators are more complicated, for use with advanced timely dataflow features.
6//!
7//! The [`core`](core) module defines operators that work for streams of general containers.
8//! The [`vec`](vec) module defines operators that work for streams of vector containers.
9//!
10//! The [`Operator`](generic::operator) trait provides general
11//! operators whose behavior can be supplied using closures accepting input and output handles.
12//! Most of the operators in this module are defined using these two general operators.
13
14pub use self::inspect::{Inspect, InspectCore};
15pub use self::exchange::Exchange;
16
17pub use self::generic::Operator;
18pub use self::generic::{Notificator, FrontierNotificator};
19
20pub use self::reclock::Reclock;
21
22pub mod core;
23pub mod vec;
24
25pub use self::core::enterleave::{self, Enter, Leave};
26pub use self::core::feedback::{self, Feedback, LoopVariable, ConnectLoop};
27pub use self::core::concat::{self, Concat, Concatenate};
28pub use self::core::inspect;
29pub use self::core::exchange;
30pub use self::core::probe::{self, Probe};
31pub use self::core::capture::{self, Capture};
32pub use self::core::ok_err::{self, OkErr};
33pub use self::core::rc;
34pub use self::core::to_stream::ToStream;
35pub use self::core::input::Input;
36
37pub mod generic;
38
39pub use self::core::reclock;
40
41// keep "mint" module-private
42mod capability;
43pub use self::capability::{ActivateCapability, Capability, CapabilityTrait, InputCapability, CapabilitySet, DowngradeError};