gecko-dev/toolkit/components/uniffi-js
Mark Hammond 5ecc219891 Bug 1790931 - vendor a new application-services so golden_gate doesn't get stale. r=bdk
Differential Revision: https://phabricator.services.mozilla.com/D157402
2022-09-19 23:37:51 +00:00
..
OwnedRustBuffer.cpp Bug 1766045 - Initial work for UniFFI JS bindings r=nika 2022-08-03 18:59:35 +00:00
OwnedRustBuffer.h Bug 1766045 - Initial work for UniFFI JS bindings r=nika 2022-08-03 18:59:35 +00:00
README.md Bug 1766045 - Initial work for UniFFI JS bindings r=nika 2022-08-03 18:59:35 +00:00
ScaffoldingCall.h Bug 1766045 - Fixes to make the hybrid builds work r=markh,teshaq 2022-08-03 18:59:38 +00:00
ScaffoldingConverter.h Bug 1766045 - Initial work for UniFFI JS bindings r=nika 2022-08-03 18:59:35 +00:00
UniFFIFixtureScaffolding.cpp Bug 1790931 - vendor a new application-services so golden_gate doesn't get stale. r=bdk 2022-09-19 23:37:51 +00:00
UniFFIGeneratedScaffolding.cpp Bug 1766045 - Fixes to make the hybrid builds work r=markh,teshaq 2022-08-03 18:59:38 +00:00
UniFFIPointer.cpp Bug 1766045 - Initial work for UniFFI JS bindings r=nika 2022-08-03 18:59:35 +00:00
UniFFIPointer.h Bug 1777574, automate CC zone handling, r=mccr8 2022-09-07 11:22:51 +00:00
UniFFIPointerType.h Bug 1766045 - Initial work for UniFFI JS bindings r=nika 2022-08-03 18:59:35 +00:00
UniFFIRust.h Bug 1766045 - Initial work for UniFFI JS bindings r=nika 2022-08-03 18:59:35 +00:00
UniFFIScaffolding.cpp Bug 1766045 - Fixes to make the hybrid builds work r=markh,teshaq 2022-08-03 18:59:38 +00:00
UniFFIScaffolding.h Bug 1766045 - Fixes to make the hybrid builds work r=markh,teshaq 2022-08-03 18:59:38 +00:00
moz.build Bug 1766045 - Adding mach command to generate UniFFI files r=glandium 2022-08-03 18:59:36 +00:00

README.md

uniffi-js

This directory contains C++ helper code for the UniFFI Rust library (https://github.com/mozilla/uniffi-rs/).

  • UniFFIPointer.* and UniFFIPointerType.* implement the UniFFIPointer WebIDL class

  • UniFFI*Scaffolding.cpp implements the UniFFIScaffolding WebIDL class.

    • UniFFIGeneratedScaffolding.cpp contains the generated code for all non-testing UDL files.
    • UniFFIFixtureScaffolding.cpp contains generated code for test fixture UDL files. It's only compiled if --enable-uniffi-fixtures is set.
    • UniFFIScaffolding.cpp is a facade that wraps UniFFIFixtureScaffolding, and UniFFIGeneratedScaffolding if enabled, to implement the interface.
  • ScaffoldingConverter.h, ScaffoldingCall.h contain generic code to make the scaffolding calls. In general, we try to keep the logic of the calls in these files and limit the generated code to routing call IDs to template classes defined here.

  • OwnedRustBuffer.* implements a C++ class to help manager ownership of a RustBuffer.

  • UniFFIRust.h contains definitions for the C functions that UniFFI exports.