microsoft / microsoft/cppwinrt
Feature request: add an all-in-one module interface file declaring `export winrt;` that `export import`s everything else
Nessuno ha ancora preso questa issue.
- Lingua principale
- C++
- Stelle
- 1.9k
- Fork
- 281
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Summary
It is quite nice to see modules support massively improved for cppwinrt; this was a silent effort that went quite unnoticed by the rest of the community! Thanks to all.
That being said, I am a little concerned at the module being split up into 'namespaces'. The general consensus by build system and compiler developers is that libraries should tend towards mega-modules, as the parsing and instantiation cost is paid once upfront. I must also point out that some of the purported benefits listed here don't quite exist in C++. There is very little (amortised) cost to having a giant module interface file (this is exactly how module std works, for instance).
I therefore propose a small addition that allows users to consume cppwinrt in one go with an interface file that export imports all the separated interfaces.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia da docs/modules-design.md e analizza le interfacce dei moduli separati esistenti per determinarne i nomi e la struttura di esportazione. Aggiungi un’interfaccia all-in-one che li riesporti e verifica che i consumer possano importare winrt tramite questa singola interfaccia.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- cpp
- Ambito
- build-system
- Tipo di issue
- Funzionalità
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 58/100