Trait EthApiSpec
pub trait EthApiSpec: Send + Sync {
// Required methods
fn provider(
&self,
) -> impl ChainSpecProvider + EthereumHardforks + BlockNumReader + StageCheckpointReader;
fn network(&self) -> impl NetworkInfo;
fn starting_block(&self) -> Uint<256, 4>;
fn signers(&self) -> &RwLock<RawRwLock, Vec<Box<dyn EthSigner>>>;
// Provided methods
fn protocol_version(
&self,
) -> impl Future<Output = Result<Uint<64, 1>, RethError>> + Send { ... }
fn chain_id(&self) -> Uint<64, 1> { ... }
fn chain_info(&self) -> Result<ChainInfo, RethError> { ... }
fn accounts(&self) -> Vec<Address> { ... }
fn is_syncing(&self) -> bool { ... }
fn sync_status(&self) -> Result<SyncStatus, RethError> { ... }
}
Expand description
Eth
API trait.
Defines core functionality of the eth
API implementation.
Required Methods§
fn provider(
&self,
) -> impl ChainSpecProvider + EthereumHardforks + BlockNumReader + StageCheckpointReader
fn provider( &self, ) -> impl ChainSpecProvider + EthereumHardforks + BlockNumReader + StageCheckpointReader
Returns a handle for reading data from disk.
fn network(&self) -> impl NetworkInfo
fn network(&self) -> impl NetworkInfo
Returns a handle for reading network data summary.
fn starting_block(&self) -> Uint<256, 4>
fn starting_block(&self) -> Uint<256, 4>
Returns the block node is started on.
Provided Methods§
fn protocol_version(
&self,
) -> impl Future<Output = Result<Uint<64, 1>, RethError>> + Send
fn protocol_version( &self, ) -> impl Future<Output = Result<Uint<64, 1>, RethError>> + Send
Returns the current ethereum protocol version.
fn chain_info(&self) -> Result<ChainInfo, RethError>
fn chain_info(&self) -> Result<ChainInfo, RethError>
Returns provider chain info
fn is_syncing(&self) -> bool
fn is_syncing(&self) -> bool
Returns true
if the network is undergoing sync.
fn sync_status(&self) -> Result<SyncStatus, RethError>
fn sync_status(&self) -> Result<SyncStatus, RethError>
Returns the SyncStatus
of the network
Object Safety§
This trait is not object safe.