Trait sc_light::fetcher::Fetcher[][src]

pub trait Fetcher<Block>: Send + Sync where
    Block: Block
{ type RemoteHeaderResult: 'static + Send + Unpin + Future; type RemoteReadResult: 'static + Send + Unpin + Future; type RemoteCallResult: 'static + Send + Unpin + Future; type RemoteChangesResult: 'static + Send + Unpin + Future; type RemoteBodyResult: 'static + Send + Unpin + Future; pub fn remote_header(
        &self,
        request: RemoteHeaderRequest<<Block as Block>::Header>
    ) -> Self::RemoteHeaderResult;
pub fn remote_read(
        &self,
        request: RemoteReadRequest<<Block as Block>::Header>
    ) -> Self::RemoteReadResult;
pub fn remote_read_child(
        &self,
        request: RemoteReadChildRequest<<Block as Block>::Header>
    ) -> Self::RemoteReadResult;
pub fn remote_call(
        &self,
        request: RemoteCallRequest<<Block as Block>::Header>
    ) -> Self::RemoteCallResult;
pub fn remote_changes(
        &self,
        request: RemoteChangesRequest<<Block as Block>::Header>
    ) -> Self::RemoteChangesResult;
pub fn remote_body(
        &self,
        request: RemoteBodyRequest<<Block as Block>::Header>
    ) -> Self::RemoteBodyResult; }

Light client data fetcher. Implementations of this trait must check if remote data is correct (see FetchedDataChecker) and return already checked data.

Associated Types

type RemoteHeaderResult: 'static + Send + Unpin + Future[src]

Remote header future.

type RemoteReadResult: 'static + Send + Unpin + Future[src]

Remote storage read future.

type RemoteCallResult: 'static + Send + Unpin + Future[src]

Remote call result future.

type RemoteChangesResult: 'static + Send + Unpin + Future[src]

Remote changes result future.

type RemoteBodyResult: 'static + Send + Unpin + Future[src]

Remote block body result future.

Loading content...

Required methods

pub fn remote_header(
    &self,
    request: RemoteHeaderRequest<<Block as Block>::Header>
) -> Self::RemoteHeaderResult
[src]

Fetch remote header.

pub fn remote_read(
    &self,
    request: RemoteReadRequest<<Block as Block>::Header>
) -> Self::RemoteReadResult
[src]

Fetch remote storage value.

pub fn remote_read_child(
    &self,
    request: RemoteReadChildRequest<<Block as Block>::Header>
) -> Self::RemoteReadResult
[src]

Fetch remote storage child value.

pub fn remote_call(
    &self,
    request: RemoteCallRequest<<Block as Block>::Header>
) -> Self::RemoteCallResult
[src]

Fetch remote call result.

pub fn remote_changes(
    &self,
    request: RemoteChangesRequest<<Block as Block>::Header>
) -> Self::RemoteChangesResult
[src]

Fetch remote changes ((block number, extrinsic index)) where given key has been changed at a given blocks range.

pub fn remote_body(
    &self,
    request: RemoteBodyRequest<<Block as Block>::Header>
) -> Self::RemoteBodyResult
[src]

Fetch remote block body

Loading content...

Implementors

Loading content...