# Packages

Package runtime provides a basic execution model for executing CVM code.

# Functions

ActivePrecompiles returns the precompiles enabled with the current configuration.
EnableEIP enables the given EIP on the config.
NewContract returns a new contract environment for the execution of CVM.
NewCVM returns a new CVM.
NewCVMInterpreter returns a new instance of the Interpreter.
NewMemory returns a new memory memory model.
No description provided by the author
No description provided by the author
RunPrecompiledContract runs and evaluates the output of a precompiled contract.
StringToOp finds the opcode whose name is stored in `str`.

# Constants

No description provided by the author
No description provided by the author
0x30 range - closure state.
0x10 range - comparison ops.
0x30 range - closure state.
0x40 range - block operations.
0x10 range - comparison ops.
0xf0 range - closures.
0xf0 range - closures.
0x30 range - closure state.
0x30 range - closure state.
0x30 range - closure state.
0x30 range - closure state.
0x30 range - closure state.
0x40 range - block operations.
0x30 range - closure state.
0x30 range - closure state.
0x40 range - block operations.
0xf0 range - closures.
0xf0 range - closures.
0xf0 range - closures.
0x40 range - block operations.
No description provided by the author
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x80 range - dups.
0x10 range - comparison ops.
No description provided by the author
0x30 range - closure state.
0x30 range - closure state.
0x30 range - closure state.
0x50 range - 'storage' and execution.
Gas costs.
Gas costs.
Gas costs.
0x40 range - block operations.
Gas costs.
0x30 range - closure state.
Gas costs.
Gas costs.
0x10 range - comparison ops.
No description provided by the author
No description provided by the author
0xf0 range - closures.
0x10 range - comparison ops.
0x50 range - 'storage' and execution.
0x50 range - 'storage' and execution.
0x50 range - 'storage' and execution.
0x20 range - crypto.
0xa0 range - logging ops.
0xa0 range - logging ops.
0xa0 range - logging ops.
0xa0 range - logging ops.
0xa0 range - logging ops.
0x10 range - comparison ops.
0x50 range - 'storage' and execution.
0x50 range - 'storage' and execution.
No description provided by the author
0x50 range - 'storage' and execution.
0x50 range - 'storage' and execution.
0x50 range - 'storage' and execution.
No description provided by the author
No description provided by the author
0x10 range - comparison ops.
0x40 range - block operations.
0x10 range - comparison ops.
0x30 range - closure state.
0x50 range - 'storage' and execution.
0x50 range - 'storage' and execution.
Same as DIFFICULTY.
0x50 range - 'storage' and execution.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
0x60 range.
Same as DIFFICULTY.
0xf0 range - closures.
0x30 range - closure state.
0x30 range - closure state.
0xf0 range - closures.
0x10 range - comparison ops.
No description provided by the author
0x40 range - block operations.
0xf0 range - closures.
0x10 range - comparison ops.
0x10 range - comparison ops.
0x10 range - comparison ops.
No description provided by the author
0x50 range - 'storage' and execution.
0x10 range - comparison ops.
No description provided by the author
0x50 range - 'storage' and execution.
0xf0 range - closures.
No description provided by the author
No description provided by the author
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x90 range - swaps.
0x40 range - block operations.
0x50 range - 'storage' and execution.
0x50 range - 'storage' and execution.
0x10 range - comparison ops.

# Variables

List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
ErrInvalidSubroutineEntry means that a BEGINSUB was reached via iteration, as opposed to from a JUMPSUB instruction.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
No description provided by the author
List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
List execution errors.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
PrecompiledContractsBerlin contains the default set of pre-compiled Cortex contracts used in the Berlin release.
No description provided by the author
PrecompiledContractsByzantium contains the default set of pre-compiled CortexTheseus contracts used in the Byzantium release.
PrecompiledContractsCancun contains the default set of pre-compiled Ethereum contracts used in the Cancun release.
PrecompiledContractsHomestead contains the default set of pre-compiled CortexTheseus contracts used in the Frontier and Homestead releases.
PrecompiledContractsIstanbul contains the default set of pre-compiled CortexTheseus contracts used in the Istanbul release.
No description provided by the author
PrecompiledContractsPrague contains the set of pre-compiled Ethereum contracts used in the Prague release.

# Structs

Context provides the CVM with auxiliary information.
No description provided by the author
Config are the configuration options for the Interpreter.
only for the sake of debug info of NewPublicBlockChainAPI.
Contract represents an cortex contract in the state database.
CVM is the Cortex Virtual Machine base object and provides the necessary tools to run a contract on the given state with the provided context.
CVMInterpreter represents an CVM interpreter.
ErrInvalidOpCode wraps an evm error when an invalid opcode is encountered.
ErrStackOverflow wraps an evm error when the items on the stack exceeds the maximum allowance.
ErrStackUnderflow wraps an evm error when the items on the stack less than the minimal requirement.
Memory implements a simple memory model for the cortex virtual machine.
No description provided by the author
No description provided by the author
ScopeContext contains the things that are per-call, such as stack and memory, but not transients like pc and gas.
Stack is an object for basic stack operations.
TxContext provides the CVM with information about a transaction.

# Interfaces

CallContext provides a basic interface for the CVM calling conventions.
ContractRef is a reference to the contract's backing object.
CVMLogger is used to collect execution traces from an CVM transaction execution.
PrecompiledContract is the basic interface for native Go contracts.
StateDB is an CVM database for full state querying.

# Type aliases

AccountRef implements ContractRef.
No description provided by the author
No description provided by the author
JumpTable contains the CVM opcodes supported at a given fork.
OpCode is an CVM opcode.
PrecompiledContracts contains the precompiled contracts supported at the given fork.
No description provided by the author