pub trait BalProvider {
// Required method
fn bal_store(&self) -> &BalStoreHandle;
// Provided methods
fn get_bal_by_hash(
&self,
block_hash: FixedBytes<32>,
) -> Result<Option<Bytes>, ProviderError> { ... }
fn get_bals_by_hashes(
&self,
block_hashes: &[FixedBytes<32>],
) -> Result<Vec<Option<Bytes>>, ProviderError> { ... }
fn get_bals_by_hashes_with_limit(
&self,
block_hashes: &[FixedBytes<32>],
limit: GetBlockAccessListLimit,
) -> Result<Vec<Option<Bytes>>, ProviderError> { ... }
}Expand description
Provider-side access to BAL storage.
Required Methods§
Sourcefn bal_store(&self) -> &BalStoreHandle
fn bal_store(&self) -> &BalStoreHandle
Returns the configured BAL store handle.
Provided Methods§
Sourcefn get_bal_by_hash(
&self,
block_hash: FixedBytes<32>,
) -> Result<Option<Bytes>, ProviderError>
fn get_bal_by_hash( &self, block_hash: FixedBytes<32>, ) -> Result<Option<Bytes>, ProviderError>
Fetches the BAL for the given block hash.
Sourcefn get_bals_by_hashes(
&self,
block_hashes: &[FixedBytes<32>],
) -> Result<Vec<Option<Bytes>>, ProviderError>
fn get_bals_by_hashes( &self, block_hashes: &[FixedBytes<32>], ) -> Result<Vec<Option<Bytes>>, ProviderError>
Fetches BALs for the given block hashes.
Sourcefn get_bals_by_hashes_with_limit(
&self,
block_hashes: &[FixedBytes<32>],
limit: GetBlockAccessListLimit,
) -> Result<Vec<Option<Bytes>>, ProviderError>
fn get_bals_by_hashes_with_limit( &self, block_hashes: &[FixedBytes<32>], limit: GetBlockAccessListLimit, ) -> Result<Vec<Option<Bytes>>, ProviderError>
Fetches BAL response entries for the given block hashes, stopping after the soft limit is exceeded.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl<'a, T> BalProvider for &'a Twhere
T: 'a + BalProvider + ?Sized,
impl<'a, T> BalProvider for &'a Twhere
T: 'a + BalProvider + ?Sized,
fn bal_store(&self) -> &BalStoreHandle
fn get_bal_by_hash( &self, block_hash: FixedBytes<32>, ) -> Result<Option<Bytes>, ProviderError>
fn get_bals_by_hashes( &self, block_hashes: &[FixedBytes<32>], ) -> Result<Vec<Option<Bytes>>, ProviderError>
fn get_bals_by_hashes_with_limit( &self, block_hashes: &[FixedBytes<32>], limit: GetBlockAccessListLimit, ) -> Result<Vec<Option<Bytes>>, ProviderError>
Source§impl<T> BalProvider for Arc<T>where
T: BalProvider + ?Sized,
impl<T> BalProvider for Arc<T>where
T: BalProvider + ?Sized,
fn bal_store(&self) -> &BalStoreHandle
fn get_bal_by_hash( &self, block_hash: FixedBytes<32>, ) -> Result<Option<Bytes>, ProviderError>
fn get_bals_by_hashes( &self, block_hashes: &[FixedBytes<32>], ) -> Result<Vec<Option<Bytes>>, ProviderError>
fn get_bals_by_hashes_with_limit( &self, block_hashes: &[FixedBytes<32>], limit: GetBlockAccessListLimit, ) -> Result<Vec<Option<Bytes>>, ProviderError>
Implementors§
impl<ChainSpec, N> BalProvider for NoopProvider<ChainSpec, N>
impl<N: ProviderNodeTypes> BalProvider for BlockchainProvider<N>
impl<N: ProviderNodeTypes> BalProvider for ProviderFactory<N>
impl<T: NodePrimitives, ChainSpec> BalProvider for MockEthProvider<T, ChainSpec>
Available on crate features
test-utils only.