-
Notifications
You must be signed in to change notification settings - Fork 8
Open
Labels
Description
the bundle trait provides transactions:
Lines 40 to 46 in f8f44b4
pub trait Bundle<P: Platform>: | |
Serialize + DeserializeOwned + Clone + Debug + Send + Sync + 'static | |
{ | |
type PostExecutionError: core::error::Error + Send + Sync + 'static; | |
/// Access to the transactions that are part of this bundle. | |
fn transactions(&self) -> &[Recovered<types::Transaction<P>>]; |
the bundle already contains the 2718 bytes:
Lines 183 to 184 in 005369b
inner: EthSendBundle, | |
recovered: Vec<Recovered<types::Transaction<P>>>, |
however when the bundle is executed this is currently recomputed for opstack because this is required by the evm for l1gas etc.
Line 214 in 005369b
.transact(transaction); |
note that this transact fn takes impl IntoTxEnv
, so this also supports:
WithEncoded<&Recovered<T>>
currently the Recovered<Tx>::IntoTxEnv -> OpTxEnv
computes the 2718 bytes again which can be avoided.
this can be done by adding another helper trait function to bundle for example, or just always operate on WithEncoded<Recovered>
or operate on impl ExecutableTx<Evm>