This is a fork of the [
wasmparser
crate] by the [Bytecode Alliance] with the sole purpose to addno_std
support with a focus on embedded environments.This crate will be deprecated as soon as the original
wasmparser
crate itself supportsno_std
.Note: As of version
0.99.0
and above theUrl
type from theurl
crate was replaced with a simpleString
in order to port the entire crate tono_std
. This is because the complexurl
crate itself does not supportno_std
compilation.
A Bytecode Alliance project
The decoder library provides lightweight and fast decoding/parsing of WebAssembly binary files.
The other goal is minimal memory footprint. For this reason, there is no AST or IR of WebAssembly data.
See also its sibling at https://github.com/wasdk/wasmparser
The documentation and examples can be found at the https://docs.rs/wasmparser/
To fuzz test wasmparser.rs, switch to a nightly Rust compiler and install [cargo-fuzz]:
cargo install cargo-fuzz
Then, from the root of the repository, run:
cargo fuzz run parse
If you want to use files as seeds for the fuzzer, add them to fuzz/corpus/parse/
and restart cargo-fuzz.