pub trait Process {
type Item;
// Provided methods
fn and_then<U, F>(self, f: F) -> AndThen<Self, U, F>
where Self: Sized + 'static,
U: Process + 'static,
F: FnOnce(Self::Item) -> U + Clone + 'static { ... }
fn map<B, F>(self, f: F) -> Map<Self, B, F>
where Self: Sized + 'static,
F: FnOnce(Self::Item) -> B + Clone + 'static { ... }
fn zip<U>(self, other: U) -> Zip<Self, U>
where Self: Sized + 'static,
Self::Item: Clone,
U: Process + Clone + 'static { ... }
fn ap<U, B>(self, other: U) -> Ap<Self, U, B>
where Self: Sized + 'static,
Self::Item: FnOnce(U::Item) -> B + Clone,
U: Process + Clone + 'static,
B: 'static { ... }
fn finally<U>(self, finalization: U) -> Finally<Self, U>
where Self: Sized + 'static,
Self::Item: Clone,
U: Process<Item = ()> + Clone + 'static { ... }
fn run(self) -> Run<Self>
where Self: Process<Item = ()> + Sized { ... }
fn run_using_id(self, pid: Grc<ProcessId>) -> Run<Self>
where Self: Process<Item = ()> + Sized { ... }
fn into_boxed(self) -> ProcessBox<Self::Item>
where Self: Sized + Clone + 'static { ... }
}Expand description
The computation based on continuations.
Required Associated Types§
Provided Methods§
Sourcefn and_then<U, F>(self, f: F) -> AndThen<Self, U, F>
fn and_then<U, F>(self, f: F) -> AndThen<Self, U, F>
Bind the current computation with its continuation within the resulting computation.
Sourcefn map<B, F>(self, f: F) -> Map<Self, B, F>
fn map<B, F>(self, f: F) -> Map<Self, B, F>
Map the current computation using the specified transform.
Sourcefn zip<U>(self, other: U) -> Zip<Self, U>
fn zip<U>(self, other: U) -> Zip<Self, U>
Zip the current computation with another one within the resulting computation.
Sourcefn finally<U>(self, finalization: U) -> Finally<Self, U>
fn finally<U>(self, finalization: U) -> Finally<Self, U>
Finalize the current computation regardless of canceling it or not.
Sourcefn run_using_id(self, pid: Grc<ProcessId>) -> Run<Self>
fn run_using_id(self, pid: Grc<ProcessId>) -> Run<Self>
Run the Process computation using the specified process identifier.
Sourcefn into_boxed(self) -> ProcessBox<Self::Item>
fn into_boxed(self) -> ProcessBox<Self::Item>
Convert into a boxed value.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.