feat(anvil
): use ContextPrecompile
instead of Precompile
in Anvil's precompile injection API
#7703
Labels
anvil
): use ContextPrecompile
instead of Precompile
in Anvil's precompile injection API
#7703
Component
Anvil
Describe the feature you would like
We've been using the new precompile injection API created in #7589, and it's working well.
After some use, the need for
ContextPrecompile
arose: we needed a way to get the code of an account, and with the params ofPrecompile
, this can't be done. If I understand correctly the implementation inrevm
,ContextPrecompile
does give access to account state throughInnerEvmContext::code_hash
.Since
ContextPrecompile
is a superset ofPrecompile
, this should be fine. I tried making an initial PoC, but the generics ofContextPrecompile<DB: Database>
get a bit in the way.Current workaround is creating a provider inside the precompile and making a
get_code_at
async call. This works fine, it's just that it's a bit awkward having to make an RPC call, when we are executing in the context of an EVM.Additional context
No response
The text was updated successfully, but these errors were encountered: