Add an example #[wasmtime] Rust macro (#283)

This commit adds a `wasmtime-rust` crate to the `misc` folder next to
the previously added Python extension. The intention is that this
showcases loading a WebAssembly file natively in Rust and how with an
attribute macro it can feel lightweight in terms of boilerplate.

The macro itself is pretty non-featureful today beyond the bare bones to
get anything working, but there's all sorts of possibilities like
JIT-compiled entry stubs we could eventually do with all the type
information!
This commit is contained in:
Alex Crichton
2019-08-19 12:45:42 -05:00
committed by Till Schneidereit
parent 54dd085e27
commit d1b1500d19
9 changed files with 309 additions and 1 deletions

View File

@@ -0,0 +1,17 @@
[package]
name = "wasmtime-rust"
version = "0.1.0"
authors = ["Alex Crichton <alex@alexcrichton.com>"]
edition = "2018"
[lib]
test = false
doctest = false
[dependencies]
cranelift-codegen = "0.38.0"
cranelift-native = "0.38.0"
failure = "0.1.5"
wasmtime-interface-types = { path = "../../wasmtime-interface-types" }
wasmtime-jit = { path = "../../wasmtime-jit" }
wasmtime-rust-macro = { path = "./macro" }