EVMC
evmc Namespace Reference

EVMC C++ API - wrappers and bindings for C++. More...

Classes

struct  address
 The big-endian 160-bit hash suitable for keeping an Ethereum address. More...
 
struct  bytes32
 The fixed size array of 32 bytes for storing 256-bit EVM values. More...
 
class  Host
 Abstract class to be used by Host implementations. More...
 
class  HostContext
 Wrapper around EVMC host context / host interface. More...
 
class  HostInterface
 The EVMC Host interface. More...
 
struct  MockedAccount
 Mocked account. More...
 
class  MockedHost
 Mocked EVMC Host implementation. More...
 
class  result
 The EVM code execution result. More...
 
struct  storage_value
 Extended value (by dirty flag) for account storage. More...
 
class  VM
 The VM instance. More...
 

Typedefs

using uint256be = bytes32
 The alias for evmc::bytes32 to represent a big-endian 256-bit integer.
 
using bytes = std::basic_string< uint8_t >
 The string of bytes.
 

Functions

constexpr uint64_t load64be (const uint8_t *bytes) noexcept
 Loads 64 bits / 8 bytes of data from the given bytes array in big-endian order.
 
constexpr uint32_t load32be (const uint8_t *bytes) noexcept
 Loads 32 bits / 4 bytes of data from the given bytes array in big-endian order.
 
constexpr bool operator== (const address &a, const address &b) noexcept
 The "equal to" comparison operator for the evmc::address type.
 
constexpr bool operator!= (const address &a, const address &b) noexcept
 The "not equal to" comparison operator for the evmc::address type.
 
constexpr bool operator< (const address &a, const address &b) noexcept
 The "less than" comparison operator for the evmc::address type.
 
constexpr bool operator> (const address &a, const address &b) noexcept
 The "greater than" comparison operator for the evmc::address type.
 
constexpr bool operator<= (const address &a, const address &b) noexcept
 The "less than or equal to" comparison operator for the evmc::address type.
 
constexpr bool operator>= (const address &a, const address &b) noexcept
 The "greater than or equal to" comparison operator for the evmc::address type.
 
constexpr bool operator== (const bytes32 &a, const bytes32 &b) noexcept
 The "equal to" comparison operator for the evmc::bytes32 type.
 
constexpr bool operator!= (const bytes32 &a, const bytes32 &b) noexcept
 The "not equal to" comparison operator for the evmc::bytes32 type.
 
constexpr bool operator< (const bytes32 &a, const bytes32 &b) noexcept
 The "less than" comparison operator for the evmc::bytes32 type.
 
constexpr bool operator> (const bytes32 &a, const bytes32 &b) noexcept
 The "greater than" comparison operator for the evmc::bytes32 type.
 
constexpr bool operator<= (const bytes32 &a, const bytes32 &b) noexcept
 The "less than or equal to" comparison operator for the evmc::bytes32 type.
 
constexpr bool operator>= (const bytes32 &a, const bytes32 &b) noexcept
 The "greater than or equal to" comparison operator for the evmc::bytes32 type.
 
constexpr bool is_zero (const address &a) noexcept
 Checks if the given address is the zero address.
 
constexpr bool is_zero (const bytes32 &a) noexcept
 Checks if the given bytes32 object has all zero bytes.
 

Variables

constexpr auto make_result = evmc_make_result
 Alias for evmc_make_result().
 

Detailed Description

EVMC C++ API - wrappers and bindings for C++.