Crate zephyr_vm

source
Expand description

§The Zephyr VM host environment.

Implementation of the Zephyr VM, the core of Mercury’s code execution environment. Even if Zephyr is built to be used in Mercury, it is implementation-agnostic and can be integrated in any kind of implementation.

Modules§

  • Metering is currently not being developed for the ZephyrVM
  • This module defines all database related logic and structures for a Zephyr execution.
  • Structures and implementations for the Zephyr host environment. This module defines all the interactions between the binary code executed within the VM and the implementor.
  • Snapshot utilites required to correctly perform tx simulation calculations.
  • This module defines the pseudo stack implementation that is used in Zephyr for the guest environment to provide instructions to host environment.
  • Utilities for testing Zephyr programs and the ZephyrVM.
  • Structures and implementations for the Zephyr Virtual Machine.
  • Defines the context for the host environment. VM context is used when dealing with reading and writing the guest memory.

Traits§

  • Standard mocked Zephyr object. This trait must be implemented for all components that are encompassed by the Zephyr VM that required mocks for testing.
  • Standard object for Zephyr. This trait must be implemented for all components that are encompassed by the Zephyr VM, specifically the database implementation.