tristanlabelle / swift-winrt

A Swift bindings generator for WinRT APIs
MIT License
15 stars 1 forks source link

Interface protocols should not conform to IUnknownProtocol #131

Closed tristanlabelle closed 2 months ago

tristanlabelle commented 2 months ago

IUnknownProtocol should mean that we manage a COM-compatible representation. We should be able to conform to WinRT interfaces without that, such that the infrastructure will automatically create a proxy when passing into COM (albeit with a new identity every time).

tristanlabelle commented 2 months ago

Related to #135 . Implementing a COM/WinRT interface without conforming to IUnknownProtocol is problematic because it prevents supporting identity and there would be no COM-correct way of implementing queryInterface.