Trait dvcompute::simulation::process::Process [−][src]
pub trait Process {
type Item;
fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>
where
Self: Sized + 'static,
U: Process + 'static,
F: FnOnce(Self::Item) -> U + 'static,
{ ... }
fn map<B, F>(self, f: F) -> Map<Self, B, F>
where
Self: Sized + 'static,
F: FnOnce(Self::Item) -> B + 'static,
{ ... }
fn zip<U>(self, other: U) -> Zip<Self, U>
where
Self: Sized + 'static,
U: Process + 'static,
{ ... }
fn ap<U, B>(self, other: U) -> Ap<Self, U, B>
where
Self: Sized + 'static,
Self::Item: FnOnce(U::Item) -> B,
U: Process + 'static,
B: 'static,
{ ... }
fn finally<U>(self, finalization: U) -> Finally<Self, U>
where
Self: Sized + 'static,
U: Process<Item = ()> + 'static,
{ ... }
fn run(self) -> Run<Self>
where
Self: Process<Item = ()> + Sized,
{ ... }
fn run_using_pid(self, pid: Rc<ProcessId>) -> Run<Self>
where
Self: Process<Item = ()> + Sized,
{ ... }
fn into_boxed(self) -> ProcessBox<Self::Item>
where
Self: Sized + 'static,
{ ... }
}
Expand description
The computation based on continuations.
Associated Types
Provided methods
Bind the current computation with its continuation within the resulting computation.
Map the current computation using the specified transform.
Zip the current computation with another one within the resulting computation.
The function application.
Finalize the current computation regardless of canceling it or not.
Run the Process
computation using the specified process identifier.
fn into_boxed(self) -> ProcessBox<Self::Item> where
Self: Sized + 'static,
fn into_boxed(self) -> ProcessBox<Self::Item> where
Self: Sized + 'static,
Convert into a boxed value.