pub trait ChainApiClient<Number, Hash, Header, SignedBlock>: SubscriptionClientTwhere
    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 = RpcResult<Option<Header>>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn block<'life0, 'async_trait>(
        &'life0 self,
        hash: Option<Hash>
    ) -> Pin<Box<dyn Future<Output = RpcResult<Option<SignedBlock>>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn block_hash<'life0, 'async_trait>(
        &'life0 self,
        hash: Option<ListOrValue<NumberOrHex>>
    ) -> Pin<Box<dyn Future<Output = RpcResult<ListOrValue<Option<Hash>>>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn finalized_head<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = RpcResult<Hash>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn subscribe_all_heads<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<Subscription<Header>, Error>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn subscribe_new_heads<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<Subscription<Header>, Error>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: 'async_trait { ... }
    fn subscribe_finalized_heads<'life0, 'async_trait>(
        &'life0 self
    ) -> Pin<Box<dyn Future<Output = Result<Subscription<Header>, Error>> + Send + 'async_trait>>
       where Self: Sync + 'async_trait,
             'life0: '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 = RpcResult<Option<Header>>> + Send + 'async_trait>>where Self: Sync + 'async_trait, 'life0: 'async_trait,

Get header.

source

fn block<'life0, 'async_trait>( &'life0 self, hash: Option<Hash> ) -> Pin<Box<dyn Future<Output = RpcResult<Option<SignedBlock>>> + Send + 'async_trait>>where Self: Sync + 'async_trait, 'life0: '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 = RpcResult<ListOrValue<Option<Hash>>>> + Send + 'async_trait>>where Self: Sync + 'async_trait, 'life0: '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 = RpcResult<Hash>> + Send + 'async_trait>>where Self: Sync + 'async_trait, 'life0: '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 Self: Sync + 'async_trait, 'life0: '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 Self: Sync + 'async_trait, 'life0: '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 Self: Sync + 'async_trait, 'life0: 'async_trait,

Finalized head subscription.

Implementors§

source§

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