#wasi #wasm-edge

wasmedge-wasi-helper

A rust crate to call the wasm-wasi initialization helper function

1 unstable release

0.2.0 Sep 17, 2021

#966 in WebAssembly

MIT/Apache

6KB
56 lines

WASMEDGE wasi helper

Usage

In the Cargo.toml

[dependencies]
wasmedge-wasi-helper = "=0.2.0"

To enable the wasi feature

In your wasi functions

use wasmedge_wasi_helper::wasmedge_wasi_helper::_initialize;
pub fn func1() {
  _initialize();
  // do something which is related to wasi environment variables, arguments, and preopens.
}

To get string data from caller (with WASMEDGE-go support)

use wasmedge_wasi_helper::wasmedge_wasi_helper::get_string_from_caller;
pub fn func1() {
  let s = get_string_from_caller();
  // do something with the string `s`
}

To get byte array data from caller (with WASMEDGE-go support)

use wasmedge_wasi_helper::wasmedge_wasi_helper::get_bytes_from_caller;
pub fn func1() {
  let bs = get_bytes_from_caller();
  // do something with the Vec<u8> `bs`
}

To send string data to caller (with WASMEDGE-go support)

use wasmedge_wasi_helper::wasmedge_wasi_helper::send_string_to_caller;
pub fn func1() {
  let s = "hello";
  send_string_to_caller(s);
}

To get byte array data from caller (with WASMEDGE-go support)

use wasmedge_wasi_helper::wasmedge_wasi_helper::send_bytes_to_caller;
pub fn func1() {
  let bs = vec![0u8, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
  send_bytes_to_caller(bs);
}

No runtime deps