Revm project is split in multiple crates, each crate is responsible for different part of the project. The main crates are:
There is one binary crate revme
. It is used for running Ethereum state tests json.
Library crates
- revm:
- primitives:
- interpreter:
- precompile:
- database:
- database/interface:
- bytecode:
- state:
- specification:
- context:
- context/interface:
- handler:
variants
- optimism
- inspector
utility
- statetest-types:
examples
- block_traces:
- cheatcode_inspector:
- contract_deployment:
- database_components:
- uniswap_get_reserves:
- uniswap_v2_usdc_swap:
- erc20_gas:
Dependency of library crates can be seen here
TODO Add dependency graph here