[C++] Investigate scalar.h usage and reduce cost of function.h include
- Lingua principale
- C++
- Stelle
- 17.1k
- Fork
- 4.3k
- Merge medio
- 3g 18h
- PR unite (30g)
- 91
Descrizione
### Describe the enhancement requested
Scalars are usually passed around via shared_ptr. So we can often get away with a forward declaration. However, clang build analyzer reports that the scalar.h header is included quite often. We should investigate why this is and see if we can shave a bit of time off our builds by fixing it.
In addition, the function.h include is rather heavy. It is included often because it is needed by the api_xyz.h files in the compute module. However, these files only need the function options. We should see if breaking function options into its own file helps shave down the build time.
### Component(s)
C++
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Usa clang build analyzer per analizzare perché scalar.h viene incluso così spesso, concentrandoti sugli utilizzi di shared_ptr e sulle opportunità di usare dichiarazioni anticipate. Poi esamina function.h e i file api_xyz.h nel modulo compute per determinare se separare le opzioni delle funzioni riduce il costo degli include. Il lavoro è completato quando l’impatto misurato sulla build è documentato e la struttura degli include è stata alleggerita di conseguenza.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- cpp
- Ambito
- build-system, performance
- Tipo di issue
- Refactoring
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 42/100