pub struct Mailbox<S: Scheme, B: Block> { /* private fields */ }Expand description
A mailbox for sending messages to the marshal Actor.
Implementations§
Source§impl<S: Scheme, B: Block> Mailbox<S, B>
impl<S: Scheme, B: Block> Mailbox<S, B>
Sourcepub async fn get_info(
&mut self,
identifier: impl Into<Identifier<B::Commitment>>,
) -> Option<(u64, B::Commitment)>
pub async fn get_info( &mut self, identifier: impl Into<Identifier<B::Commitment>>, ) -> Option<(u64, B::Commitment)>
A request to retrieve the information about the highest finalized block.
Sourcepub async fn get_block(
&mut self,
identifier: impl Into<Identifier<B::Commitment>>,
) -> Option<B>
pub async fn get_block( &mut self, identifier: impl Into<Identifier<B::Commitment>>, ) -> Option<B>
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 get_finalization(
&mut self,
height: u64,
) -> Option<Finalization<S, B::Commitment>>
pub async fn get_finalization( &mut self, height: u64, ) -> Option<Finalization<S, B::Commitment>>
A best-effort attempt to retrieve a given Finalization from local storage. It is not an indication to go fetch the Finalization from the network.
Sourcepub async fn subscribe(
&mut self,
round: Option<Round>,
commitment: B::Commitment,
) -> Receiver<B>
pub async fn subscribe( &mut self, round: Option<Round>, commitment: B::Commitment, ) -> Receiver<B>
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<S, B> Freeze for Mailbox<S, B>
impl<S, B> !RefUnwindSafe for Mailbox<S, B>
impl<S, B> Send for Mailbox<S, B>
impl<S, B> Sync for Mailbox<S, B>
impl<S, B> Unpin for Mailbox<S, B>
impl<S, B> !UnwindSafe for Mailbox<S, 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
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>
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>
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