evm v0.1.14 API Reference

Modules

This structure codifies the header of a block in the blockchain

Documentation for EVM

EVM address functions and constants

Implements the built-in functions as defined in Appendix E of the Yellow Paper. These are contract functions that natively exist in Ethereum

A first-class debugger for the EVM. We are able to set breakpoints and walk through code execution

Breakpoints allow us to break execution of a given contract based on a set of conditions

Defines a command that can be run in the debugger

Stores information about the execution environment which led to this EVM being called. This is, for instance, the sender of a payment or message to a contract, or a sub-contract call

Set of functions defined in the Yellow Paper that do not logically fit in other modules

Functions for interacting wth gas and costs of opscodes

Various helper functions with no other home

Simple implementation of an AccountInterface

Simple implementation of a block interface that allows us to specify the given block headers

Functions for helping read a contract’s machine code

Module for tracking the current machine state, which is roughly equivilant to the VM state for an executing contract

Functions to help us handle memory operations in the MachineState of the VM

Code to handle encoding and decoding operations from opcodes

A simple struct to store metadata about all VM instructions

Module for manipulating the program counter which keeps track of where we are in the contract code

Operations to read / write to the EVM’s stack

Functions for handling the sub-state that exists only between operations in an execution for a contract

The core of the EVM which runs operations based on the opcodes of a contract during a transfer or message call

Functions for handling wei and conversions

Simple functions to help with common math functions

Protocols

Interface for interacting with accounts

Interface for interacting with block headers