5 个版本
0.1.4 | 2022年7月7日 |
---|---|
0.1.3 | 2022年7月7日 |
0.1.2 | 2022年7月7日 |
0.1.1 | 2022年7月6日 |
0.1.0 | 2022年7月5日 |
#627 in WebAssembly
12MB
2K SLoC
包含 (静态库, 12MB) lib/libWAVM.a, (静态库, 490KB) lib/libWAVM.lib
libwasvm-sys
WAVM (Web Assembly Virtual Machine) C-API 的 FFI 库
WAVM 可以在这里找到 这里
这些绑定是通过 bindgen 生成的,目前没有进一步封装。因此,您需要自己编写一些包装函数来处理不安全的 API 调用。目前,这些绑定仅适用于 Windows 系统上的静态 WAVM C-API。尽可能快地,将会有 Unix 系统的绑定。
请记住,这个 crate 处于非常早期阶段,并且未经充分测试。此外,提供的接口可能会迅速变化。
入门
您只需要在系统上安装一个可工作的 WAVM。通过使用静态库,这个 crate 应该可以正常工作。
示例代码
extern crate libwavm_sys;
fn main() {
//Take a look at https://github.com/WAVM/WAVM/blob/master/Examples/embedder/c/embedder-example.c to see how the C API of WAVM works
unsafe {
let engine = libwavm_sys::wasm_engine_new();
//Do whatever you want with the engine
}
}