Trait EthApiBuilder

Source
pub trait EthApiBuilder<N>:
    Default
    + Send
    + 'static{
    type EthApi: EthApiTypes + FullEthApiServer<Provider = <N as FullNodeTypes>::Provider, Pool = <N as FullNodeComponents>::Pool> + AddDevSigners + Unpin + 'static;

    // Required method
    fn build_eth_api(
        self,
        ctx: EthApiCtx<'_, N>,
    ) -> impl Future<Output = Result<Self::EthApi, Report>> + Send;
}
Expand description

A EthApi that knows how to build eth namespace API from FullNodeComponents.

Required Associated Types§

Source

type EthApi: EthApiTypes + FullEthApiServer<Provider = <N as FullNodeTypes>::Provider, Pool = <N as FullNodeComponents>::Pool> + AddDevSigners + Unpin + 'static

The Ethapi implementation this builder will build.

Required Methods§

Source

fn build_eth_api( self, ctx: EthApiCtx<'_, N>, ) -> impl Future<Output = Result<Self::EthApi, Report>> + Send

Builds the EthApiServer from the given context.

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§

§

impl<N> EthApiBuilder<N> for EthereumEthApiBuilder

§

type EthApi = EthApi<<N as FullNodeTypes>::Provider, <N as FullNodeComponents>::Pool, <N as FullNodeComponents>::Network, <N as FullNodeComponents>::Evm>

§

async fn build_eth_api( self, ctx: EthApiCtx<'_, N>, ) -> Result<<EthereumEthApiBuilder as EthApiBuilder<N>>::EthApi, Report>

Implementors§