[][src]Struct sp_state_machine::ProvingBackend

pub struct ProvingBackend<'a, S: 'a + TrieBackendStorage<H>, H: 'a + Hasher>(_);

Patricia trie-based backend which also tracks all touched storage trie values. These can be sent to remote node and used as a proof of execution.

Methods

impl<'a, S: 'a + TrieBackendStorage<H>, H: 'a + Hasher> ProvingBackend<'a, S, H> where
    H::Out: Codec
[src]

pub fn new(backend: &'a TrieBackend<S, H>) -> Self[src]

Create new proving backend.

pub fn new_with_recorder(
    backend: &'a TrieBackend<S, H>,
    proof_recorder: ProofRecorder<H>
) -> Self
[src]

Create new proving backend with the given recorder.

pub fn extract_proof(&self) -> StorageProof[src]

Extracting the gathered unordered proof.

Trait Implementations

impl<'a, S, H> Backend<H> for ProvingBackend<'a, S, H> where
    S: 'a + TrieBackendStorage<H>,
    H: 'a + Hasher,
    H::Out: Ord + Codec
[src]

type Error = String

An error type when fetching data is not possible.

type Transaction = S::Overlay

Storage changes to be applied if committing

type TrieBackendStorage = S

Type of trie backend storage.

impl<'a, S: 'a + TrieBackendStorage<H>, H: 'a + Hasher> Debug for ProvingBackend<'a, S, H>[src]

Auto Trait Implementations

impl<'a, S, H> !RefUnwindSafe for ProvingBackend<'a, S, H>

impl<'a, S, H> Send for ProvingBackend<'a, S, H> where
    <H as Hasher>::Out: Send + Sync

impl<'a, S, H> Sync for ProvingBackend<'a, S, H> where
    <H as Hasher>::Out: Send + Sync

impl<'a, S, H> Unpin for ProvingBackend<'a, S, H> where
    <H as Hasher>::Out: Unpin

impl<'a, S, H> !UnwindSafe for ProvingBackend<'a, S, H>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, Outer> IsWrappedBy<Outer> for T where
    Outer: AsRef<T> + AsMut<T> + From<T>,
    T: From<Outer>, 
[src]

fn from_ref(outer: &Outer) -> &T[src]

Get a reference to the inner from the outer.

fn from_mut(outer: &mut Outer) -> &mut T[src]

Get a mutable reference to the inner from the outer.

impl<T> MaybeDebug for T where
    T: Debug
[src]

impl<T> MaybeDebug for T where
    T: Debug

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<S, T> UncheckedInto<T> for S where
    T: UncheckedFrom<S>, 
[src]

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,