parity-wasm

Build Status crates.io link

Documentation

Rust WebAssembly format serializing/deserializing

along with (now deprecated) experimental interpreter

```rust

extern crate parity_wasm;

let module = paritywasm::deserializefile("./res/cases/v1/hello.wasm").unwrap(); assert!(module.codesection().issome());

let codesection = module.codesection().unwrap(); // Part of the module with functions code

println!("Function count in wasm file: {}", code_section.bodies().len()); ```

Wabt Test suite

Interpreter and decoder supports full wabt testsuite (https://github.com/WebAssembly/testsuite), To run testsuite:

Decoder can be fuzzed with cargo-fuzz using wasm-opt (https://github.com/WebAssembly/binaryen):

Interpreter deprecated

Interpreter here is in deprecated state, new one (wasmi) can be found in separate crate: https://github.com/pepyakin/wasmi.

License

parity-wasm is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0), at your choice.

See LICENSE-APACHE, and LICENSE-MIT for details.