Trait evm::backend::Backend

source ·
pub trait Backend {
Show 16 methods // Required methods fn gas_price(&self) -> U256; fn origin(&self) -> H160; fn block_hash(&self, number: U256) -> H256; fn block_number(&self) -> U256; fn block_coinbase(&self) -> H160; fn block_timestamp(&self) -> U256; fn block_difficulty(&self) -> U256; fn block_randomness(&self) -> Option<H256>; fn block_gas_limit(&self) -> U256; fn block_base_fee_per_gas(&self) -> U256; fn chain_id(&self) -> U256; fn exists(&self, address: H160) -> bool; fn basic(&self, address: H160) -> Basic; fn code(&self, address: H160) -> Vec<u8>; fn storage(&self, address: H160, index: H256) -> H256; fn original_storage(&self, address: H160, index: H256) -> Option<H256>;
}
Expand description

EVM backend.

Required Methods§

source

fn gas_price(&self) -> U256

Gas price. Unused for London.

source

fn origin(&self) -> H160

Origin.

source

fn block_hash(&self, number: U256) -> H256

Environmental block hash.

source

fn block_number(&self) -> U256

Environmental block number.

source

fn block_coinbase(&self) -> H160

Environmental coinbase.

source

fn block_timestamp(&self) -> U256

Environmental block timestamp.

source

fn block_difficulty(&self) -> U256

Environmental block difficulty.

source

fn block_randomness(&self) -> Option<H256>

Get environmental block randomness.

source

fn block_gas_limit(&self) -> U256

Environmental block gas limit.

source

fn block_base_fee_per_gas(&self) -> U256

Environmental block base fee.

source

fn chain_id(&self) -> U256

Environmental chain ID.

source

fn exists(&self, address: H160) -> bool

Whether account at address exists.

source

fn basic(&self, address: H160) -> Basic

Get basic account information.

source

fn code(&self, address: H160) -> Vec<u8>

Get account code.

source

fn storage(&self, address: H160, index: H256) -> H256

Get storage value of address at index.

source

fn original_storage(&self, address: H160, index: H256) -> Option<H256>

Get original storage value of address at index, if available.

Implementations on Foreign Types§

source§

impl<'a, T: 'a + Backend + ?Sized> Backend for &'a T

source§

fn gas_price(&self) -> U256

source§

fn origin(&self) -> H160

source§

fn block_hash(&self, number: U256) -> H256

source§

fn block_number(&self) -> U256

source§

fn block_coinbase(&self) -> H160

source§

fn block_timestamp(&self) -> U256

source§

fn block_difficulty(&self) -> U256

source§

fn block_randomness(&self) -> Option<H256>

source§

fn block_gas_limit(&self) -> U256

source§

fn block_base_fee_per_gas(&self) -> U256

source§

fn chain_id(&self) -> U256

source§

fn exists(&self, address: H160) -> bool

source§

fn basic(&self, address: H160) -> Basic

source§

fn code(&self, address: H160) -> Vec<u8>

source§

fn storage(&self, address: H160, index: H256) -> H256

source§

fn original_storage(&self, address: H160, index: H256) -> Option<H256>

source§

impl<T: Backend + ?Sized> Backend for Box<T>

source§

fn gas_price(&self) -> U256

source§

fn origin(&self) -> H160

source§

fn block_hash(&self, number: U256) -> H256

source§

fn block_number(&self) -> U256

source§

fn block_coinbase(&self) -> H160

source§

fn block_timestamp(&self) -> U256

source§

fn block_difficulty(&self) -> U256

source§

fn block_randomness(&self) -> Option<H256>

source§

fn block_gas_limit(&self) -> U256

source§

fn block_base_fee_per_gas(&self) -> U256

source§

fn chain_id(&self) -> U256

source§

fn exists(&self, address: H160) -> bool

source§

fn basic(&self, address: H160) -> Basic

source§

fn code(&self, address: H160) -> Vec<u8>

source§

fn storage(&self, address: H160, index: H256) -> H256

source§

fn original_storage(&self, address: H160, index: H256) -> Option<H256>

source§

impl<T: Backend + ?Sized> Backend for Arc<T>

source§

fn gas_price(&self) -> U256

source§

fn origin(&self) -> H160

source§

fn block_hash(&self, number: U256) -> H256

source§

fn block_number(&self) -> U256

source§

fn block_coinbase(&self) -> H160

source§

fn block_timestamp(&self) -> U256

source§

fn block_difficulty(&self) -> U256

source§

fn block_randomness(&self) -> Option<H256>

source§

fn block_gas_limit(&self) -> U256

source§

fn block_base_fee_per_gas(&self) -> U256

source§

fn chain_id(&self) -> U256

source§

fn exists(&self, address: H160) -> bool

source§

fn basic(&self, address: H160) -> Basic

source§

fn code(&self, address: H160) -> Vec<u8>

source§

fn storage(&self, address: H160, index: H256) -> H256

source§

fn original_storage(&self, address: H160, index: H256) -> Option<H256>

Implementors§

source§

impl<'backend, 'config, B: Backend> Backend for MemoryStackState<'backend, 'config, B>

source§

impl<'vicinity> Backend for MemoryBackend<'vicinity>