UpdateAvailabilityStorage

Trait UpdateAvailabilityStorage 

Source
pub trait UpdateAvailabilityStorage<Types>
where Types: NodeType,
{ // Required methods fn insert_leaf_with_qc_chain( &mut self, leaf: LeafQueryData<Types>, qc_chain: Option<[CertificatePair<Types>; 2]>, ) -> impl Send + Future<Output = Result<()>>; fn insert_block( &mut self, block: BlockQueryData<Types>, ) -> impl Send + Future<Output = Result<()>>; fn insert_vid( &mut self, common: VidCommonQueryData<Types>, share: Option<VidShare>, ) -> impl Send + Future<Output = Result<()>>; // Provided method fn insert_leaf( &mut self, leaf: LeafQueryData<Types>, ) -> impl Send + Future<Output = Result<()>> { ... } }

Required Methods§

Source

fn insert_leaf_with_qc_chain( &mut self, leaf: LeafQueryData<Types>, qc_chain: Option<[CertificatePair<Types>; 2]>, ) -> impl Send + Future<Output = Result<()>>

Source

fn insert_block( &mut self, block: BlockQueryData<Types>, ) -> impl Send + Future<Output = Result<()>>

Source

fn insert_vid( &mut self, common: VidCommonQueryData<Types>, share: Option<VidShare>, ) -> impl Send + Future<Output = Result<()>>

Provided Methods§

Source

fn insert_leaf( &mut self, leaf: LeafQueryData<Types>, ) -> impl Send + Future<Output = Result<()>>

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§

Source§

impl<Types> UpdateAvailabilityStorage<Types> for hotshot_query_service::data_source::storage::sql::Transaction<Write>
where Types: NodeType, Payload<Types>: QueryablePayload<Types>, Header<Types>: QueryableHeader<Types>,

Source§

impl<Types, T> UpdateAvailabilityStorage<Types> for hotshot_query_service::data_source::storage::fail_storage::Transaction<T>
where Types: NodeType, Header<Types>: QueryableHeader<Types>, Payload<Types>: QueryablePayload<Types>, T: UpdateAvailabilityStorage<Types> + Send + Sync,

Source§

impl<Types: NodeType> UpdateAvailabilityStorage<Types> for hotshot_query_service::data_source::storage::fs::Transaction<RwLockWriteGuard<'_, FileSystemStorageInner<Types>>>
where Payload<Types>: QueryablePayload<Types>, Header<Types>: QueryableHeader<Types>,