pub struct EthSendBundle {
pub txs: Vec<Bytes>,
pub block_number: u64,
pub min_timestamp: Option<u64>,
pub max_timestamp: Option<u64>,
pub reverting_tx_hashes: Vec<B256>,
pub replacement_uuid: Option<String>,
}
Expand description
Bundle of transactions for eth_sendBundle
Note: this is for eth_sendBundle
and not mev_sendBundle
https://docs.flashbots.net/flashbots-auction/searchers/advanced/rpc-endpoint#eth_sendbundle
Fields§
§txs: Vec<Bytes>
A list of hex-encoded signed transactions
block_number: u64
hex-encoded block number for which this bundle is valid
min_timestamp: Option<u64>
unix timestamp when this bundle becomes active
max_timestamp: Option<u64>
unix timestamp how long this bundle stays valid
reverting_tx_hashes: Vec<B256>
list of hashes of possibly reverting txs
replacement_uuid: Option<String>
UUID that can be used to cancel/replace this bundle
Implementations§
Source§impl EthSendBundle
impl EthSendBundle
Sourcepub fn bundle_hash(&self) -> B256
pub fn bundle_hash(&self) -> B256
Returns the bundle hash.
This is the keccak256 hash of the transaction hashes of the transactions in the bundle.
§Note
Logic for calculating the bundle hash is as follows:
- Calculate the hash of each transaction in the bundle
- Concatenate the hashes, in bundle order
- Calculate the keccak256 hash of the concatenated hashes
See the flashbots impl.
This function will not verify transaction correctness. If the bundle
txs
contains invalid transactions, the bundle hash will still be
calculated.
Trait Implementations§
Source§impl Clone for EthSendBundle
impl Clone for EthSendBundle
Source§fn clone(&self) -> EthSendBundle
fn clone(&self) -> EthSendBundle
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for EthSendBundle
impl Debug for EthSendBundle
Source§impl Default for EthSendBundle
impl Default for EthSendBundle
Source§fn default() -> EthSendBundle
fn default() -> EthSendBundle
Source§impl<'de> Deserialize<'de> for EthSendBundle
impl<'de> Deserialize<'de> for EthSendBundle
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for EthSendBundle
impl PartialEq for EthSendBundle
Source§impl Serialize for EthSendBundle
impl Serialize for EthSendBundle
impl Eq for EthSendBundle
impl StructuralPartialEq for EthSendBundle
Auto Trait Implementations§
impl Freeze for EthSendBundle
impl RefUnwindSafe for EthSendBundle
impl Send for EthSendBundle
impl Sync for EthSendBundle
impl Unpin for EthSendBundle
impl UnwindSafe for EthSendBundle
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)