Trait sc_light::fetcher::FetchChecker [−][src]
Light client remote data checker.
Implementations of this trait should not use any prunable blockchain data except that is passed to its methods.
Required methods
pub fn check_header_proof(
&self,
request: &RemoteHeaderRequest<<Block as Block>::Header>,
header: Option<<Block as Block>::Header>,
remote_proof: StorageProof
) -> Result<<Block as Block>::Header, Error>
[src]
&self,
request: &RemoteHeaderRequest<<Block as Block>::Header>,
header: Option<<Block as Block>::Header>,
remote_proof: StorageProof
) -> Result<<Block as Block>::Header, Error>
Check remote header proof.
pub fn check_read_proof(
&self,
request: &RemoteReadRequest<<Block as Block>::Header>,
remote_proof: StorageProof
) -> Result<HashMap<Vec<u8, Global>, Option<Vec<u8, Global>>, RandomState>, Error>
[src]
&self,
request: &RemoteReadRequest<<Block as Block>::Header>,
remote_proof: StorageProof
) -> Result<HashMap<Vec<u8, Global>, Option<Vec<u8, Global>>, RandomState>, Error>
Check remote storage read proof.
pub fn check_read_child_proof(
&self,
request: &RemoteReadChildRequest<<Block as Block>::Header>,
remote_proof: StorageProof
) -> Result<HashMap<Vec<u8, Global>, Option<Vec<u8, Global>>, RandomState>, Error>
[src]
&self,
request: &RemoteReadChildRequest<<Block as Block>::Header>,
remote_proof: StorageProof
) -> Result<HashMap<Vec<u8, Global>, Option<Vec<u8, Global>>, RandomState>, Error>
Check remote storage read proof.
pub fn check_execution_proof(
&self,
request: &RemoteCallRequest<<Block as Block>::Header>,
remote_proof: StorageProof
) -> Result<Vec<u8, Global>, Error>
[src]
&self,
request: &RemoteCallRequest<<Block as Block>::Header>,
remote_proof: StorageProof
) -> Result<Vec<u8, Global>, Error>
Check remote method execution proof.
pub fn check_changes_proof(
&self,
request: &RemoteChangesRequest<<Block as Block>::Header>,
proof: ChangesProof<<Block as Block>::Header>
) -> Result<Vec<(<<Block as Block>::Header as Header>::Number, u32), Global>, Error>
[src]
&self,
request: &RemoteChangesRequest<<Block as Block>::Header>,
proof: ChangesProof<<Block as Block>::Header>
) -> Result<Vec<(<<Block as Block>::Header as Header>::Number, u32), Global>, Error>
Check remote changes query proof.
pub fn check_body_proof(
&self,
request: &RemoteBodyRequest<<Block as Block>::Header>,
body: Vec<<Block as Block>::Extrinsic, Global>
) -> Result<Vec<<Block as Block>::Extrinsic, Global>, Error>
[src]
&self,
request: &RemoteBodyRequest<<Block as Block>::Header>,
body: Vec<<Block as Block>::Extrinsic, Global>
) -> Result<Vec<<Block as Block>::Extrinsic, Global>, Error>
Check remote body proof.
Implementors
impl<E, Block, H, S> FetchChecker<Block> for LightDataChecker<E, H, Block, S> where
Block: BlockT,
E: CodeExecutor + Clone + 'static,
H: Hasher,
H::Out: Ord + Codec + 'static,
S: BlockchainStorage<Block>,
[src]
Block: BlockT,
E: CodeExecutor + Clone + 'static,
H: Hasher,
H::Out: Ord + Codec + 'static,
S: BlockchainStorage<Block>,
fn check_header_proof(
&self,
request: &RemoteHeaderRequest<Block::Header>,
remote_header: Option<Block::Header>,
remote_proof: StorageProof
) -> ClientResult<Block::Header>
[src]
&self,
request: &RemoteHeaderRequest<Block::Header>,
remote_header: Option<Block::Header>,
remote_proof: StorageProof
) -> ClientResult<Block::Header>
fn check_read_proof(
&self,
request: &RemoteReadRequest<Block::Header>,
remote_proof: StorageProof
) -> ClientResult<HashMap<Vec<u8>, Option<Vec<u8>>>>
[src]
&self,
request: &RemoteReadRequest<Block::Header>,
remote_proof: StorageProof
) -> ClientResult<HashMap<Vec<u8>, Option<Vec<u8>>>>
fn check_read_child_proof(
&self,
request: &RemoteReadChildRequest<Block::Header>,
remote_proof: StorageProof
) -> ClientResult<HashMap<Vec<u8>, Option<Vec<u8>>>>
[src]
&self,
request: &RemoteReadChildRequest<Block::Header>,
remote_proof: StorageProof
) -> ClientResult<HashMap<Vec<u8>, Option<Vec<u8>>>>
fn check_execution_proof(
&self,
request: &RemoteCallRequest<Block::Header>,
remote_proof: StorageProof
) -> ClientResult<Vec<u8>>
[src]
&self,
request: &RemoteCallRequest<Block::Header>,
remote_proof: StorageProof
) -> ClientResult<Vec<u8>>
fn check_changes_proof(
&self,
request: &RemoteChangesRequest<Block::Header>,
remote_proof: ChangesProof<Block::Header>
) -> ClientResult<Vec<(NumberFor<Block>, u32)>>
[src]
&self,
request: &RemoteChangesRequest<Block::Header>,
remote_proof: ChangesProof<Block::Header>
) -> ClientResult<Vec<(NumberFor<Block>, u32)>>
fn check_body_proof(
&self,
request: &RemoteBodyRequest<Block::Header>,
body: Vec<Block::Extrinsic>
) -> ClientResult<Vec<Block::Extrinsic>>
[src]
&self,
request: &RemoteBodyRequest<Block::Header>,
body: Vec<Block::Extrinsic>
) -> ClientResult<Vec<Block::Extrinsic>>