You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
the only thing that's really different is how system transactions are executed.
we assume block execution follows this pattern:
configure environment
apply pre system txs
execute block txs
apply post system txs
Ideally all of those are composable.
if we can make this composable like have something that can execute system txs #10955 then we can make the executor generic over something that only focuses on these things and we can remove a ton of boilerplate.
we could then create one general purpose executor that implements the Executor trait and wraps this new one. so that implementers only need to implement the raw execution functions.
perhaps we can also make some simplifications to the Executor trait itself
The text was updated successfully, but these errors were encountered:
Currently we have a lot of semi duplicated code in both the OP and Eth (Batch)Executor
reth/crates/ethereum/evm/src/execute.rs
Line 352 in da6b1e7
reth/crates/optimism/evm/src/execute.rs
Line 332 in da6b1e7
the only thing that's really different is how system transactions are executed.
we assume block execution follows this pattern:
Ideally all of those are composable.
if we can make this composable like have something that can execute system txs #10955 then we can make the executor generic over something that only focuses on these things and we can remove a ton of boilerplate.
one idea
we could then create one general purpose executor that implements the
Executor
trait and wraps this new one. so that implementers only need to implement the raw execution functions.perhaps we can also make some simplifications to the
Executor
trait itselfThe text was updated successfully, but these errors were encountered: