fune/toolkit/components/uniffi-js
2023-08-15 16:41:16 +00:00
..
js
moz.build
OwnedRustBuffer.cpp Bug 1841314 - Part 2: Prefer JS::NewExternalArrayBuffer with UniquePtr. r=sfink 2023-07-06 20:50:59 +00:00
OwnedRustBuffer.h
README.md
ScaffoldingCall.h
ScaffoldingConverter.h
UniFFICallbacks.cpp Bug 1840044 - Update to Glean 53.1.0, UniFFI 0.24.1 and latest application-services. r=TravisLong,nika,markh,supply-chain-reviewers 2023-07-26 15:34:27 +00:00
UniFFICallbacks.h Bug 1840044 - Update to Glean 53.1.0, UniFFI 0.24.1 and latest application-services. r=TravisLong,nika,markh,supply-chain-reviewers 2023-07-26 15:34:27 +00:00
UniFFIFixtureScaffolding.cpp Bug 1848041 - Fix variable name mismatch in UniFFIFixtureScaffolding.cpp. r=markh 2023-08-15 16:41:16 +00:00
UniFFIGeneratedScaffolding.cpp Bug 1846347 - update application-services to fix tab syncing. r=skhamis 2023-08-01 15:45:56 +00:00
UniFFIPointer.cpp
UniFFIPointer.h
UniFFIPointerType.h
UniFFIRust.h Bug 1840044 - Update to Glean 53.1.0, UniFFI 0.24.1 and latest application-services. r=TravisLong,nika,markh,supply-chain-reviewers 2023-07-26 15:34:27 +00:00
UniFFIScaffolding.cpp
UniFFIScaffolding.h

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.