pub struct AttemptCompletionFactory { /* private fields */ }Expand description
Adapter-internal minting capability for one attempt’s completion receivers.
The factory crosses crates so the adapter attempt object can issue independent counted receivers on demand and read the sealed report for its seal observer. It is never an application receiver itself: cloning or dropping a factory never changes the active receiver count, so it cannot mask caller abandonment. It cannot terminalize the attempt or store a second report.
Implementations§
Source§impl AttemptCompletionFactory
impl AttemptCompletionFactory
Sourcepub fn completion(&self) -> AttemptCompletion ⓘ
pub fn completion(&self) -> AttemptCompletion ⓘ
Mints one independent counted receiver for the attempt’s immutable terminal report.
Sourcepub fn try_report(&self) -> Option<Arc<QueryAttemptReport>>
pub fn try_report(&self) -> Option<Arc<QueryAttemptReport>>
Returns the published report without waiting, when ready.
Trait Implementations§
Source§impl Clone for AttemptCompletionFactory
impl Clone for AttemptCompletionFactory
Auto Trait Implementations§
impl Freeze for AttemptCompletionFactory
impl RefUnwindSafe for AttemptCompletionFactory
impl Send for AttemptCompletionFactory
impl Sync for AttemptCompletionFactory
impl Unpin for AttemptCompletionFactory
impl UnsafeUnpin for AttemptCompletionFactory
impl UnwindSafe for AttemptCompletionFactory
Blanket Implementations§
impl<T> Allocation for T
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more