reth_provider::providers

Trait ChainStorage

Source
pub trait ChainStorage<Primitives: FullNodePrimitives>: Send + Sync {
    // Required methods
    fn reader<TX, Types>(
        &self,
    ) -> impl ChainStorageReader<DatabaseProvider<TX, Types>, Primitives>
       where TX: DbTx + 'static,
             Types: NodeTypesForProvider<Primitives = Primitives>;
    fn writer<TX, Types>(
        &self,
    ) -> impl ChainStorageWriter<DatabaseProvider<TX, Types>, Primitives>
       where TX: DbTxMut + DbTx + 'static,
             Types: NodeTypesForProvider<Primitives = Primitives>;
}
Expand description

Trait that provides access to implementations of ChainStorage

Required Methods§

Source

fn reader<TX, Types>( &self, ) -> impl ChainStorageReader<DatabaseProvider<TX, Types>, Primitives>
where TX: DbTx + 'static, Types: NodeTypesForProvider<Primitives = Primitives>,

Provides access to the chain reader.

Source

fn writer<TX, Types>( &self, ) -> impl ChainStorageWriter<DatabaseProvider<TX, Types>, Primitives>
where TX: DbTxMut + DbTx + 'static, Types: NodeTypesForProvider<Primitives = Primitives>,

Provides access to the chain writer.

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 ChainStorage<EthPrimitives> for EthStorage