Skip to main content

C++ port of the NEO 3 Blockchain virtual machine

Project description

CoZ logo

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

neo3vm-0.10.1-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (423.3 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

neo3vm-0.10.1-cp39-cp39-macosx_10_9_x86_64.whl (364.3 kB view hashes)

Uploaded CPython 3.9 macOS 10.9+ x86-64

neo3vm-0.10.1-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (422.8 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

neo3vm-0.10.1-cp38-cp38-macosx_10_9_x86_64.whl (363.8 kB view hashes)

Uploaded CPython 3.8 macOS 10.9+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page