Trait EthBundleApiServer  
pub trait EthBundleApiServer:
    Sized
    + Send
    + Sync
    + 'static {
    // Required methods
    fn send_bundle<'life0, 'async_trait>(
        &'life0 self,
        bundle: EthSendBundle,
    ) -> Pin<Box<dyn Future<Output = Result<EthBundleHash, ErrorObject<'static>>> + Send + 'async_trait>>
       where 'life0: 'async_trait,
             Self: 'async_trait;
    fn call_bundle<'life0, 'async_trait>(
        &'life0 self,
        request: EthCallBundle,
    ) -> Pin<Box<dyn Future<Output = Result<EthCallBundleResponse, ErrorObject<'static>>> + Send + 'async_trait>>
       where 'life0: 'async_trait,
             Self: 'async_trait;
    fn cancel_bundle<'life0, 'async_trait>(
        &'life0 self,
        request: EthCancelBundle,
    ) -> Pin<Box<dyn Future<Output = Result<(), ErrorObject<'static>>> + Send + 'async_trait>>
       where 'life0: 'async_trait,
             Self: 'async_trait;
    fn send_private_transaction<'life0, 'async_trait>(
        &'life0 self,
        request: EthSendPrivateTransaction,
    ) -> Pin<Box<dyn Future<Output = Result<FixedBytes<32>, ErrorObject<'static>>> + Send + 'async_trait>>
       where 'life0: 'async_trait,
             Self: 'async_trait;
    fn send_private_raw_transaction<'life0, 'async_trait>(
        &'life0 self,
        bytes: Bytes,
    ) -> Pin<Box<dyn Future<Output = Result<FixedBytes<32>, ErrorObject<'static>>> + Send + 'async_trait>>
       where 'life0: 'async_trait,
             Self: 'async_trait;
    fn cancel_private_transaction<'life0, 'async_trait>(
        &'life0 self,
        request: EthCancelPrivateTransaction,
    ) -> Pin<Box<dyn Future<Output = Result<bool, ErrorObject<'static>>> + Send + 'async_trait>>
       where 'life0: 'async_trait,
             Self: 'async_trait;
    // Provided method
    fn into_rpc(self) -> RpcModule<Self> { ... }
}rpc only.Expand description
Server trait implementation for the EthBundleApi RPC API.
Required Methods§
fn send_bundle<'life0, 'async_trait>(
    &'life0 self,
    bundle: EthSendBundle,
) -> Pin<Box<dyn Future<Output = Result<EthBundleHash, ErrorObject<'static>>> + Send + 'async_trait>>where
    'life0: 'async_trait,
    Self: 'async_trait,
fn send_bundle<'life0, 'async_trait>(
    &'life0 self,
    bundle: EthSendBundle,
) -> Pin<Box<dyn Future<Output = Result<EthBundleHash, ErrorObject<'static>>> + Send + 'async_trait>>where
    'life0: 'async_trait,
    Self: 'async_trait,
eth_sendBundle can be used to send your bundles to the builder.
fn call_bundle<'life0, 'async_trait>(
    &'life0 self,
    request: EthCallBundle,
) -> Pin<Box<dyn Future<Output = Result<EthCallBundleResponse, ErrorObject<'static>>> + Send + 'async_trait>>where
    'life0: 'async_trait,
    Self: 'async_trait,
fn call_bundle<'life0, 'async_trait>(
    &'life0 self,
    request: EthCallBundle,
) -> Pin<Box<dyn Future<Output = Result<EthCallBundleResponse, ErrorObject<'static>>> + Send + 'async_trait>>where
    'life0: 'async_trait,
    Self: 'async_trait,
eth_callBundle can be used to simulate a bundle against a specific block number,
including simulating a bundle at the top of the next block.
fn cancel_bundle<'life0, 'async_trait>(
    &'life0 self,
    request: EthCancelBundle,
) -> Pin<Box<dyn Future<Output = Result<(), ErrorObject<'static>>> + Send + 'async_trait>>where
    'life0: 'async_trait,
    Self: 'async_trait,
fn cancel_bundle<'life0, 'async_trait>(
    &'life0 self,
    request: EthCancelBundle,
) -> Pin<Box<dyn Future<Output = Result<(), ErrorObject<'static>>> + Send + 'async_trait>>where
    'life0: 'async_trait,
    Self: 'async_trait,
eth_cancelBundle is used to prevent a submitted bundle from being included on-chain. See bundle cancellations for more information.
fn send_private_transaction<'life0, 'async_trait>(
    &'life0 self,
    request: EthSendPrivateTransaction,
) -> Pin<Box<dyn Future<Output = Result<FixedBytes<32>, ErrorObject<'static>>> + Send + 'async_trait>>where
    'life0: 'async_trait,
    Self: 'async_trait,
fn send_private_transaction<'life0, 'async_trait>(
    &'life0 self,
    request: EthSendPrivateTransaction,
) -> Pin<Box<dyn Future<Output = Result<FixedBytes<32>, ErrorObject<'static>>> + Send + 'async_trait>>where
    'life0: 'async_trait,
    Self: 'async_trait,
eth_sendPrivateTransaction is used to send a single transaction to Flashbots. Flashbots will attempt to build a block including the transaction for the next 25 blocks. See Private Transactions for more info.
fn send_private_raw_transaction<'life0, 'async_trait>(
    &'life0 self,
    bytes: Bytes,
) -> Pin<Box<dyn Future<Output = Result<FixedBytes<32>, ErrorObject<'static>>> + Send + 'async_trait>>where
    'life0: 'async_trait,
    Self: 'async_trait,
fn send_private_raw_transaction<'life0, 'async_trait>(
    &'life0 self,
    bytes: Bytes,
) -> Pin<Box<dyn Future<Output = Result<FixedBytes<32>, ErrorObject<'static>>> + Send + 'async_trait>>where
    'life0: 'async_trait,
    Self: 'async_trait,
The eth_sendPrivateRawTransaction method can be used to send private transactions to
the RPC endpoint. Private transactions are protected from frontrunning and kept
private until included in a block. A request to this endpoint needs to follow
the standard eth_sendRawTransaction
fn cancel_private_transaction<'life0, 'async_trait>(
    &'life0 self,
    request: EthCancelPrivateTransaction,
) -> Pin<Box<dyn Future<Output = Result<bool, ErrorObject<'static>>> + Send + 'async_trait>>where
    'life0: 'async_trait,
    Self: 'async_trait,
fn cancel_private_transaction<'life0, 'async_trait>(
    &'life0 self,
    request: EthCancelPrivateTransaction,
) -> Pin<Box<dyn Future<Output = Result<bool, ErrorObject<'static>>> + Send + 'async_trait>>where
    'life0: 'async_trait,
    Self: 'async_trait,
The eth_cancelPrivateTransaction method stops private transactions from being
submitted for future blocks.
A transaction can only be cancelled if the request is signed by the same key as the
eth_sendPrivateTransaction call submitting the transaction in first place.
Provided Methods§
fn into_rpc(self) -> RpcModule<Self>
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.