Crate wasmer_wasi[][src]

Wasmer's WASI implementation

Use generate_import_object to create an ImportObject. This ImportObject can be combined with a module to create an Instance which can execute WASI Wasm functions.

See state for the experimental WASI FS API. Also see the WASI plugin example for an example of how to extend WASI using the WASI FS API.

Modules

types

Structs

Fd
Pipe

For piping stdio. Stores all output / input in a byte-vector.

Stderr

A wrapper type around Stderr that implements WasiFile and Serialize + Deserialize.

Stdin

A wrapper type around Stdin that implements WasiFile and Serialize + Deserialize.

Stdout

A wrapper type around Stdout that implements WasiFile and Serialize + Deserialize.

WasiEnv

The environment provided to the WASI imports.

WasiFs

Warning, modifying these fields directly may cause invariants to break and should be considered unsafe. These fields may be made private in a future release

WasiState

Top level data type containing all* the state with which WASI can interact.

WasiStateBuilder

Convenient builder API for configuring WASI via WasiState.

Enums

WasiError

This is returned in RuntimeError. Use downcast or downcast_ref to retrieve the ExitCode.

WasiFsError

Error type for external users

WasiStateCreationError

Error type returned when bad data is given to WasiStateBuilder.

WasiVersion

The version of WASI. This is determined by the imports namespace string.

Constants

ALL_RIGHTS

all the rights enabled

VIRTUAL_ROOT_FD

the fd value of the virtual root

Traits

WasiFile

This trait relies on your file closing when it goes out of scope via Drop

Functions

generate_import_object_from_env

Create an ImportObject with an existing WasiEnv. WasiEnv needs a WasiState, that can be constructed from a WasiStateBuilder.

get_wasi_version

Detect the version of WASI being used based on the import namespaces.

is_wasi_module

Check if a provided module is compiled for some version of WASI. Use get_wasi_version to find out which version of WASI the module is.