11 个版本
0.2.9 | 2024 年 8 月 2 日 |
---|---|
0.2.8 | 2024 年 8 月 2 日 |
0.2.7 | 2024 年 7 月 30 日 |
0.2.0 | 2024 年 6 月 27 日 |
0.0.0 | 2022 年 12 月 10 日 |
35 在 WebAssembly
每月 930 次下载
15MB
296K SLoC
weval:WebAssembly 部分评估器
weval
部分评估 WebAssembly 快照,将解释器转换为编译器(更多请参阅 Futamura 投影)。
weval
二进制文件可通过此仓库的发行版或通过一个 npm 包 获取。
weval 的用法如下
$ weval weval -w -i program.wasm -o wevaled.wasm
它在 program.wasm
上运行 Wizer 以获取快照,然后在生成的堆图像中处理任何 weval 请求(函数特殊化请求),将特殊化函数附加到其中,并在 wevaled.wasm
中填充函数指针。
更多信息请参阅 include/weval.h
中的 API。
发布清单
-
在
Cargo.toml
和cargo check
中提升版本以确保Cargo.lock
也得到更新。 -
在
npm/weval/index.js
中提升TAG
常量。 -
在
npm/weval/package.json
中提升 npm 包版本。 -
在
npm/weval/
中运行npm i
以确保package-lock.json
文件得到更新。 -
将所有这些作为“版本提升”PR 提交。
-
将其推送到
main
并确保 CI 成功完成。 -
标记为
v0.x.y
并推送该标签。 -
从根目录运行
cargo publish
。 -
从
npm/weval/
运行npm publish
。
依赖关系
~51MB
~1M SLoC