pub struct PulseTree { /* private fields */ }Expand description
Owns the root of a tracked operation. Workers borrow it or use share().
Finish after joining workers. Dropping this owner freezes abandonment even
when non-owning shared views remain alive.
Implementations§
Trait Implementations§
Source§impl Complete for PulseTree
impl Complete for PulseTree
Source§fn complete_as(self, outcome: Outcome)
fn complete_as(self, outcome: Outcome)
Record an explicitly chosen outcome, resolving unfinished observations.
Join workers before calling this. Started but uncompleted children are
abandoned; untouched children are skipped on success, not run on error.
Source§fn complete<T, E>(self, result: Result<T, E>) -> Result<T, E>where
E: AsStopReason,
fn complete<T, E>(self, result: Result<T, E>) -> Result<T, E>where
E: AsStopReason,
Classify the error with
AsStopReason, record completion, and return the
original result. Read moreSource§fn complete_classified<T, E>(
self,
result: Result<T, E>,
is_stop: impl FnOnce(&E) -> bool,
) -> Result<T, E>
fn complete_classified<T, E>( self, result: Result<T, E>, is_stop: impl FnOnce(&E) -> bool, ) -> Result<T, E>
Complete with an explicit classifier, for a foreign error type that
Rust’s orphan rules keep from implementing
AsStopReason.Source§fn complete_with<T, E>(
self,
body: impl FnOnce(&mut Self) -> Result<T, E>,
) -> Result<T, E>where
E: AsStopReason,
fn complete_with<T, E>(
self,
body: impl FnOnce(&mut Self) -> Result<T, E>,
) -> Result<T, E>where
E: AsStopReason,
Run a multi-step
body with this owner, then complete the owner with
the body’s result and return that result unchanged. Read moreSource§fn complete_with_classified<T, E>(
self,
is_stop: impl FnOnce(&E) -> bool,
body: impl FnOnce(&mut Self) -> Result<T, E>,
) -> Result<T, E>
fn complete_with_classified<T, E>( self, is_stop: impl FnOnce(&E) -> bool, body: impl FnOnce(&mut Self) -> Result<T, E>, ) -> Result<T, E>
complete_with with an explicit classifier, for
a foreign error type that cannot implement AsStopReason, such as an error
wrapped with its source location.Source§impl Pulse for PulseTree
impl Pulse for PulseTree
Source§fn split(
&self,
e: Execution,
parts: &[PhaseSpec<'_>],
) -> Result<Vec<Child<'_>>, PlanError>
fn split( &self, e: Execution, parts: &[PhaseSpec<'_>], ) -> Result<Vec<Child<'_>>, PlanError>
Split this phase into weighted children, in declared order. Read more
Source§fn start(&self) -> Result<(), PlanError>
fn start(&self) -> Result<(), PlanError>
Mark this phase running, without counting or ending planning.
Implementations without lifecycle observations may ignore this.
Source§fn set_total(&self, total: Total) -> Result<(), PlanError>
fn set_total(&self, total: Total) -> Result<(), PlanError>
Revise a leaf’s denominator without changing completed units or weights.
Unsupported implementations return an error instead of losing the update.
Share all pulse capabilities with owned work, but never completion rights. Read more
Source§fn record_issue(&self, _error: PlanError)
fn record_issue(&self, _error: PlanError)
Record a reporting-protocol problem for optional diagnostics. This never
changes cancellation or the operation’s return value. Ordinary sinks may
ignore it; diagnostic wrappers retain bounded evidence.
Auto Trait Implementations§
impl !RefUnwindSafe for PulseTree
impl !UnwindSafe for PulseTree
impl Freeze for PulseTree
impl Send for PulseTree
impl Sync for PulseTree
impl Unpin for PulseTree
impl UnsafeUnpin for PulseTree
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> ProgressExt for T
impl<T> ProgressExt for T
Source§impl<T> ReportExt for T
impl<T> ReportExt for T
Source§fn batched(self, threshold: NonZeroU64) -> Batch<Self>where
Self: Sized,
fn batched(self, threshold: NonZeroU64) -> Batch<Self>where
Self: Sized,
Buffer one worker’s reports, publishing them in batches of at least
threshold units, and the remainder on Batch::flush or drop. Read more