pub trait StateRef {
type Error: StdError;
// Required methods
fn basic(
&self,
address: Address,
) -> Result<Option<AccountInfo>, Self::Error>;
fn code_by_hash(&self, code_hash: B256) -> Result<Bytecode, Self::Error>;
fn storage(
&self,
address: Address,
index: StorageKey,
) -> Result<StorageValue, Self::Error>;
}
Expand description
Trait for immutable access to state data including accounts, code, and storage. This is typically used for read-only database implementations or when state data is pre-loaded and doesn’t require modification.
Required Associated Types§
Required Methods§
Sourcefn basic(&self, address: Address) -> Result<Option<AccountInfo>, Self::Error>
fn basic(&self, address: Address) -> Result<Option<AccountInfo>, Self::Error>
Gets basic account information.
Sourcefn code_by_hash(&self, code_hash: B256) -> Result<Bytecode, Self::Error>
fn code_by_hash(&self, code_hash: B256) -> Result<Bytecode, Self::Error>
Gets account code by its hash.
Sourcefn storage(
&self,
address: Address,
index: StorageKey,
) -> Result<StorageValue, Self::Error>
fn storage( &self, address: Address, index: StorageKey, ) -> Result<StorageValue, Self::Error>
Gets storage value of address at index.