7 releases (breaking)
| 0.13.0 | Apr 3, 2025 |
|---|---|
| 0.12.0 | Mar 30, 2025 |
| 0.11.0 | Mar 7, 2025 |
| 0.10.0 | Feb 25, 2025 |
| 0.7.0 | Nov 25, 2024 |
#33 in #predicate
82 downloads per month
Used in 11 crates
(via essential-check)
265KB
6.5K
SLoC
The essential VM implementation.
Reading State
The primary entrypoint for this crate is the [Vm type][Vm].
The Vm allows for executing arbitrary [essential ASM][asm] ops.
The primary use-case is executing Programs
that make up a Predicate's program graph
during Solution validation.
Executing Ops
There are two primary methods available for executing operations:
Each have slightly different performance implications, so be sure to read the docs before selecting a method.
Execution Future
The Vm::exec_* functions all return Futures that not only yield on
async operations, but yield based on a user-specified gas limit too. See the
ExecFuture docs for further details on the implementation.
essential-vm
The Essential VM.
Dependencies
~9–13MB
~196K SLoC