DatabaseProof

Trait DatabaseProof 

pub trait DatabaseProof<'a, TX> {
    // Required methods
    fn from_tx(tx: &'a TX) -> Self;
    fn overlay_account_proof(
        tx: &'a TX,
        input: TrieInput,
        address: Address,
        slots: &[FixedBytes<32>],
    ) -> Result<AccountProof, StateProofError>;
    fn overlay_multiproof(
        tx: &'a TX,
        input: TrieInput,
        targets: MultiProofTargets,
    ) -> Result<MultiProof, StateProofError>;
}
Available on crate features trie and trie-db only.
Expand description

Extends Proof with operations specific for working with a database transaction.

Required Methods§

fn from_tx(tx: &'a TX) -> Self

Create a new Proof from database transaction.

fn overlay_account_proof( tx: &'a TX, input: TrieInput, address: Address, slots: &[FixedBytes<32>], ) -> Result<AccountProof, StateProofError>

Generates the state proof for target account based on TrieInput.

fn overlay_multiproof( tx: &'a TX, input: TrieInput, targets: MultiProofTargets, ) -> Result<MultiProof, StateProofError>

Generates the state MultiProof for target hashed account and storage keys.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

§

impl<'a, TX> DatabaseProof<'a, TX> for Proof<DatabaseTrieCursorFactory<'a, TX>, DatabaseHashedCursorFactory<'a, TX>>
where TX: DbTx,