reth::providers

Trait DatabaseProviderFactory

Source
pub trait DatabaseProviderFactory: Send + Sync {
    type DB: Database;
    type Provider: DBProvider<Tx = <Self::DB as Database>::TX>;
    type ProviderRW: DBProvider<Tx = <Self::DB as Database>::TXMut>;

    // Required methods
    fn database_provider_ro(&self) -> Result<Self::Provider, ProviderError>;
    fn database_provider_rw(&self) -> Result<Self::ProviderRW, ProviderError>;
}
Expand description

Database provider factory.

Required Associated Types§

Source

type DB: Database

Database this factory produces providers for.

Source

type Provider: DBProvider<Tx = <Self::DB as Database>::TX>

Provider type returned by the factory.

Source

type ProviderRW: DBProvider<Tx = <Self::DB as Database>::TXMut>

Read-write provider type returned by the factory.

Required Methods§

Source

fn database_provider_ro(&self) -> Result<Self::Provider, ProviderError>

Create new read-only database provider.

Source

fn database_provider_rw(&self) -> Result<Self::ProviderRW, ProviderError>

Create new read-write database provider.

Implementations on Foreign Types§

Source§

impl<'a, T> DatabaseProviderFactory for &'a T

Source§

impl<T> DatabaseProviderFactory for Arc<T>

Implementors§