reth::builder::components

Trait PayloadServiceBuilder

Source
pub trait PayloadServiceBuilder<Node, Pool>: Send
where Node: FullNodeTypes, Pool: TransactionPool,
{ // Required method fn spawn_payload_service( self, ctx: &BuilderContext<Node>, pool: Pool, ) -> impl Future<Output = Result<PayloadBuilderHandle<<<Node as FullNodeTypes>::Types as NodeTypesWithEngine>::Engine>, Report>> + Send; }
Expand description

A type that knows how to spawn the payload service.

Required Methods§

Source

fn spawn_payload_service( self, ctx: &BuilderContext<Node>, pool: Pool, ) -> impl Future<Output = Result<PayloadBuilderHandle<<<Node as FullNodeTypes>::Types as NodeTypesWithEngine>::Engine>, Report>> + Send

Spawns the payload service and returns the handle to it.

The BuilderContext is provided to allow access to the node’s configuration.

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<Types, Node, Pool> PayloadServiceBuilder<Node, Pool> for EthereumPayloadBuilder
where Pool: TransactionPool + Unpin + 'static, <Pool as TransactionPool>::Transaction: PoolTransaction<Consensus = <<<Node as FullNodeTypes>::Types as NodeTypes>::Primitives as NodePrimitives>::SignedTx>, <Types as NodeTypesWithEngine>::Engine: PayloadTypes<BuiltPayload = EthBuiltPayload, PayloadAttributes = PayloadAttributes, PayloadBuilderAttributes = EthPayloadBuilderAttributes>, Types: NodeTypesWithEngine<Primitives = EthPrimitives, ChainSpec = ChainSpec>, Node: FullNodeTypes<Types = Types>,

Source§

async fn spawn_payload_service( self, ctx: &BuilderContext<Node>, pool: Pool, ) -> Result<PayloadBuilderHandle<<Types as NodeTypesWithEngine>::Engine>, Report>

Implementors§

Source§

impl<Node, F, Fut, Pool> PayloadServiceBuilder<Node, Pool> for F
where Node: FullNodeTypes, Pool: TransactionPool, F: Fn(&BuilderContext<Node>, Pool) -> Fut + Send, Fut: Future<Output = Result<PayloadBuilderHandle<<<Node as FullNodeTypes>::Types as NodeTypesWithEngine>::Engine>, Report>> + Send,