Yesterday, bug 1444991 <https://bugzilla.mozilla.org/show_bug.cgi?id=1444991> landed on inbound, which adds support for using WebIDL defined objects directly inside of XPIDL definition files.
This allows us to avoid using nsISupports to pass WebIDL objects which don't have corresponding XPIDL interfaces through XPIDL defined methods. WebIDL objects must be forward declared, like XPIDL types, in the .idl file which uses them: // C++ 'nsFrameLoader', from FrameLoader.webidl webidl FrameLoader; // C++ 'mozilla::dom::DataTransfer', from DataTransfer.webidl webidl DataTransfer; These types may then be used like XPIDL types in method and attribute declarations. These types can be used from both C++ and JS code. They are exposed into Rust as '*const ::libc::c_void`. - NIka _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform