* Add a first-class way of accessing caller's exports This commit is a continuation of #1237 and updates the API of `Func` to allow defining host functions which have easy access to a caller's memory in particular. The new APIs look like so: * The `Func::wrap*` family of functions was condensed into one `Func::wrap` function. * The ABI layer of conversions in `WasmTy` were removed * An optional `Caller<'_>` argument can be at the front of all host-defined functions now. The old way the wasi bindings looked up memory has been removed and is now replaced with the `Caller` type. The `Caller` type has a `get_export` method on it which allows looking up a caller's export by name, allowing you to get access to the caller's memory easily, and even during instantiation. * Add a temporary note * Move some docs
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!