Guillaume Gomez
364e961417
Replace doc(primitive) with rustc_doc_primitive
2023-03-30 22:56:52 +02:00
Michael Goulet
be9fd75d32
rustdoc + rustdoc-json support for non_lifetime_binders
2023-03-28 16:50:49 +00:00
Michael Howell
49d995a4cf
rustdoc: reduce allocations when generating tooltips
...
An attempt to reduce the perf regression in
https://github.com/rust-lang/rust/pull/108052#issuecomment-1430631861
2023-02-22 21:00:10 -07:00
Guillaume Gomez
1ae875f0a3
Improve code readability
2023-02-18 18:28:17 +01:00
Guillaume Gomez
3adc081254
Fix bad handling of primitive types
2023-02-18 18:28:17 +01:00
Guillaume Gomez
0541a0c8c3
Allow reexports of items with same name but different types to both appear
2023-02-18 18:13:23 +01:00
Guillaume Gomez
86fd5a1b44
Use more let chain
2023-02-15 12:00:03 +01:00
Guillaume Gomez
cc8758480c
Fix small debug typo
2023-02-08 17:31:54 +01:00
Vadim Petrochenkov
68803926e0
rustdoc: Use DefId(Map,Set) instead of FxHash(Map,Set)
...
Not all uses are converted, a few cases iterating through maps/sets and requiring nontrivial changes are kept.
2023-01-22 02:12:05 +04:00
Guillaume Gomez
36c9b49c14
Remove unneeded ItemId::Primitive variant
2023-01-10 18:30:37 +01:00
Matthias Krüger
d214402128
Rollup merge of #106412 - GuillaumeGomez:fix-links-to-primitive-rustdoc-json, r=aDotInTheVoid
...
Fix link generation for local primitive types in rustdoc JSON output
Fixes https://github.com/rust-lang/rust/issues/104064 .
As mentioned in the issue, I'm not super happy about this fix which is more a hack rather than a sound-proof solution. However I couldn't find a better way to fix it.
r? `@aDotInTheVoid`
2023-01-04 23:39:50 +01:00
Guillaume Gomez
c9ebd73416
Remove unused match pattern for primitive types
2023-01-04 21:54:32 +01:00
Guillaume Gomez
59eee74ce8
Fix link generation for local primitive types in rustdoc JSON output
2023-01-03 18:30:05 +01:00
Nixon Enraght-Moony
cca5d219e6
Rustdoc-Json: Report discriminant on all kinds of enum variant.
...
Closes #106299
2023-01-01 19:48:26 +00:00
Nixon Enraght-Moony
b7b252a4f4
clean: Always store enum disriminant.
2023-01-01 18:11:53 +00:00
Nixon Enraght-Moony
881bd865ad
Rustdoc-Json: Don't include foreign traits
2022-12-02 16:58:10 +00:00
Vadim Petrochenkov
b32a4edb20
rustc_ast_lowering: Stop lowering imports into multiple items
...
Lower them into a single item with multiple resolutions instead.
This also allows to remove additional `NodId`s and `DefId`s related to those additional items.
2022-12-01 18:51:20 +03:00
Vadim Petrochenkov
7a5376d23c
Unreserve braced enum variants in value namespace
2022-11-21 22:40:06 +03:00
Martin Nordholts
8b5bfaf662
rustdoc JSON: Use Function everywhere and remove Method
2022-11-16 20:24:03 +01:00
cui fliter
442f848d74
fix some typos in comments
...
Signed-off-by: cui fliter <imcusg@gmail.com>
2022-11-13 15:26:17 +08:00
Michael Howell
a69d43493a
rustdoc: use ThinVec and Box<str> to shrink clean::ItemKind
2022-11-05 09:02:10 -07:00
Matthias Krüger
c6e5150441
Rollup merge of #103935 - GuillaumeGomez:remove-rustdoc-visibility-ty, r=notriddle
...
Remove rustdoc clean::Visibility type
Fixes #90852 .
Follow-up of https://github.com/rust-lang/rust/pull/103690 .
This PR completely removes the rustdoc `clean::Visibility` type to use the `rustc_middle` one instead. I don't think there will be any impact on perf.
r? `@notriddle`
2022-11-04 12:18:02 +01:00
Guillaume Gomez
df326946ed
Remove rustdoc clean::Visibility type
2022-11-03 18:15:24 +01:00
Michael Howell
24714b84ea
rustdoc: remove unneeded Box from ItemKind
2022-11-02 16:17:24 -07:00
Guillaume Gomez
5515e2c2a1
Make rustdoc Item::visibility computed on-demand
2022-10-30 16:50:53 +01:00
León Orell Valerian Liehr
73c239e5eb
rustdoc: render more cross-crate hrtbs properly
2022-10-05 23:14:15 +02:00
Michael Howell
a63a03dc54
rustdoc: remove clean::TraitWithExtraInfo
...
Instead, it gathers the extra info later, when it's actually requested.
2022-09-27 12:27:04 -07:00
Nixon Enraght-Moony
aac7429c17
Rustdoc-Json: List impls for primitives
...
Closes #101695
2022-09-26 18:06:48 +01:00
Nixon Enraght-Moony
e80ccd3d3a
Rustdoc-Json: Don't loose subitems of foreign traits.
2022-09-13 18:34:15 +01:00
Nixon Enraght-Moony
2c17099671
Rustdoc-Json: Correcty handle intra-doc-links to items without HTML page
...
Closes #101531
2022-09-10 00:40:30 +01:00
Nixon Enraght-Moony
1c8de17323
Rustdoc-Json: More accurate struct type.
...
Closes #101489
2022-09-07 09:42:23 +01:00
Nixon Enraght-Moony
065e0b9c9c
Rustdoc-Json: Store Variant Fields as their own item.
...
Closes #100587
Closes #92945
2022-09-05 23:59:33 +01:00
bors
406e03fd02
Auto merge of #101386 - aDotInTheVoid:rdj-discriminant, r=GuillaumeGomez
...
Rustdoc-Json: Add enum discriminant
Does the first part of #101337 , by adding it to `clean`, but doesn't change HTML output, as
1. [No Consensus has appeared on the UI for this](https://rust-lang.zulipchat.com/#narrow/stream/266220-rustdoc/topic/Enum.20discriminant.20values.20in.20HTML.20output )
2. [When inlining across crates, information is lost](https://rust-lang.zulipchat.com/#narrow/stream/266220-rustdoc/topic/.60clean_variant_def.20.60vs.20.60clean_variant_data.60 )
JSON doesn't have either of these limitations.
r? `@GuillaumeGomez`
2022-09-05 04:16:08 +00:00
Nixon Enraght-Moony
efbd8f62ed
rustdoc: Compute enum discriminant on demand
2022-09-04 12:53:25 +01:00
Nixon Enraght-Moony
b76a012be1
Rustdoc-Json: Add enum discriminant
2022-09-03 22:15:26 +01:00
Matthias Krüger
57198b549f
remove redundant clones
2022-09-03 07:58:41 +02:00
Matthias Krüger
ecd908ac5e
Rollup merge of #101106 - aDotInTheVoid:rdj-stripped-mod, r=GuillaumeGomez
...
Rustdoc-Json: Retain Stripped Modules when they are imported, not when they have items
Fixes #101103
Fixes #100973
r? `@GuillaumeGomez`
2022-08-29 21:12:56 +02:00
Nixon Enraght-Moony
8050c1993b
Rustdoc-Json: Retain Stripped Modules when they are imported, not when they have items.
...
Fixes #101103
Fixes #100973
2022-08-29 00:15:10 +01:00
bors
ce36e88256
Auto merge of #100497 - kadiwa4:remove_clone_into_iter, r=cjgillot
...
Avoid cloning a collection only to iterate over it
`@rustbot` label: +C-cleanup
2022-08-28 18:31:08 +00:00
bors
650bff80a6
Auto merge of #100645 - notriddle:notriddle/rustdoc-diet-plan, r=GuillaumeGomez
...
rustdoc: strategic boxing to reduce the size of ItemKind and Type
The `Type` change redesigns `QPath` to box the entire data structure instead of boxing `self_type` and the `trait_`.
This reduces the size of several `ItemKind` variants, leaving `Impl` as the biggest variant. The `ItemKind` change boxes that variant's payload.
2022-08-21 16:40:26 +00:00
Michael Howell
238bcc940f
rustdoc: box ItemKind::Trait
...
This reduces the memory consumption of ItemKind.
2022-08-16 13:09:37 -07:00
Takayuki Maeda
af74e7232f
Rollup merge of #100630 - Enselic:export_extern_crate_as_self, r=GuillaumeGomez
...
rustdoc JSON: Fix ICE with `pub extern crate self as <self_crate_name>`
Closes #100531
r? `@GuillaumeGomez`
`@rustbot` labels +A-rustdoc-json +T-rustdoc
2022-08-17 05:08:05 +09:00
Michael Howell
2aa4aa70dd
rustdoc: factor Type::QPath out into its own box
...
This reduces the size of Type.
2022-08-16 12:48:04 -07:00
Martin Nordholts
dbeb506eae
rustdoc JSON: Fix ICE with pub extern crate self as <self_crate_name>
2022-08-16 15:54:50 +02:00
Guillaume Gomez
c4a5ac2a77
Handle correctly stripped enum variant fields
2022-08-15 16:36:07 +02:00
Michael Goulet
4989f6a724
Rollup merge of #100335 - aDotInTheVoid:rdj-resolved-path, r=GuillaumeGomez
...
Rustdoc-Json: Add `Path` type for traits.
Avoids using `Type` for trait fields, as a trait must always be a path, and not any other kind of type.
``@rustbot`` modify labels: +A-rustdoc-json +T-rustdoc
Closes #100106
2022-08-13 21:06:48 -07:00
Michael Goulet
752b0e0672
make clean::Item::span return option instead of dummy span
2022-08-13 22:03:47 +00:00
KaDiWa
4eebcb9910
avoid cloning and then iterating
2022-08-13 16:16:52 +02:00
Nixon Enraght-Moony
86bdb3ed09
Rustdoc-Json: Add Path type for traits.
...
Closes #100106
2022-08-10 10:21:52 +01:00
Matthias Krüger
0dc39c7bd9
Rollup merge of #99479 - Enselic:import-can-be-without-id, r=camelid
...
rustdoc-json: Remove doc FIXME for Import::id and explain
Also add some test and refactor related code a bit.
``@rustbot`` labels +A-rustdoc-json +T-rustdoc
2022-08-10 00:00:24 +02:00