swift-uwp
This is based on thebrowsercompany/swift-uwp.
Swift Language Bindings for UWP APIs
APIs
These projections contains a subset of APIs as part of the UWP platform. The list of full namespaces is available here for reference: https://learn.microsoft.com/en-us/uwp/api/
SDK Version
Currently, these APIs are targeted towards the 10.0.18362.0 SDK of Windows, as this is the minimum version that the Windows App SDK supports.
Project Configuration
The bindings are generated from WinMD files, found in NuGet packages on Nuget.org. There are two key files which drive this:
- projections.json - this specifies the project/packages and which apis to include in the projection
- generate-bindings.ps1 - this file reads
projections.json
and generates the appropriate bindings.
Known Issues and Limitations
-
The developer experience for consuming WinRT APIs from Swift is a work in progress. Due to current limitations, not all APIs can be generated as this causes export limit issues.
-
The APIs listed in projections.json are required for the other
swift-*
projects to build. Modify a projections.json in any one of those projects could require an update here.