3 مستودعات
Mechanisms for exposing Rust functions to be callable from external runtimes.
Distinct from Rust: Focuses on the act of exporting functions for FFI, not general Rust language resources.
Explore 3 awesome GitHub repositories matching programming languages & runtimes · Function Exports. Refine with filters or upvote what's useful.
wasm-bindgen هو مولد روابط وطبقة تشغيل بيني مصممة لتعيين أنواع البيانات والوظائف عبر الحدود بين WebAssembly وJavaScript. يعمل كواجهة وظائف أجنبية (foreign function interface) تقوم بتوليد الكود المتكرر الضروري لتمكين التواصل ثنائي الاتجاه بين Rust وبيئة تشغيل المتصفح. يولد المشروع كود الغراء والمغلفات التي تؤتمت تحويل الأنواع المعقدة، مما يسمح بتصدير وظائف Rust كوحدات JavaScript واستيراد واجهات برمجة تطبيقات المتصفح إلى Rust. يستخدم وحدات الماكرو الإجرائية لتعريف هذه الواجهات ويولد الروابط بناءً على تعريفات أنواع Rust. يدير النظام الذاكرة من خلال تمرير مؤشر الذاكرة الخطية ويتعامل مع تبادل الموارد باستخدام مقابض الذاكرة التي تديرها JavaScript. يعتمد على اتفاقية استدعاء متوافقة مع C ABI لتمرير الأعداد الصحيحة والأرقام العشرية البدائية بين الوحدة والمضيف.
Exposes Rust functions and types as modules that can be called by the JavaScript runtime.
Neon is a framework for writing high-performance native Node.js modules using the Rust programming language. It serves as a foreign function interface bridge and a toolchain for bootstrapping, compiling, and managing Rust-based extensions. The project provides a cross-language memory manager that handles buffers and object borrowing to ensure safe memory access between Rust and JavaScript. It enables the mapping of data types and function calls across the language boundary, allowing Rust functions to be exported to the script environment and JavaScript functions to be called from Rust. The f
Exports Rust functions to the JavaScript environment so they can be executed as native modules.
Extism is a cross-language WebAssembly plugin framework that lets applications written in any programming language load and execute plugins written in any other language. It provides a universal plugin system where host applications use idiomatic SDKs to load WebAssembly modules, call exported functions, and pass data back and forth, while plugin authors use development kits that handle memory management and host interaction so they can focus on business logic. The framework distinguishes itself through its comprehensive approach to cross-language integration, offering schema-driven binding g
Exposes named functions from WebAssembly modules so the host can invoke them with input and receive return values.