timely/scheduling/mod.rs
1//! Types and traits to activate and schedule fibers.
2
3pub mod activate;
4pub mod current;
5
6pub use self::activate::{Activations, Activator, ActivateOnDrop, SyncActivator};
7
8/// A type that can be scheduled.
9pub trait Schedule {
10 /// A descriptive name for the operator
11 fn name(&self) -> &str;
12 /// An address identifying the operator.
13 fn path(&self) -> &[usize];
14 /// Schedules the operator, receives "cannot terminate" boolean.
15 ///
16 /// The return value indicates whether `self` has outstanding
17 /// work and would be upset if the computation terminated.
18 fn schedule(&mut self) -> bool;
19}