| Age | Commit message (Collapse) | Author | Lines |
|
|
|
Remove more Clean trait implementations
Follow-up of https://github.com/rust-lang/rust/pull/99638.
r? ``@notriddle``
|
|
Remove Clean trait for ast::Attribute and improve Attributes::from_ast
I prefer to keep this commit on its own for this PR because I'm changing a bit more things than expected originally: I split `Attributes::from_ast` into two because there is only one location making use of its second parameter.
Follow-up of https://github.com/rust-lang/rust/pull/99638.
r? `@notriddle`
|
|
Attributes::from_ast function by splitting it in two
|
|
|
|
|
|
|
|
This reduces ItemKind size from 160 bytes to 112 bytes
|
|
This reduces ItemKind size from 224 bytes to 160 bytes.
|
|
The type has 240 bytes according to compiler internal rustdoc.
|
|
|
|
|
|
|
|
|
|
The attribute is also renamed `fake_variadic`.
|
|
Attributes only has 48 bytes according to compiler internal rustdoc.
|
|
|
|
This commit adds a new unstable attribute, `#[doc(tuple_varadic)]`, that
shows a 1-tuple as `(T, ...)` instead of just `(T,)`, and links to a section
in the tuple primitive docs that talks about these.
|
|
Lifetime variance fixes for rustdoc
#97287 migrates rustc to a `Ty` type that is invariant over its lifetime `'tcx`, so I need to fix a bunch of places that assume that `Ty<'a>` and `Ty<'b>` can be unified by shortening both to some common lifetime.
This is doable, since everything is already `'tcx`, so all this PR does is be a bit more explicit that elided lifetimes are actually `'tcx`.
Split out from #97287 so the rustdoc team can review independently.
|
|
rustdoc: Remove fields_stripped fields (and equivalents)
Fixes #90588.
r? `@camelid`
|
|
rustdoc: shrink GenericArgs/PathSegment with boxed slices
This PR also contains a few cleanup bits and pieces, but one of them is a broken intra-doc link, and the other is removing an unused Hash impl. The last commit is the one that matters.
|
|
|
|
Implement proper stability check for const impl Trait, fall back to unstable const when undeclared
Continuation of #93960
`@jhpratt` it looks to me like the test was simply not testing for the failure you were looking for? Your checks actually do the right thing for const traits?
|
|
|
|
|
|
|
|
This avoids an ambiguity (when reading) where `.level.is_stable()` is
not immediately clear whether it is general stability or const
stability.
|
|
|
|
|
|
|
|
|
|
This allows to compute the `BodyOwnerKind` from `DefKind` only, and
removes a direct dependency of some MIR queries onto HIR.
As a side effect, it also simplifies metadata, since we don't need 4
flavours of `EntryKind::*Static` any more.
|
|
|
|
|
|
This commit makes `AdtDef` use `Interned`. Much the commit is tedious
changes to introduce getter functions. The interesting changes are in
`compiler/rustc_middle/src/ty/adt.rs`.
|
|
Support GATs in Rustdoc
Implements:
1. Rendering GATs in trait definitions and impl blocks
2. Rendering GATs in types (e.g. in the return type of a function)
Fixes #92341
This is my first rustdoc PR, so I have absolutely no idea how to produce tests for this. Advice from the rustdoc team would be wonderful!
I tested locally and things looked correct:

|
|
|
|
Rustdoc ty consistency fixes
Changes to make rustdoc cleaning of ty more consistent with hir, and hopefully use it in more places.
r? `@camelid`
|
|
|
|
|
|
Particularly when constructing file paths and fully qualified paths.
This avoids a lot of allocations, speeding things up on almost all
examples.
|
|
Rollup of 8 pull requests
Successful merges:
- #92055 (Add release notes for 1.58)
- #92490 (Move crate drop-down to search results page)
- #92510 (Don't resolve blocks in foreign functions)
- #92573 (expand: Refactor InvocationCollector visitor for better code reuse)
- #92608 (rustdoc: Introduce a resolver cache for sharing data between early doc link resolution and later passes)
- #92657 (Implemented const casts of raw pointers)
- #92671 (Make `Atomic*::from_mut` return `&mut Atomic*`)
- #92673 (Remove useless collapse toggle on "all items" page)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
`module_children(_untracked)`
And `each_child_of_item` to `for_each_module_child`
|
|
resolution and later passes
|
|
|
|
|
|
Use a separate nameless `DefPathData` variant instead
|
|
|
|
|
|
|