diff options
author | Alec Theriault <alec.theriault@gmail.com> | 2020-04-15 09:21:09 -0400 |
---|---|---|
committer | Alec Theriault <alec.theriault@gmail.com> | 2020-04-15 07:30:51 -0700 |
commit | 8d83110789def9207463a035fa766b78ebf5fdd9 (patch) | |
tree | 4caec3efdcc4b60995712a9337086571858633ff /haddock-api/src/Haddock/GhcUtils.hs | |
parent | d8aaaba9414b149fa7941d364b6d4a3fbcc1a520 (diff) |
Prune docstrings that are never rendered
When first creating a Haddock interface, trim `ifaceDocMap` and
`ifaceArgMap` to not include docstrings that can never appear in the
final output. Besides checking with GHC which names are exported, we
also need to keep all the docs attached to instance declarations (it is
much tougher to detect when an instance is fully private).
This change means:
* slightly smaller interface files (7% reduction on boot libs)
* slightly less work to do processing docstrings that aren't used
* no warnings in Haddock's output about private docstrings (see #1070)
I've tested manually that this does not affect any of the boot library
generated docs (the only change in output was some small re-ordering in
a handful of instance lists). This should mean no docstrings have been
incorrectly dropped.
Diffstat (limited to 'haddock-api/src/Haddock/GhcUtils.hs')
0 files changed, 0 insertions, 0 deletions