about summary refs log tree commit diff
path: root/src/librustdoc/clean/blanket_impl.rs
AgeCommit message (Collapse)AuthorLines
2023-12-14rustdoc: avoid ParamEnv with infer varsAli MJ Al-Nasrawy-2/+1
ParamEnv's with inference variabels are invalid.
2023-08-16Improve code readability by moving fmt args directly into the stringGuillaume Gomez-2/+2
2023-07-22rustdoc: handle cross-crate RPITITs correctlyLeón Orell Valerian Liehr-1/+2
2023-07-14refactor(rustc_middle): Substs -> GenericArgMahdi Dibaiee-9/+9
2023-07-12Re-format let-else per rustfmt updateMark Rousskov-3/+7
2023-06-07rustdoc: re-elide cross-crate default trait object lifetime boundsLeón Orell Valerian Liehr-1/+7
2023-06-05cleanup some skip_binder -> subst_identityKyle Matsuda-3/+3
2023-05-29EarlyBinder::new -> EarlyBinder::bindlcnr-1/+1
2023-05-28Make EarlyBinder's inner value private; and fix all of the resulting errorsKyle Matsuda-6/+6
2023-05-28Replace EarlyBinder(x) with EarlyBinder::new(x)Kyle Matsuda-1/+1
2023-04-19Fix missing blanket impl if the trait is not directly publicGuillaume Gomez-1/+1
2023-03-15always make `define_opaque_types` explicitlcnr-3/+2
2023-02-16remove bound_type_of query; make type_of return EarlyBinder; change type_of ↵Kyle Matsuda-1/+1
in metadata
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
2022-12-12Round 2: make clean_middle_ty take a binderOli Scherer-2/+2
2022-12-12Round 1: add some binders (fails due to losing bound vars and then rebinding ↵Oli Scherer-1/+1
them with `Binder::dummy`)
2022-11-25get rid of to_poly_trait_predicateOli Scherer-6/+1
2022-11-16Convert predicates into Predicate in the Obligation constructorOli Scherer-0/+1
2022-10-30Make rustdoc Item::visibility computed on-demandGuillaume Gomez-1/+1
2022-10-29rustdoc: Split effective visibilities from rustc from similar data built by ↵Vadim Petrochenkov-1/+1
rustdoc for external def-ids
2022-10-26privacy: Rename "accessibility levels" to "effective visibilities"Vadim Petrochenkov-1/+1
And a couple of other naming tweaks Related to https://github.com/rust-lang/rust/issues/48054
2022-10-19rustdoc: Eliminate uses of `EarlyDocLinkResolver::all_traits`Vadim Petrochenkov-94/+102
2022-10-07Change InferCtxtBuilder from enter to buildCameron Steffen-58/+52
2022-09-19remove the `Subst` trait, always use `EarlyBinder`lcnr-1/+0
2022-08-29Replace `rustc_data_structures::thin_vec::ThinVec` with `thin_vec::ThinVec`.Nicholas Nethercote-1/+1
`rustc_data_structures::thin_vec::ThinVec` looks like this: ``` pub struct ThinVec<T>(Option<Box<Vec<T>>>); ``` It's just a zero word if the vector is empty, but requires two allocations if it is non-empty. So it's only usable in cases where the vector is empty most of the time. This commit removes it in favour of `thin_vec::ThinVec`, which is also word-sized, but stores the length and capacity in the same allocation as the elements. It's good in a wider variety of situation, e.g. in enum variants where the vector is usually/always non-empty. The commit also: - Sorts some `Cargo.toml` dependency lists, to make additions easier. - Sorts some `use` item lists, to make additions easier. - Changes `clean_trait_ref_with_bindings` to take a `ThinVec<TypeBinding>` rather than a `&[TypeBinding]`, because this avoid some unnecessary allocations.
2022-08-10remove Clean trait implementation for ty::AssocItemGuillaume Gomez-1/+1
2022-08-02Remove Clean trait implementation for ty::TraitRefGuillaume Gomez-1/+1
2022-07-29Box TypedefItem, ImplItem, AssocTypeItem variants of ItemKindest31-2/+2
This reduces ItemKind size from 224 bytes to 160 bytes.
2022-07-23Remove Clean trait implementation for hir::Ty and middle::TyGuillaume Gomez-2/+2
2022-07-11Remove box syntax for Box<ImplItem> constructionest31-3/+3
ImplItem only has 80 bytes according to compiler internal rustdoc.
2022-05-21Remove `crate` visibility modifier in libs, testsJacob Pratt-3/+3
2022-05-13Add bound_impl_trait_refJack Huey-5/+5
2022-05-13Add bound_type_ofJack Huey-5/+5
2022-05-10Introduce EarlyBinderJack Huey-3/+3
2022-04-16Rename `def_id` into `item_id` when the type is `ItemId` for readabilityGuillaume Gomez-1/+1
2022-01-28Remove now-unnecessary blanket impl HIR checkRune Tynan-22/+5
2022-01-21Remove FIXME and fix inconsistency of local blanket impls by using HIR for themRune Tynan-6/+22
2022-01-07rustdoc: Introduce a resolver cache for sharing data between early doc link ↵Vadim Petrochenkov-100/+101
resolution and later passes
2021-12-28rustc_metadata: Encode list of all crate's traits into metadataVadim Petrochenkov-1/+1
2021-12-12Revert "Auto merge of #91491 - spastorino:revert-91354, r=oli-obk"Deadbeef-2/+3
This reverts commit ff2439b7b9bafcfdff86b7847128014699df8442, reversing changes made to 2a9e0831d6603d87220cedd1b1293e2eb82ef55c.
2021-12-03Remove a Clean impl for a tuple (3)Noah Lev-3/+3
2021-12-03Revert "Auto merge of #91354 - fee1-dead:const_env, r=spastorino"Santiago Pastorino-3/+2
This reverts commit 18bb8c61a975fff6424cda831ace5b0404277145, reversing changes made to d9baa361902b172be716f96619b909f340802dea.
2021-11-29Fix toolsDeadbeef-2/+3
2021-11-07Remove Clean impl for `Vec<T>`Noah Lev-2/+2
2021-11-07rustdoc: Use `ty::ImplPolarity` instead of custom enumNoah Lev-1/+1
2021-11-07Use an enum to record polarity in `clean::Impl`Noah Lev-1/+1
2021-11-07rustdoc: Refactor `Impl.{synthetic,blanket_impl}` into enumNoah Lev-2/+1
This change has two advantages: 1. It makes the possible states clearer, and it makes it impossible to construct invalid states, such as a blanket impl that is also an auto trait impl. 2. It shrinks the size of `Impl` a bit, since now there is only one field, rather than two.
2021-11-06rustdoc: Remove redundant `Impl.span` fieldNoah Lev-1/+0
It can be computed on-demand in `Item::span()`.
2021-10-10Fix spelling: Cannonical -> CanonicalJohn Kugelman-1/+1
2021-10-09Auto merge of #88379 - camelid:cleanup-clean, r=jyn514bors-1/+1
rustdoc: Cleanup various `clean` types Cleanup various `clean` types.