3 个仓库
Mechanisms for exchanging functions, memory, global variables, and exceptions between JavaScript and WebAssembly modules.
Distinct from JavaScript Interoperability: Distinct from JavaScript Interoperability: specifically targets the Wasm-JS boundary rather than general language interop.
Explore 3 awesome GitHub repositories matching programming languages & runtimes · WebAssembly-JavaScript Interoperability. Refine with filters or upvote what's useful.
V8 is a high-performance JavaScript and WebAssembly engine designed to compile and execute code within host applications. It functions as an embeddable scripting engine and just-in-time compiler, providing a portable library for integrating dynamic script execution into native software environments. The engine incorporates a WebAssembly runtime to execute compiled binary code for a stack-based virtual machine at near-native speeds. It enables native application scripting by allowing a JavaScript execution environment to be embedded directly into a native program to handle dynamic logic. The
Facilitates the execution and interoperability of JavaScript and WebAssembly within the same runtime environment.
wasm-bindgen 是一个绑定生成器和互操作层,旨在映射 WebAssembly 和 JavaScript 边界之间的数据类型和函数。它充当外部函数接口,合成必要的样板代码以实现 Rust 和浏览器运行时之间的双向通信。 该项目生成胶水代码和包装器,自动化复杂类型的转换,允许将 Rust 函数导出为 JavaScript 模块,并将浏览器 API 导入到 Rust 中。它使用过程宏来定义这些接口,并根据 Rust 类型定义合成绑定。 该系统通过线性内存指针传递来管理内存,并使用 JavaScript 管理的内存句柄处理资源交换。它依赖于与 C ABI 兼容的调用约定,在模块和宿主之间传递原始整数和浮点数。
Manages the exchange of complex data types, functions, and memory between WebAssembly and JavaScript.
Documents how to share data and functions between JavaScript and WebAssembly modules.