pub trait FullNodeComponents:
FullNodeTypes
+ Clone
+ 'static {
type Pool: TransactionPool + Unpin;
type Evm: ConfigureEvm<Header = Header>;
type Executor: BlockExecutorProvider;
type Network: FullNetwork;
// 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) -> &Self::Network;
fn payload_builder(
&self,
) -> &PayloadBuilderHandle<<Self::Types as NodeTypesWithEngine>::Engine>;
fn task_executor(&self) -> &TaskExecutor;
}
Expand description
Encapsulates all types and components of the node.
Required Associated Types§
sourcetype Evm: ConfigureEvm<Header = Header>
type Evm: ConfigureEvm<Header = Header>
The node’s EVM configuration, defining settings for the Ethereum Virtual Machine.
Required Methods§
sourcefn evm_config(&self) -> &Self::Evm
fn evm_config(&self) -> &Self::Evm
Returns the node’s evm config.
sourcefn block_executor(&self) -> &Self::Executor
fn block_executor(&self) -> &Self::Executor
Returns the node’s executor type.
sourcefn payload_builder(
&self,
) -> &PayloadBuilderHandle<<Self::Types as NodeTypesWithEngine>::Engine>
fn payload_builder( &self, ) -> &PayloadBuilderHandle<<Self::Types as NodeTypesWithEngine>::Engine>
Returns the handle to the payload builder service.
sourcefn task_executor(&self) -> &TaskExecutor
fn task_executor(&self) -> &TaskExecutor
Returns handle to runtime.
Object Safety§
This trait is not object safe.