Expand description
Revm is a Rust EVM implementation.
Re-exports§
pub use db::CacheState;
pub use db::DBBox;
pub use db::State;
pub use db::StateBuilder;
pub use db::StateDBBox;
pub use db::TransitionAccount;
pub use db::TransitionState;
pub use db::InMemoryDB;
pub use handler::Handler;
pub use optimism::L1BlockInfo;
pub use optimism::BASE_FEE_RECIPIENT;
pub use optimism::L1_BLOCK_CONTRACT;
pub use optimism::L1_FEE_RECIPIENT;
Modules§
- Database implementations.
- Inspector implementations.
- revm-interpreter
- Optimism-specific constants, types, and helpers.
- revm-precompile
- revm-primitives
Structs§
- Call CallStackFrame.
- Main Context structure that contains both EvmContext and External context.
- Context with handler configuration.
- EVM instance containing both internal EVM context and external context and the handler that dictates the logic of EVM (or hardfork specification).
- Evm Builder allows building or modifying EVM. Note that some of the methods that changes underlying structures will reset the registered handler to default mainnet.
- EVM context that contains the inner EVM context and precompiles.
- EVM contexts contains data that EVM needs for execution.
- SubRoutine checkpoint that will help us to go back from this
- JournalState is internal EVM state that is used to contain state and track changes to that state. It contains journal of changes that happened to state so that they can be reverted.
Enums§
- Precompile and its handlers.
- Call stack frame.
- Contains either a frame or a result.
- Journal entries that are used to track changes to the state and are used to revert it.
Constants§
- EVM call stack limit.
Traits§
- Context aware stateful precompile trait. It is used to create a arc precompile in
ContextPrecompile
. - Context aware mutable stateful precompile trait. It is used to create a boxed precompile in
ContextPrecompile
. - EVM database interface.
- EVM database commit interface.
- EVM database interface.
- Provides access to an
Inspector
instance. - EVM Interpreter callbacks.
Functions§
- Register Inspector handles that interact with Inspector instance.
- Outer closure that calls Inspector for every instruction.
Type Aliases§
- Arc over context stateful precompile.
- Box over context mutable stateful precompile