Files
wasmtime/examples
Dan Gohman 3715e19c67 Reactor support. (#1565)
* Reactor support.

This implements the new WASI ABI described here:

https://github.com/WebAssembly/WASI/blob/master/design/application-abi.md

It adds APIs to `Instance` and `Linker` with support for running
WASI programs, and also simplifies the process of instantiating
WASI API modules.

This currently only includes Rust API support.

* Add comments and fix a typo in a comment.

* Fix a rustdoc warning.

* Tidy an unneeded `mut`.

* Factor out instance initialization with `NewInstance`.

This also separates instantiation from initialization in a manner
similar to https://github.com/bytecodealliance/lucet/pull/506.

* Update fuzzing oracles for the API changes.

* Remove `wasi_linker` and clarify that Commands/Reactors aren't connected to WASI.

* Move Command/Reactor semantics into the Linker.

* C API support.

* Fix fuzzer build.

* Update usage syntax from "::" to "=".

* Remove `NewInstance` and `start()`.

* Elaborate on Commands and Reactors and add a spec link.

* Add more comments.

* Fix wat syntax.

* Fix wat.

* Use the `Debug` formatter to format an anyhow::Error.

* Fix wat.
2020-05-26 10:39:40 -05:00
..
2020-04-20 15:55:33 -05:00
2020-05-26 10:39:40 -05:00
2020-04-20 15:55:33 -05:00
2020-04-20 15:55:33 -05:00
2020-04-20 15:55:33 -05:00
2020-04-20 15:55:33 -05:00

Examples of the wasmtime API

This directory contains a number of examples of using the wasmtime API from different languages. Currently examples are all in Rust and C using the wasmtime crate or the wasmtime embedding API.

Each example is available in both C and in Rust. Examples are accompanied with a *.wat file which is the wasm input, or a Rust project in a wasm folder which is the source code for the original wasm file.

Rust examples can be executed with cargo run --example $name, and C examples need to be compiled using your system compiler and appropriate header files.

For more information see the examples themselves!