pub struct Mailbox<V: Variant, B: Block> { /* private fields */ }
Expand description
A mailbox for sending messages to the marshal Actor.
Implementations§
Source§impl<V: Variant, B: Block> Mailbox<V, B>
impl<V: Variant, B: Block> Mailbox<V, B>
Sourcepub async fn get(&mut self, commitment: B::Commitment) -> Receiver<Option<B>>
pub async fn get(&mut self, commitment: B::Commitment) -> Receiver<Option<B>>
Get is a best-effort attempt to retrieve a given block from local storage. It is not an indication to go fetch the block from the network.
Sourcepub async fn subscribe(
&mut self,
view: Option<u64>,
commitment: B::Commitment,
) -> Receiver<B>
pub async fn subscribe( &mut self, view: Option<u64>, commitment: B::Commitment, ) -> Receiver<B>
Subscribe is a request to retrieve a block by its commitment.
If the block is found available locally, the block will be returned immediately.
If the block is not available locally, the request will be registered and the caller will be notified when the block is available. If the block is not finalized, it’s possible that it may never become available.
The oneshot receiver should be dropped to cancel the subscription.
Trait Implementations§
Auto Trait Implementations§
impl<V, B> Freeze for Mailbox<V, B>
impl<V, B> !RefUnwindSafe for Mailbox<V, B>
impl<V, B> Send for Mailbox<V, B>
impl<V, B> Sync for Mailbox<V, B>
impl<V, B> Unpin for Mailbox<V, B>
impl<V, B> !UnwindSafe for Mailbox<V, B>
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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