Fabcoin Core  0.16.2
P2P Digital Currency
Public Member Functions | List of all members
dev::eth::SmartVM Class Reference

Smart VM proxy. More...

#include <SmartVM.h>

Inheritance diagram for dev::eth::SmartVM:
[legend]
Collaboration diagram for dev::eth::SmartVM:
[legend]

Public Member Functions

owning_bytes_ref exec (u256 &io_gas, ExtVMFace &_ext, OnOpFunc const &_onOp) overridefinal
 VM implementation. More...
 
- Public Member Functions inherited from dev::eth::VMFace
 VMFace ()=default
 
virtual ~VMFace ()=default
 
 VMFace (VMFace const &)=delete
 
VMFaceoperator= (VMFace const &)=delete
 

Detailed Description

Smart VM proxy.

This class is a strategy pattern implementation for VM. For every EVM code execution request it tries to select the best VM implementation (Interpreter or JIT) by analyzing available information like: code size, hit count, JIT status, etc.

Definition at line 31 of file SmartVM.h.

Member Function Documentation

owning_bytes_ref dev::eth::SmartVM::exec ( u256 io_gas,
ExtVMFace _ext,
OnOpFunc const &  _onOp 
)
finaloverridevirtual

VM implementation.

Implements dev::eth::VMFace.

Definition at line 90 of file SmartVM.cpp.

Here is the call graph for this function:


The documentation for this class was generated from the following files: