reth::builder::components

Trait NetworkBuilder

Source
pub trait NetworkBuilder<Node, Pool>: Send
where Node: FullNodeTypes, Pool: TransactionPool,
{ // Required method fn build_network( self, ctx: &BuilderContext<Node>, pool: Pool, ) -> impl Future<Output = Result<NetworkHandle, Report>> + Send; }
Expand description

A type that knows how to build the network implementation.

Required Methods§

Source

fn build_network( self, ctx: &BuilderContext<Node>, pool: Pool, ) -> impl Future<Output = Result<NetworkHandle, Report>> + Send

Launches the network implementation and returns the handle to it.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<Node, Pool> NetworkBuilder<Node, Pool> for EthereumNetworkBuilder
where <Node as FullNodeTypes>::Types: NodeTypes<ChainSpec = ChainSpec, Primitives = EthPrimitives>, Pool: TransactionPool + Unpin + 'static, <Pool as TransactionPool>::Transaction: PoolTransaction<Consensus = <<<Node as FullNodeTypes>::Types as NodeTypes>::Primitives as NodePrimitives>::SignedTx>, Node: FullNodeTypes,

Source§

async fn build_network( self, ctx: &BuilderContext<Node>, pool: Pool, ) -> Result<NetworkHandle, Report>

Implementors§

Source§

impl<Node, F, Fut, Pool> NetworkBuilder<Node, Pool> for F
where Node: FullNodeTypes, Pool: TransactionPool, F: Fn(&BuilderContext<Node>, Pool) -> Fut + Send, Fut: Future<Output = Result<NetworkHandle, Report>> + Send,