Commit Graph

10 Commits

Author SHA1 Message Date
QuietMisdreavus
f3ad288a9a don't assert when a module re-exports a module and one of its symbols (#64479)
rdar://106807038
2023-03-22 09:39:44 -06:00
Max Obermeier
adc1131857 fix apple/swift-docc#422 (#62409)
do not emit extension block symbols for extensions to external types when the extended type is re-exported by the extending module
2022-12-06 09:46:02 -07:00
QuietMisdreavus
d043378412 [SymbolGraphGen] Refactor export-import logic (#61049)
rdar://98808363
2022-09-13 10:08:10 -06:00
QuietMisdreavus
2d874788f6 [SymbolGraphGen] only include the given symbol for qualified imports (#59852)
* only include the given symbol for qualified imports

rdar://96309088

* re-exporting one type should not allow unrelated types to sneak in

* ensure that children of re-exported types are also re-exported
2022-07-08 09:13:08 -06:00
Victoria Mitchell
3bec6223cb re-exported synthesized extensions need to go under the base module
rdar://93928003
2022-05-27 13:10:24 -06:00
Franklin Schrans
9cd44ca5d1 [SymbolGraphGen] Emit symbols from exported modules
When emitting a symbol graph file for a module that import modules via
`@_exported import`, emits those modules' symbols as well.

SR-15753

rdar://89547374
2022-02-28 17:21:25 +00:00
Victoria Mitchell
183db81d12 rename symbol graph files for cross-import overlays
rdar://79474927
2021-06-22 16:50:34 -06:00
Victoria Mitchell
65665ebffa don't crash the symbol graph tool when a module fails to load 2021-02-11 12:04:58 -07:00
Victoria Mitchell
85ad81625c add test for cross-import overlay symbol graphs 2020-12-10 19:13:37 -07:00
Ashley Garland
d6e49a98db [SymbolGraph] Put extending declarations in rootmost module
When extending another module's type in your module, serialize declarations in
the extension into the other module's "extension" symbol graph file, including
relationships. This mechanic should continue up to the rootmost module. For
example:

A.AStruct <- B.BStruct < C.CStruct

Both BStruct and CStruct should go in `@A` symbol graph files because AStruct
owns BStruct and by extension owns CStruct. This is reflected in
documentation curation in some form already.

rdar://60796811
2020-04-07 15:41:59 -07:00