Skip to main content

RethRpcAddOns

Trait RethRpcAddOns 

Source
pub trait RethRpcAddOns<N>: NodeAddOns<N, Handle = RpcHandle<N, Self::EthApi>>{
    type EthApi: EthApiTypes;

    // Required method
    fn hooks_mut(&mut self) -> &mut RpcHooks<N, Self::EthApi>;
}
Expand description

Helper trait implemented for add-ons producing RpcHandle. Used by common node launcher implementations.

Required Associated Types§

Source

type EthApi: EthApiTypes

eth API implementation.

Required Methods§

Source

fn hooks_mut(&mut self) -> &mut RpcHooks<N, Self::EthApi>

Returns a mutable reference to RPC hooks.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<N, EthB, PVB, EB, EVB, RpcMiddleware, AuthHttpMiddleware> RethRpcAddOns<N> for EthereumAddOns<N, EthB, PVB, EB, EVB, RpcMiddleware, AuthHttpMiddleware>
where N: FullNodeComponents, <N as FullNodeTypes>::Types: NodeTypes<Primitives = EthPrimitives>, <<N as FullNodeTypes>::Types as NodeTypes>::ChainSpec: Hardforks + EthereumHardforks, <<N as FullNodeTypes>::Types as NodeTypes>::Payload: EngineTypes<ExecutionData = ExecutionData>, <N as FullNodeComponents>::Evm: ConfigureEvm<NextBlockEnvCtx = NextBlockEnvAttributes>, EthB: EthApiBuilder<N>, PVB: PayloadValidatorBuilder<N>, EB: EngineApiBuilder<N>, EVB: EngineValidatorBuilder<N>, EthApiError: FromEvmError<<N as FullNodeComponents>::Evm>, <<<N as FullNodeComponents>::Evm as ConfigureEvm>::BlockExecutorFactory as BlockExecutorFactory>::EvmFactory: EvmFactory<Tx = TxEnv>, RpcMiddleware: RethRpcMiddleware, AuthHttpMiddleware: RethAuthHttpMiddleware<Identity>,

Source§

type EthApi = <EthB as EthApiBuilder<N>>::EthApi

Source§

fn hooks_mut( &mut self, ) -> &mut RpcHooks<N, <EthereumAddOns<N, EthB, PVB, EB, EVB, RpcMiddleware, AuthHttpMiddleware> as RethRpcAddOns<N>>::EthApi>

Implementors§

Source§

impl<N, EthB, EV, EB, Engine, RpcMiddleware, AuthHttpMiddleware> RethRpcAddOns<N> for RpcAddOns<N, EthB, EV, EB, Engine, RpcMiddleware, AuthHttpMiddleware>
where N: FullNodeComponents, RpcAddOns<N, EthB, EV, EB, Engine, RpcMiddleware, AuthHttpMiddleware>: NodeAddOns<N, Handle = RpcHandle<N, <EthB as EthApiBuilder<N>>::EthApi>>, EthB: EthApiBuilder<N>,

Source§

type EthApi = <EthB as EthApiBuilder<N>>::EthApi