pub trait FullNodeComponents: FullNodeTypes + 'static {
type Pool: TransactionPool + Unpin;
type Evm: ConfigureEvm;
type Executor: BlockExecutorProvider;
// Required methods
fn pool(&self) -> &Self::Pool;
fn evm_config(&self) -> &Self::Evm;
fn block_executor(&self) -> &Self::Executor;
fn provider(&self) -> &Self::Provider;
fn network(&self) -> &NetworkHandle;
fn payload_builder(&self) -> &PayloadBuilderHandle<Self::Engine>;
fn task_executor(&self) -> &TaskExecutor;
}
Expand description
Encapsulates all types and components of the node.
Required Associated Types§
type Evm: ConfigureEvm
type Evm: ConfigureEvm
The node’s EVM configuration, defining settings for the Ethereum Virtual Machine.
type Executor: BlockExecutorProvider
type Executor: BlockExecutorProvider
The type that knows how to execute blocks.
Required Methods§
fn evm_config(&self) -> &Self::Evm
fn evm_config(&self) -> &Self::Evm
Returns the node’s evm config.
fn block_executor(&self) -> &Self::Executor
fn block_executor(&self) -> &Self::Executor
Returns the node’s executor type.
fn network(&self) -> &NetworkHandle
fn network(&self) -> &NetworkHandle
Returns the handle to the network
fn payload_builder(&self) -> &PayloadBuilderHandle<Self::Engine>
fn payload_builder(&self) -> &PayloadBuilderHandle<Self::Engine>
Returns the handle to the payload builder service.
fn task_executor(&self) -> &TaskExecutor
fn task_executor(&self) -> &TaskExecutor
Returns the task executor.
Object Safety§
This trait is not object safe.