about summary refs log tree commit diff
path: root/src/librustdoc/passes
AgeCommit message (Collapse)AuthorLines
2023-02-14Add `of_trait` to DefKind::Impl.Camille GILLOT-2/+2
2023-02-14Auto merge of #107765 - petrochenkov:nomoclone, r=oli-obkbors-84/+12
rustc/rustdoc: Perform name resolver cleanups enabled by #94857 Unblocks https://github.com/rust-lang/rust/pull/105462. r? `@oli-obk`
2023-02-13Reduce direct `mk_ty` usage.Nicholas Nethercote-20/+20
We use more specific `mk_*` functions in most places, might as well use them as much as possible.
2023-02-13rustdoc: Eliminate remaining uses of resolverVadim Petrochenkov-84/+12
2023-02-12Auto merge of #107933 - petrochenkov:rmdlc, r=GuillaumeGomezbors-13/+2
rustdoc: Remove cache for preprocessed markdown links It's quite possible that it's no longer useful after https://github.com/rust-lang/rust/pull/94857 is merged.
2023-02-11rustdoc: Remove cache for preprocessed markdown linksVadim Petrochenkov-13/+2
2023-02-11Rollup merge of #107912 - clubby789:doc-bad-enum-field, r=camelid,GuillaumeGomezMatthias Krüger-4/+25
rustdoc: Don't resolve link to field on different variant Fix #107903 This also gives a more specific diagnostic when the enum has any fields
2023-02-11rustdoc: Don't resolve link to field on different variantclubby789-4/+25
2023-02-10Resolve documentation links in rustc and store the results in metadataVadim Petrochenkov-540/+40
This commit implements MCP https://github.com/rust-lang/compiler-team/issues/584 It also removes code that is no longer used, and that includes code cloning resolver, so issue #83761 is fixed.
2023-02-02Auto merge of #107000 - GuillaumeGomez:fix-items-in-doc-hidden-block, ↵bors-26/+83
r=notriddle,petrochenkov Fix handling of items inside a `doc(hidden)` block Fixes #106373. cc `@aDotInTheVoid` r? `@notriddle`
2023-01-27Special-case handling of impl blocksGuillaume Gomez-44/+61
2023-01-27Introduce GeneratorWitnessMIR.Camille GILLOT-0/+1
2023-01-27Fix handling of items inside a `doc(hidden)` blockGuillaume Gomez-14/+54
2023-01-27Auto merge of #107054 - petrochenkov:effvisdoc3, r=GuillaumeGomezbors-8/+32
rustdoc: Collect "rustdoc-reachable" items during early doc link resolution This pass only needs to know about visibilities, attributes and reexports, so it can be run early, similarly to `compute_effective_visibilities` in rustc. Results of this pass can be used to prune the list of extern impls early thus improving performance of https://github.com/rust-lang/rust/pull/94857.
2023-01-26rustdoc: Stop using `HirId`sVadim Petrochenkov-35/+25
Use `LocalDefId`s instead
2023-01-25rustdoc: Don't put non rustdoc-reachable impls into `all_trait_impls`Vadim Petrochenkov-3/+1
2023-01-25rustdoc: Use rustdoc-reachable set to prune extern implsVadim Petrochenkov-5/+9
2023-01-25rustdoc: Collect rustdoc-reachable items during early doc link resolutionVadim Petrochenkov-0/+22
2023-01-22rustdoc: Use `DefId(Map,Set)` instead of `FxHash(Map,Set)`Vadim Petrochenkov-6/+6
Not all uses are converted, a few cases iterating through maps/sets and requiring nontrivial changes are kept.
2023-01-14Auto merge of #106696 - kylematsuda:early-binder, r=lcnrbors-1/+1
Switch to `EarlyBinder` for `const_param_default` and `impl_trait_ref` queries Part of the work to close #105779 and implement https://github.com/rust-lang/types-team/issues/78. Several queries `X` have a `bound_X` variant that wraps the output in `EarlyBinder`. This PR adds `EarlyBinder` to the return type of `const_param_default` and `impl_trait_ref`, and removes their `bound_X` variants. r? `@lcnr`
2023-01-14fix various subst_identity vs skip_binderKyle Matsuda-1/+1
2023-01-14change impl_trait_ref query to return EarlyBinder; remove ↵Kyle Matsuda-1/+1
bound_impl_trait_ref query; add EarlyBinder to impl_trait_ref in metadata
2023-01-14change usages of impl_trait_ref to bound_impl_trait_refKyle Matsuda-2/+2
2023-01-14Rollup merge of #106766 - GuillaumeGomez:rm-stripper-dead-code, r=notriddleYuki Okushi-11/+1
Remove dead code in rustdoc stripper No changes when this code is removed. cc `@aDotInTheVoid` r? `@notriddle`
2023-01-13Rollup merge of #106813 - oli-obk:sess_cleanup, r=GuillaumeGomez,petrochenkovMatthias Krüger-11/+11
Remove redundant session field There was already a session available in the resolver, so we access that session.
2023-01-13Remove redundant session fieldOli Scherer-11/+11
2023-01-12Fix not displayed re-export of `doc(hidden)` itemGuillaume Gomez-3/+18
2023-01-12Remove dead code in rustdoc stripperGuillaume Gomez-11/+1
2023-01-11Rollup merge of #106427 - mejrs:translation_errors, r=davidtwconils-1/+3
Improve fluent error messages These have been really frustrating me while migrating diagnostics.
2023-01-08Make translate_message return result and add testsmejrs-1/+3
2023-01-06rustdoc: Strip imports of items which are `#[doc(hidden)]`Nixon Enraght-Moony-0/+1
Closes #106379
2023-01-04rename find_parent_node to opt_parent_idMichael Goulet-1/+1
2023-01-01clean: Always store enum disriminant.Nixon Enraght-Moony-1/+4
2022-12-13Combine projection and opaque into aliasMichael Goulet-2/+1
2022-12-08Prevent to try to retrieve auto and blanket implementations if there were ↵Guillaume Gomez-0/+6
errors before this pass
2022-12-04Auto merge of #104757 - camelid:consolidate-lints, ↵bors-499/+439
r=GuillaumeGomez,jyn514,Manishearth Consolidate rustdoc's lint passes into a single pass This should improve performance and simplify the code. r? `@GuillaumeGomez`
2022-11-27Remove Crate::primitives fieldGuillaume Gomez-2/+4
2022-11-22Consolidate rustdoc's lint passes into a single passNoah Lev-499/+439
This should improve performance and simplify the code.
2022-11-17Auto merge of #104170 - cjgillot:hir-def-id, r=fee1-deadbors-2/+2
Record `LocalDefId` in HIR nodes instead of a side table This is part of an attempt to remove the `HirId -> LocalDefId` table from HIR. This attempt is a prerequisite to creation of `LocalDefId` after HIR lowering (https://github.com/rust-lang/rust/pull/96840), by controlling how `def_id` information is accessed. This first part adds the information to HIR nodes themselves instead of a table. The second part is https://github.com/rust-lang/rust/pull/103902 The third part will be to make `hir::Visitor::visit_fn` take a `LocalDefId` as last parameter. The fourth part will be to completely remove the side table.
2022-11-13rustdoc: Resolve doc links in external traits having local implsVadim Petrochenkov-1/+8
2022-11-13Store a LocalDefId in hir::Variant & hir::Field.Camille GILLOT-2/+2
2022-11-07return `None` when def_kind is `DefKind::Use`Takayuki Maeda-1/+2
2022-11-03Remove rustdoc clean::Visibility typeGuillaume Gomez-4/+4
2022-10-30Make rustdoc Item::visibility computed on-demandGuillaume Gomez-12/+15
2022-10-30Auto merge of #103010 - petrochenkov:effvisdoc, r=GuillaumeGomezbors-14/+27
rustdoc: Simplify modifications of effective visibility table It is now obvious that rustdoc only calls `set_access_level` with foreign def ids and `AccessLevel::Public`. The second commit makes one more step and separates effective visibilities coming from rustc from similar data collected by rustdoc for extern `DefId`s. The original table is no longer modified and now only contains local def ids as populated by rustc. cc https://github.com/rust-lang/rust/pull/102026 `@Bryanskiy`
2022-10-30Rollup merge of #103588 - weihanglo:rustdoc/url-redirect, r=notriddleDylan DPC-1/+1
rustdoc: add missing URL redirect https://github.com/rust-lang/rust/pull/94753 missed some redirect settings, and one of the missing URL shows up in an error message. This PR adds those redirects.
2022-10-29rustdoc: Split effective visibilities from rustc from similar data built by ↵Vadim Petrochenkov-14/+27
rustdoc for external def-ids
2022-10-29Add regression test for missing item from private mod in JSON outputGuillaume Gomez-1/+1
2022-10-29Add missing impl blocks for item reexported from private mod in JSON outputGuillaume Gomez-5/+25
2022-10-29Auto merge of #102233 - petrochenkov:effvis, r=jackh726bors-12/+12
privacy: Rename "accessibility levels" to "effective visibilities" And a couple of other naming and comment tweaks. Related to https://github.com/rust-lang/rust/issues/48054 For `enum Level` I initially used naming `enum EffectiveVisibilityLevel`, but it was too long and inconvenient because it's used pretty often. So I shortened it to just `Level`, if it needs to be used from some context where this name would be ambiguous, then it can be imported with renaming like `use rustc_middle::privacy::Level as EffVisLevel` or something.