wasmer_wasix

Module state

Source
Expand description

WARNING: the API exposed here is unstable and very experimental. Certain things are not ready yet and may be broken in patch releases. If you’re using this and have any specific needs, please let us know here or by filing an issue.

Wasmer always has a virtual root directory located at / at which all pre-opened directories can be found. It’s possible to traverse between preopened directories this way as well (for example preopen-dir1/../preopen-dir2).

A preopened directory is a directory or directory + name combination passed into the generate_import_object function. These are directories that the caller has given the WASI module permission to access.

You can implement VirtualFile for your own types to get custom behavior and extend WASI, see the WASI plugin example.

Re-exports§

Modules§

  • builder 🔒
    Builder system for configuring a WasiState and creating it.
  • env 🔒
  • func_env 🔒
  • handles 🔒
  • linker 🔒
    Linker for loading and linking dynamic modules at runtime. The linker is designed to work with output from clang (version 19 was used at the time of creating this code). Note that dynamic linking of WASM modules is considered unstable in clang/LLVM, so this code may need to be updated for future versions of clang.
  • types 🔒

Structs§

  • Structure that holds the state of BUS calls to this process and from this process. BUS calls are the equivalent of RPC’s with support for all the major serializers
  • Represents a futex which will make threads wait for completion in a more CPU efficient manner
  • Stores the state of the futexes
  • WasiState 🔒
    Top level data type containing all* the state with which WASI can interact.

Constants§