Wasi-emscripten-host
Kotlin Multiplatform implementation of WebAssembly host functions from WASI Preview 1 system interface and from Emscripten environment, that can be used with WebAssembly runtimes: GraalVM, Chicory, or Chasm.
Implemented a limited subset of Emscripten host functions needed to run a single-threaded version of SQLite compiled with Emscripten on a JVM/Kotlin Multiplatform runtime. It may also work in some other cases too. The WASI/Emscripten filesystem is also (partially) covered.
All modules:
Chasm WebAssembly runtime integration.
Chicory JVM WebAssembly runtime integration.
GraalWasm WebAssembly runtime integration.
Common to all modules public classes.
Common implementation of filesystem bindings used in WASI and Emscripten.
Test fixtures for the filesystem
module. Internal helper module not for public use.
Host abstraction used in the Emscripten and WASI Preview 1 implementations.
Test fixtures for the host
module. Internal helper module not for public use.
Classes for preparing the test environment used primarily for tests for native targets. Internal helper module not for public use.
Implementation of the at.released.weh.common.api.Logger to use in tests. Internal helper module not for public use.