* Add API to statically assert signature of a `Func` This commit add a family of APIs to `Func` named `getN` where `N` is the number of arguments. Each function will attempt to statically assert the signature of a `Func` and, if matching, returns a corresponding closure which can be used to invoke the underlying function. The purpose of this commit is to add a highly optimized way to enter a wasm module, performing type checks up front and avoiding all the costs of boxing and unboxing arguments within a `Val`. In general this should be much more optimized than the previous `call` API for entering a wasm module, if the signature is statically known. * rustfmt * Remove stray debugging
This is the wasmtime-wasi crate, which implements the
WebAssembly System Interface (WASI) API in Rust.
WASI is greatly inspired by and directly derived from CloudABI. It differs in that it has aspirations to expand to a greater scope, and to better support the needs of WebAssembly engines.