Module evm_adapters::sputnik[][src]

Expand description

Abstraction over Sputnik EVM

Re-exports

pub use sputnik as sputnik_evm;

Modules

Smart caching and deduplication of requests when using a forking provider

Hooks over Sputnik EVM execution which allow runtime logging and modification of chain state from Solidity (cheatcodes).

Simple in-memory cache backend for use with forking providers

Structs

Wrapper around Sputnik Executors which implements the Evm trait.

Memory backend with ability to fork another chain from an HTTP provider, storing all cache values in a BTreeMap in memory.

A cloneable backend type that shares access to the backend data with all its clones.

Statics

Precompiled contracts which should be provided when instantiating the EVM.

Map of Address => Precompile contracts

Traits

Abstraction over the StackExecutor used inside of Sputnik, so that we can replace it with one that implements HEVM-style cheatcodes (or other features).

Functions

Runs the provided precompile against the input data.

Create a new shareable state cache.

Given an ethers provider and a block, it proceeds to construct a MemoryVicinity from the live chain data returned by the provider.

Type Definitions

A basic in memory cache (address -> Account)

A state cache that can be shared across threads