pub struct FetchFullBlockFuture<Client>where
Client: BlockClient,{ /* private fields */ }Expand description
A future that downloads a full block from the network.
This will attempt to fetch both the header and body for the given block hash at the same time. When both requests succeed, the future will yield the full block.
Implementations§
Source§impl<Client> FetchFullBlockFuture<Client>where
Client: BlockClient,
impl<Client> FetchFullBlockFuture<Client>where
Client: BlockClient,
Trait Implementations§
Source§impl<Client> Debug for FetchFullBlockFuture<Client>
impl<Client> Debug for FetchFullBlockFuture<Client>
Source§impl<Client> Future for FetchFullBlockFuture<Client>where
Client: BlockClient<Header: BlockHeader + Sealable> + 'static,
impl<Client> Future for FetchFullBlockFuture<Client>where
Client: BlockClient<Header: BlockHeader + Sealable> + 'static,
Source§type Output = SealedBlock<<Client as BlockClient>::Block>
type Output = SealedBlock<<Client as BlockClient>::Block>
The type of value produced on completion.
Auto Trait Implementations§
impl<Client> !Freeze for FetchFullBlockFuture<Client>
impl<Client> !RefUnwindSafe for FetchFullBlockFuture<Client>
impl<Client> !UnwindSafe for FetchFullBlockFuture<Client>
impl<Client> Send for FetchFullBlockFuture<Client>where
Arc<dyn Consensus<<Client as BlockClient>::Block>>: Send,
FullBlockRequest<Client>: Send,
Option<SealedHeader<<Client as HeadersClient>::Header>>: Send,
Option<BodyResponse<<Client as BodiesClient>::Body>>: Send,
impl<Client> Sync for FetchFullBlockFuture<Client>where
Arc<dyn Consensus<<Client as BlockClient>::Block>>: Sync,
FullBlockRequest<Client>: Sync,
Option<SealedHeader<<Client as HeadersClient>::Header>>: Sync,
Option<BodyResponse<<Client as BodiesClient>::Body>>: Sync,
impl<Client> Unpin for FetchFullBlockFuture<Client>where
Arc<dyn Consensus<<Client as BlockClient>::Block>>: Unpin,
FullBlockRequest<Client>: Unpin,
Option<SealedHeader<<Client as HeadersClient>::Header>>: Unpin,
Option<BodyResponse<<Client as BodiesClient>::Body>>: Unpin,
impl<Client> UnsafeUnpin for FetchFullBlockFuture<Client>where
Client: UnsafeUnpin,
Arc<dyn Consensus<<Client as BlockClient>::Block>>: UnsafeUnpin,
FullBlockRequest<Client>: UnsafeUnpin,
Option<SealedHeader<<Client as HeadersClient>::Header>>: UnsafeUnpin,
Option<BodyResponse<<Client as BodiesClient>::Body>>: UnsafeUnpin,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn map<U, F>(self, f: F) -> Map<Self, F> ⓘ
fn map<U, F>(self, f: F) -> Map<Self, F> ⓘ
Map this future’s output to a different type, returning a new future of
the resulting type. Read more
§fn map_into<U>(self) -> MapInto<Self, U> ⓘ
fn map_into<U>(self) -> MapInto<Self, U> ⓘ
Map this future’s output to a different type, returning a new future of
the resulting type. Read more
§fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F> ⓘ
fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F> ⓘ
Chain on a computation for when a future finished, passing the result of
the future to the provided closure
f. Read more§fn left_future<B>(self) -> Either<Self, B> ⓘ
fn left_future<B>(self) -> Either<Self, B> ⓘ
§fn right_future<A>(self) -> Either<A, Self> ⓘ
fn right_future<A>(self) -> Either<A, Self> ⓘ
§fn into_stream(self) -> IntoStream<Self>where
Self: Sized,
fn into_stream(self) -> IntoStream<Self>where
Self: Sized,
Convert this future into a single element stream. Read more
§fn flatten(self) -> Flatten<Self> ⓘ
fn flatten(self) -> Flatten<Self> ⓘ
Flatten the execution of this future when the output of this
future is itself another future. Read more
§fn flatten_stream(self) -> FlattenStream<Self>
fn flatten_stream(self) -> FlattenStream<Self>
Flatten the execution of this future when the successful result of this
future is a stream. Read more
§fn fuse(self) -> Fuse<Self> ⓘwhere
Self: Sized,
fn fuse(self) -> Fuse<Self> ⓘwhere
Self: Sized,
Fuse a future such that
poll will never again be called once it has
completed. This method can be used to turn any Future into a
FusedFuture. Read more§fn inspect<F>(self, f: F) -> Inspect<Self, F> ⓘ
fn inspect<F>(self, f: F) -> Inspect<Self, F> ⓘ
Do something with the output of a future before passing it on. Read more
§fn catch_unwind(self) -> CatchUnwind<Self> ⓘwhere
Self: Sized + UnwindSafe,
fn catch_unwind(self) -> CatchUnwind<Self> ⓘwhere
Self: Sized + UnwindSafe,
Available on crate feature
std only.Catches unwinding panics while polling the future. Read more
Available on crate feature
std, or crate features alloc and spin only.Create a cloneable handle to this future where all handles will resolve
to the same result. Read more
§fn remote_handle(self) -> (Remote<Self>, RemoteHandle<Self::Output>)where
Self: Sized,
fn remote_handle(self) -> (Remote<Self>, RemoteHandle<Self::Output>)where
Self: Sized,
Available on crate features
channel and std only.Turn this future into a future that yields
() on completion and sends
its output to another future on a separate task. Read more§fn boxed<'a>(self) -> Pin<Box<dyn Future<Output = Self::Output> + Send + 'a>>
fn boxed<'a>(self) -> Pin<Box<dyn Future<Output = Self::Output> + Send + 'a>>
Available on crate feature
alloc only.Wrap the future in a Box, pinning it. Read more
§fn boxed_local<'a>(self) -> Pin<Box<dyn Future<Output = Self::Output> + 'a>>where
Self: Sized + 'a,
fn boxed_local<'a>(self) -> Pin<Box<dyn Future<Output = Self::Output> + 'a>>where
Self: Sized + 'a,
Available on crate feature
alloc only.Wrap the future in a Box, pinning it. Read more
§fn unit_error(self) -> UnitError<Self> ⓘwhere
Self: Sized,
fn unit_error(self) -> UnitError<Self> ⓘwhere
Self: Sized,
Turns a
Future<Output = T> into a
TryFuture<Ok = T, Error = ()>.§fn never_error(self) -> NeverError<Self> ⓘwhere
Self: Sized,
fn never_error(self) -> NeverError<Self> ⓘwhere
Self: Sized,
Turns a
Future<Output = T> into a
TryFuture<Ok = T, Error = Never>.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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 moreSource§impl<F> IntoFuture for Fwhere
F: Future,
impl<F> IntoFuture for Fwhere
F: Future,
Source§type IntoFuture = F
type IntoFuture = F
Which kind of future are we turning this into?
Source§fn into_future(self) -> <F as IntoFuture>::IntoFuture
fn into_future(self) -> <F as IntoFuture>::IntoFuture
Creates a future from a value. Read more
impl<T> MaybeDebug for Twhere
T: Debug,
§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Layout§
Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.