1个不稳定版本

0.2.1 2020年9月1日

#911WebAssembly

每月30次下载
gfaas 中使用

GPL-3.0 许可证

27KB
497 代码行

ya-runtime-wasi

Crates.io Docs.rs

此包允许您在您的应用程序中嵌入Yagna WASI运行时。

快速入门

使用方法非常简单。在您的 Cargo.toml 中,将 ya-runtime-wasi 作为依赖项添加

# Cargo.toml
[dependencies]
ya-runtime-wasi = "0.2"

现在您可以在您的应用程序中这样嵌入运行时

use std::path::Path;
use ya_runtime_wasi::*;

// In this example, we assume that `package.zip` contains a WASI binary
// called `hello.wasm`, and maps input/output to `/workdir`
let workspace = Path::new("workspace");
let module_name = "hello.wasm";
let package = Path::new("package.zip");

// Deploy package
deploy(&workspace, &package).unwrap();

// Start the runtime
start(&workspace).unwrap();

// Execute the binary
run(
    &workspace,
    &module_name,
    vec![
        "/workdir/input".to_string(),
        "/workdir/output".to_string(),
    ],
).unwrap();

示例

gfaas包中可以找到一个使用ya-runtime-wasi嵌入API的好例子。

依赖项

~31–42MB
~703K SLoC