11 个版本 (3 个稳定版)
1.1.0 | 2023年3月23日 |
---|---|
1.0.0 | 2022年2月10日 |
0.4.0 | 2020年10月15日 |
0.3.1 | 2020年4月14日 |
0.1.1 | 2019年9月19日 |
#292 in WebAssembly
每月 3,005 次下载
用于 21 个 crate(18 个直接使用)
12KB
228 代码行
waPC Guest SDK
wapc-guest
库是 waPC WebAssembly 协议客户端实现。 wapc-guest
为 Rust 开发者提供了编译可在 waPC 主机中加载的 WebAssembly 模块的必要组件。每个客户端模块使用 [register_function()
] 注册函数处理器。每个处理器应返回一个 [CallResult](一个 Result<Vec<u8>,Box<dyn Error + Sync + Send>>
),其中包含函数的返回值。
它通常用于由 wapc
CLI 生成的代码。
示例
use wapc_guest as wapc;
#[no_mangle]
pub fn wapc_init() {
wapc::register_function("ping", ping);
}
fn ping(msg: &[u8]) -> wapc::CallResult {
wapc::console_log(&format!(
"IN_WASM: Received request for `ping` operation with payload : {}",
std::str::from_utf8(msg).unwrap()
));
let _res = wapc::host_call("binding", "sample:namespace", "pong", msg)?;
Ok(msg.to_vec())
}
构建
此 crate 旨在用于针对 wasm32-unknown-unknown
或 wasm32-wasi
的项目。
依赖项
~0.4–5.5MB
~15K SLoC