Trait EngineApiBuilder

Source
pub trait EngineApiBuilder<Node>: Send + Sync
where Node: FullNodeComponents,
{ type EngineApi: IntoEngineApiRpcModule + Send + Sync; // Required method fn build_engine_api( self, ctx: &AddOnsContext<'_, Node>, ) -> impl Future<Output = Result<Self::EngineApi, Report>> + Send; }
Expand description

Builder for engine API RPC module.

Required Associated Types§

Source

type EngineApi: IntoEngineApiRpcModule + Send + Sync

The engine API RPC module. Only required to be convertible to an [jsonrpsee] module.

Required Methods§

Source

fn build_engine_api( self, ctx: &AddOnsContext<'_, Node>, ) -> impl Future<Output = Result<Self::EngineApi, Report>> + Send

Builds the engine API.

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.

Implementors§

Source§

impl<N, EV> EngineApiBuilder<N> for BasicEngineApiBuilder<EV>

impl<N, EV> EngineApiBuilder<N> for OpEngineApiBuilder<EV>
where N: FullNodeComponents<Types: NodeTypesWithEngine<ChainSpec: EthereumHardforks, Engine: EngineTypes<ExecutionData = OpExecutionData>>>, EV: EngineValidatorBuilder<N>,