-
Notifications
You must be signed in to change notification settings - Fork 223
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Prototype bindings for Firefox Desktop platform (C++) consumers #269
Comments
Let's leave this open, but backburner it for now. Kate and Ana would like to focus on front-end experiments first, and figure out a story for platform later. Since the Nimbus team doesn't have any platform consumers yet, we'd be on the hook for maintaining Nimbus, the C++ bindings, and the actual experiments themselves, which doesn't feel like the right thing. #285 was helpful for figuring out how a pure-C++ API would look, but it's not worth our time to push on that since Nimbus doesn't need it right away. |
Closing old Gecko issues and consolidating them under #991 |
Once we have our ADR for platform consumers (#268), we’ll want to make a prototype. I don’t have many details to add here yet, since we don’t know how we’ll approach this—that’s what the ADR is for! 😁
I think we can reuse the core of #255. The
RustBuffer
serialization machinery is going to be useful here as well, except instead of serializing WebIDL-specific types likemozilla::dom::Nullable
,dom::Record
, anddom::Sequence
, we can serializemozilla::Maybe
,mozilla::HashMap
, andnsTArray
, respectively. We’ll also need to generate some code for exposing functions, records, and objects to C++, too, like we do for Swift, Kotlin, and Python.Good news: because we’re only generating a C++ API, and not any IDLs, I suspect we can land this in Desktop quicker than whatever we do for JS.
┆Issue is synchronized with this Jira Task
┆Issue Number: UNIFFI-18
The text was updated successfully, but these errors were encountered: