fune/toolkit/components/uniffi-js
Ben Dean-Kawamura 6085716f8c Bug 1899407 - UniFFI code cleanups. r=markh
Removed the `Tag` template parameter from `ScaffoldingConverter`.  It
was totally unused.

Updated UniFFITypeError to update it's message as
`addItemDescriptionPart` is called.  1897266 made the messages
more correct in some cases, but we lost the field name that generated
the type error in the process.  This new code should work in all casse.
Updating the message has some runtime cost, but we shouldn't be
generating lots of UniFFITypeErrors in the first place.

Differential Revision: https://phabricator.services.mozilla.com/D211928
2024-05-29 13:30:39 +00:00
..
js Bug 1899407 - UniFFI code cleanups. r=markh 2024-05-29 13:30:39 +00:00
moz.build
OwnedRustBuffer.cpp Bug 1893186 - Couple of small improvements to the UniFFI code, r=markh 2024-04-25 16:11:27 +00:00
OwnedRustBuffer.h
README.md
ScaffoldingCall.h Bug 1893194 - Rename UniFFIScaffoldingType, r=markh 2024-04-25 16:11:28 +00:00
ScaffoldingConverter.h Bug 1899407 - UniFFI code cleanups. r=markh 2024-05-29 13:30:39 +00:00
UniFFICallbacks.cpp
UniFFICallbacks.h
UniFFIFixtureScaffolding.cpp Bug 1899410 (part 2) - generate uniffi js bindings. r=skhamis 2024-05-28 22:59:03 +00:00
UniFFIGeneratedScaffolding.cpp Bug 1899410 (part 2) - generate uniffi js bindings. r=skhamis 2024-05-28 22:59:03 +00:00
UniFFIPointer.cpp Bug 1893186 - Couple of small improvements to the UniFFI code, r=markh 2024-04-25 16:11:27 +00:00
UniFFIPointer.h Bug 1888683 - Upgrade UniFFI to 0.27.1. r=markh,janerik,glandium,supply-chain-reviewers,mach-reviewers,android-reviewers,kaya 2024-04-10 17:23:00 +00:00
UniFFIPointerType.h Bug 1888683 - Upgrade UniFFI to 0.27.1. r=markh,janerik,glandium,supply-chain-reviewers,mach-reviewers,android-reviewers,kaya 2024-04-10 17:23:00 +00:00
UniFFIRust.h Bug 1888683 - Upgrade UniFFI to 0.27.1. r=markh,janerik,glandium,supply-chain-reviewers,mach-reviewers,android-reviewers,kaya 2024-04-10 17:23:00 +00:00
UniFFIScaffolding.cpp Bug 1893194 - Rename UniFFIScaffoldingType, r=markh 2024-04-25 16:11:28 +00:00
UniFFIScaffolding.h Bug 1893194 - Rename UniFFIScaffoldingType, r=markh 2024-04-25 16:11:28 +00:00

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.