Trait sc_rpc::chain::ChainApiClient

source ·
pub trait ChainApiClient<Number, Hash, Header, SignedBlock>: SubscriptionClientT
where Number: Send + Sync + 'static, Hash: Send + Sync + 'static + Serialize + DeserializeOwned, Header: Send + Sync + 'static + DeserializeOwned, SignedBlock: Send + Sync + 'static + DeserializeOwned,
{ // Provided methods fn header<'life0, 'async_trait>( &'life0 self, hash: Option<Hash>, ) -> Pin<Box<dyn Future<Output = Result<Option<Header>, Error>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: Sync + 'async_trait { ... } fn block<'life0, 'async_trait>( &'life0 self, hash: Option<Hash>, ) -> Pin<Box<dyn Future<Output = Result<Option<SignedBlock>, Error>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: Sync + 'async_trait { ... } fn block_hash<'life0, 'async_trait>( &'life0 self, hash: Option<ListOrValue<NumberOrHex>>, ) -> Pin<Box<dyn Future<Output = Result<ListOrValue<Option<Hash>>, Error>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: Sync + 'async_trait { ... } fn finalized_head<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Hash, Error>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: Sync + 'async_trait { ... } fn subscribe_all_heads<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Subscription<Header>, Error>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: Sync + 'async_trait { ... } fn subscribe_new_heads<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Subscription<Header>, Error>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: Sync + 'async_trait { ... } fn subscribe_finalized_heads<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Subscription<Header>, Error>> + Send + 'async_trait>> where 'life0: 'async_trait, Self: Sync + 'async_trait { ... } }
Expand description

Client implementation for the ChainApi RPC API.

Provided Methods§

source

fn header<'life0, 'async_trait>( &'life0 self, hash: Option<Hash>, ) -> Pin<Box<dyn Future<Output = Result<Option<Header>, Error>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: Sync + 'async_trait,

Get header.

source

fn block<'life0, 'async_trait>( &'life0 self, hash: Option<Hash>, ) -> Pin<Box<dyn Future<Output = Result<Option<SignedBlock>, Error>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: Sync + 'async_trait,

Get header and body of a block.

source

fn block_hash<'life0, 'async_trait>( &'life0 self, hash: Option<ListOrValue<NumberOrHex>>, ) -> Pin<Box<dyn Future<Output = Result<ListOrValue<Option<Hash>>, Error>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: Sync + 'async_trait,

Get hash of the n-th block in the canon chain.

By default returns latest block hash.

source

fn finalized_head<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Hash, Error>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: Sync + 'async_trait,

Get hash of the last finalized block in the canon chain.

source

fn subscribe_all_heads<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Subscription<Header>, Error>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: Sync + 'async_trait,

All head subscription.

source

fn subscribe_new_heads<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Subscription<Header>, Error>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: Sync + 'async_trait,

New head subscription.

source

fn subscribe_finalized_heads<'life0, 'async_trait>( &'life0 self, ) -> Pin<Box<dyn Future<Output = Result<Subscription<Header>, Error>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: Sync + 'async_trait,

Finalized head subscription.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<TypeJsonRpseeInteral, Number, Hash, Header, SignedBlock> ChainApiClient<Number, Hash, Header, SignedBlock> for TypeJsonRpseeInteral
where TypeJsonRpseeInteral: SubscriptionClientT, Number: Send + Sync + 'static, Hash: Send + Sync + 'static + Serialize + DeserializeOwned, Header: Send + Sync + 'static + DeserializeOwned, SignedBlock: Send + Sync + 'static + DeserializeOwned,