8个版本
0.1.7 | 2021年5月7日 |
---|---|
0.1.6 | 2021年5月1日 |
0.1.5 | 2021年4月23日 |
0.1.2 | 2021年3月4日 |
#1138 in WebAssembly
27 每月下载量
31KB
639 行
一种易于托管基于WASM插件的低级别工具。
wasm_plugin的目标是在尽可能简单和符合习惯的同时,对如何实际使用插件保持中立。
插件应使用wasm_plugin_guest编写
加载插件就像从磁盘读取.wasm文件一样简单。
let mut plugin = WasmPluginBuilder::from_file("path/to/plugin.wasm")?.finish()?;
调用插件导出的函数有两种形式。要么该函数不接受任何参数并返回一个单 serde 可反序列化的值
let response: ResultType = plugin.call_function("function_name")?;
要么它接受一个可序列化的参数并返回一个单结果
let message = Message::default();
let response: ResultType = plugin.call_function_with_argument("function_name", &message)?;
API稳定性
我目前不保证任何稳定性,预期所有版本都将包含破坏性更改。
依赖关系
~10MB
~200K SLoC