NEO3VM
A C++ port of the NEO3 Blockchain Virtual Machine with bindings for Python 3.8.
Installation
pip install neo3vm
Or download the wheels from the Github releases page.
Usage
import neo3vm
# PUSH1, PUSH2, ADD (1 + 2 = )
script = neo3vm.Script(b'\x11\x12\x9E')
engine = neo3vm.ExecutionEngine()
engine.load_script(script)
engine.execute()
assert(engine.state == neo3vm.VMState.HALT)
assert(engine.result_stack.peek() == neo3vm.IntegerStackItem(3))
Further documentation on the classes can be queried from the extension module help(neo3vm).
Bindings vs source code
For the time being only the Python bindings are made available publicly. Other bindings may follow.
If you have a use-case for the C++ VM feel free to reach out to python@coz.io to discuss the possibilities.
Release files for neo3vm 0.10.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| neo3vm-0.10.1-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl | CPython 3.9 | CPython 3.9 | Linux glibc 2.12+ x86-64 | Details |
| neo3vm-0.10.1-cp39-cp39-macosx_10_9_x86_64.whl | CPython 3.9 | CPython 3.9 | macOS 10.9+ x86-64 | Details |
| neo3vm-0.10.1-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl | CPython 3.8 | CPython 3.8 | Linux glibc 2.12+ x86-64 | Details |
| neo3vm-0.10.1-cp38-cp38-macosx_10_9_x86_64.whl | CPython 3.8 | CPython 3.8 | macOS 10.9+ x86-64 | Details |
Total release size:1.6 MB
Release files / neo3vm-0.10.1-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
| Download URL | neo3vm-0.10.1-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl |
|---|---|
| Size | 423.3 kB |
| Tags | CPython 3.9 Linux glibc 2.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
d0dd82f0a9f19f35a80f453e4b06b0ccf674ab82a37fa60e6da204acfe433cc5
|
|
BLAKE2b-256 checksum How to use checksums |
a7a08346244aa35a8207a95570952d9a285c6512371bb4e85f16b7f09e0e4adb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.5
|
Release files / neo3vm-0.10.1-cp39-cp39-macosx_10_9_x86_64.whl
| Download URL | neo3vm-0.10.1-cp39-cp39-macosx_10_9_x86_64.whl |
|---|---|
| Size | 364.3 kB |
| Tags | CPython 3.9 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
66c7ad9b15225682a736fc011add6613058c5400047897c1507e776cd5f66f52
|
|
BLAKE2b-256 checksum How to use checksums |
ee17f946a7a42397c5923fff39bd95748f8b5c14e20a010550503f244efa7a50
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.5
|
Release files / neo3vm-0.10.1-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
| Download URL | neo3vm-0.10.1-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl |
|---|---|
| Size | 422.8 kB |
| Tags | CPython 3.8 Linux glibc 2.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
603986ee38aa1988e0e88c0543ce02f8a67952b1b62553411386a94cfb1a5c0d
|
|
BLAKE2b-256 checksum How to use checksums |
937f17701f5dadde045a68ea9c85906873bd945a9d1457d9d95f2d29570b4847
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.5
|
Release files / neo3vm-0.10.1-cp38-cp38-macosx_10_9_x86_64.whl
| Download URL | neo3vm-0.10.1-cp38-cp38-macosx_10_9_x86_64.whl |
|---|---|
| Size | 363.8 kB |
| Tags | CPython 3.8 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
e75b59b879cde3fcf08dd47f369b20970d57125491ab1d5f86653866ab71bde4
|
|
BLAKE2b-256 checksum How to use checksums |
29cbe3e53683a1cd60da83e772ede2f2804fe1f4086d017eea034950fc1c1811
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.5
|