Skip to main content

MbStorageRW

Trait MbStorageRW 

Source
pub trait MbStorageRW: MbStorageRO {
    // Required methods
    fn set_mb_compact_block(&self, mb_hash: H256, compact: CompactMb);
    fn set_transactions(&self, transactions: Transactions) -> H256;
    fn set_mb_program_states(
        &self,
        mb_hash: H256,
        program_states: ProgramStates,
    );
    fn set_mb_outcome(&self, mb_hash: H256, outcome: Vec<StateTransition>);
    fn set_mb_schedule(&self, mb_hash: H256, schedule: Schedule);
    fn mutate_mb_meta(&self, mb_hash: H256, f: impl FnOnce(&mut MbMeta));
}

Required Methods§

Source

fn set_mb_compact_block(&self, mb_hash: H256, compact: CompactMb)

Source

fn set_transactions(&self, transactions: Transactions) -> H256

Write a Transactions blob into the CAS and return its hash (the value stored in CompactMb::transactions_hash).

Source

fn set_mb_program_states(&self, mb_hash: H256, program_states: ProgramStates)

Source

fn set_mb_outcome(&self, mb_hash: H256, outcome: Vec<StateTransition>)

Source

fn set_mb_schedule(&self, mb_hash: H256, schedule: Schedule)

Source

fn mutate_mb_meta(&self, mb_hash: H256, f: impl FnOnce(&mut MbMeta))

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<'a, T: 'a + MbStorageRW + ?Sized> MbStorageRW for &'a T

Source§

fn set_mb_compact_block(&self, mb_hash: H256, compact: CompactMb)

Source§

fn set_transactions(&self, transactions: Transactions) -> H256

Source§

fn set_mb_program_states(&self, mb_hash: H256, program_states: ProgramStates)

Source§

fn set_mb_outcome(&self, mb_hash: H256, outcome: Vec<StateTransition>)

Source§

fn set_mb_schedule(&self, mb_hash: H256, schedule: Schedule)

Source§

fn mutate_mb_meta(&self, mb_hash: H256, f: impl FnOnce(&mut MbMeta))

Implementors§