watson
a hyper minimalistic no_std
+ alloc
WebAssembly parser/compiler for Rust based off the official specification
- supports all section types
- helper functions for finding things
- support for compilation to wasm
- .wast parsing and assertion
- pass core WebAssembly spec tests
- interpreter
- WASI simulator
- lofi wasm mode (i.e. i32 only)
= "0.9"
watson
Parse a WebAssembly module
use *;
let program = parse?;
for s in program.sections.iter
...
Write an interpreter
this is in progress
async
License
This project is licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in watson
by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.