#utility #parser

wasm-opcodes

一组程序枚举,用于在实现所有 wasm 指令时提高可读性。

1 个不稳定版本

0.115.1 2023 年 10 月 19 日
0.115.0 2023 年 10 月 19 日

1065#utility

MIT 许可证

18KB
310 行 代码

WASM-opcodes

crates.io docs.rs crates.io

一组程序枚举,用于在实现所有 wasm 指令时提高可读性。


lib.rs:

由于 wasmparser 可以解析的操作数量较多,在 wasmparser 上实现某些内容略显繁琐,通常会导致一个大型的 match 语句,或者多个处理操作子集的 match 语句,并在最后添加一个 unreachable!() 语句。这个 crate 提供了一个折中方案:按提案分割操作层次结构,允许您首先按提案进行穷举匹配,然后按操作进行匹配。

要开始,使用 OperatorByProposal::from(op: wasmparser::Operator) 或等效的 Into 实现。

版本

这个 crate 旨在与 wasmparser 匹配版本,因为这个 crate 中的代码是从 wasmparser 的支持操作生成的。

依赖关系

~2MB
~40K SLoC