compnerd / compnerd/swift-winrt

Convert `CWinRT` to `@_implementationOnly`

Open
#4 0 comments 0 reactions 0 assignees View on GitHub
enhancement help wanted
Dominant language
Swift
Stars
192
Forks
3
PR merge metrics
No merged PRs in 30d

Description

Ideally, we would not need to have the CWinRT module exposed. Currently, use of SwiftWinRT will require the header exposed. However, we cannot currently mark the module as implementation only as we re-expose many of the ABI types (as typealiases).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing how SwiftWinRT currently exposes the CWinRT module and re-exposes its ABI types as typealiases. Determine the module boundary that prevents @_implementationOnly, then verify that SwiftWinRT no longer requires the CWinRT header to be exposed while preserving the required ABI types.

Written by the indexing model from the issue text.

Assessment

Tech stack
swift
Domain
api
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.