reth::rpc::api

Trait MevFullApiServer

Source
pub trait MevFullApiServer:
    Sized
    + Send
    + Sync
    + 'static {
    // Required methods
    fn send_bundle<'life0, 'async_trait>(
        &'life0 self,
        request: SendBundleRequest,
    ) -> Pin<Box<dyn Future<Output = Result<SendBundleResponse, ErrorObject<'static>>> + Send + 'async_trait>>
       where 'life0: 'async_trait,
             Self: 'async_trait;
    fn sim_bundle<'life0, 'async_trait>(
        &'life0 self,
        bundle: SendBundleRequest,
        sim_overrides: SimBundleOverrides,
    ) -> Pin<Box<dyn Future<Output = Result<SimBundleResponse, ErrorObject<'static>>> + Send + 'async_trait>>
       where 'life0: 'async_trait,
             Self: 'async_trait;

    // Provided method
    fn into_rpc(self) -> RpcModule<Self> { ... }
}
Expand description

Server trait implementation for the MevFullApi RPC API.

Required Methods§

Source

fn send_bundle<'life0, 'async_trait>( &'life0 self, request: SendBundleRequest, ) -> Pin<Box<dyn Future<Output = Result<SendBundleResponse, ErrorObject<'static>>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Submitting bundles to the relay. It takes in a bundle and provides a bundle hash as a return value.

Source

fn sim_bundle<'life0, 'async_trait>( &'life0 self, bundle: SendBundleRequest, sim_overrides: SimBundleOverrides, ) -> Pin<Box<dyn Future<Output = Result<SimBundleResponse, ErrorObject<'static>>> + Send + 'async_trait>>
where 'life0: 'async_trait, Self: 'async_trait,

Similar to mev_sendBundle but instead of submitting a bundle to the relay, it returns a simulation result. Only fully matched bundles can be simulated.

Provided Methods§

Source

fn into_rpc(self) -> RpcModule<Self>

Collects all the methods and subscriptions defined in the trait and adds them into a single RpcModule.

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§