WAKit Icon

WasmKit

一个用 Swift 编写的 WebAssembly 运行时环境。最初由 @akkyie 开发和维护。

实现了 WebAssembly 2.0 二进制解析和执行核心规范的所有内容,但不包括 SIMD 指令。规范的验证和文本格式部分尚未实现。

它也对 WASI 提供了初步的支持,目前只实现了少数 WASI 导入,目标是最终完全支持 wasi_snapshot_preview1。详情请参阅 WASI 模块。

用法

命令行工具

$ # Usage: wasmkit-cli run <path> <functionName> [<arguments>] ...
$ swift run wasmkit-cli run Examples/wasm/fib.wasm fib i32:10
[I32(89)]

作为库使用

Swift Package Manager

将此仓库的 URL 添加到您的 Package.swift 清单中。然后将 WasmKit 库产品作为依赖项添加到您想要使用的目标。

测试

要运行核心规范测试套件,请运行以下命令

$ make spectest   # Prepare core spec tests and check their assertions with WasmKit