1
Fork 0
Commit graph

555 commits

Author SHA1 Message Date
DaniPopes
b410f3f7ae
Fix typos in librustdoc 2023-04-10 21:02:29 +02:00
bors
d1be642ce3 Auto merge of #109925 - notriddle:notriddle/item-union, r=GuillaumeGomez
rustdoc: migrate item_union to an Askama template
2023-04-08 21:59:49 +00:00
Michael Howell
c325fda0bf rustdoc: migrate item_union to an Askama template 2023-04-05 07:49:30 -07:00
León Orell Valerian Liehr
6567bc9a47
rustdoc: escape GAT args in more cases 2023-04-04 02:09:23 +02:00
Michael Goulet
be9fd75d32 rustdoc + rustdoc-json support for non_lifetime_binders 2023-03-28 16:50:49 +00:00
Matthias Krüger
fdb1eefc73
Rollup merge of #109269 - klensy:rdoc-s, r=notriddle
rustdoc: cleanup some intermediate allocs

First commit self contained, second one use `display_fn` for `extra_info_tags`
2023-03-20 07:10:30 +01:00
Michael Howell
8628e27da3 rustdoc: reduce allocations in visibility_to_src_with_space 2023-03-17 15:43:01 -07:00
klensy
1f01433607 clean up few alloc 2023-03-16 20:38:33 +03:00
Michael Howell
683c12cb91 rustdoc: remove std:: from primitive intra-doc link tooltips 2023-03-15 11:34:37 -07:00
Jacob Hoffman-Andrews
121ae1d29c rustdoc: reduce allocs in FnDecl::inner_full_print
Instead of maintaining parallel buffers for both HTML and non-HTML output,
follow the idiom from the rest of format.rs that f.alternate() == true means
textual output. Also, add an argument to control line wrapping explicitly.

This allows the caller to render once with textual output and no line wrapping,
to decide whether line wrapping should be applied in the final HTML output.

Also, remove some format! and " ".repeat calls, and remove a dependency on
calling `String::replace` to switch from newlines to spaces.

This coincidentally fixes some minor bugs where the old code was undercounting
the number of characters for a declaration in text mode.
2023-03-11 15:36:50 -08:00
Vadim Petrochenkov
c83553da31 rustc_middle: Remove trait DefIdTree
This trait was a way to generalize over both `TyCtxt` and `Resolver`, but now `Resolver` has access to `TyCtxt`, so this trait is no longer necessary.
2023-03-02 23:46:44 +04: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
Michael Howell
3d056c3125 diagnostics: if AssocFn has self argument, describe as method
Discussed in
329265515

This commit also changes the tooltips on rustdoc intra-doc links
targeting methods.
2023-02-22 08:40:33 -07:00
Matthias Krüger
09a2267e1d
Rollup merge of #108099 - matthiaskrgr:str_to_char, r=GuillaumeGomez
use chars instead of strings where applicable
2023-02-16 17:51:26 +01:00
Matthias Krüger
0400c68517 use chars instead of strings where applicable 2023-02-15 22:54:57 +01:00
Matthias Krüger
09ab35b574
Rollup merge of #108076 - GuillaumeGomez:more-let-chain, r=notriddle
rustdoc: Use more let chain

Got the idea after yesterday's review.

r? `@notriddle`
2023-02-15 21:30:59 +01:00
Guillaume Gomez
86fd5a1b44 Use more let chain 2023-02-15 12:00:03 +01:00
Michael Howell
ba4b026e80 rustdoc: add more tooltips to intra-doc links
This commit makes intra-doc link tooltips consistent with generated
links in function signatures and item tables, with the format
`itemtype foo::bar::baz`. This way, you can tell if a link points at
a trait or a type (for example) by mousing over it.

See also fce944d4e7
2023-02-13 22:57:28 -07:00
Michael Howell
8307fd7901 rustdoc: use a newline instead of <br> to format code headers
Since these elements now use `white-space: pre-wrap` since
784665d4ce, it's fine to use newlines
for formatting, which is smaller and a bit less complicated.
2023-02-07 11:23:25 -07:00
Roland Strasser
71a147df1f rustdoc: trait bound formatting
rustdoc: fix item-spacer

rustdoc: use proper comment style

rustdoc: change formatting where clauses for traits

rustdoc: remove semicolon from provided methods

update provided methods formatting
2023-02-04 19:10:04 +01:00
Michael Howell
784665d4ce Replace nbsp in all rustdoc code blocks
Co-Authored-By: David Tolnay <dtolnay@gmail.com>
2023-02-03 08:15:44 -07:00
Michael Howell
e65b36110f rustdoc: rearrange HTML in primitive reference links
This patch avoids hard-to-click single character links by making
the generic part of the link:

Before: <a href="#">&</a>T

After: <a href="#">&T</a>
2023-01-23 17:32:22 -07:00
Matthias Krüger
fdd6af14a1 rustdoc: simplify some & ref erences 2023-01-15 15:23:30 +01:00
klensy
81b637b6f2 fmt_type: don't alloc const String, use &str instead 2023-01-13 17:54:16 +03:00
klensy
cda6efeeb8 generate_macro_def_id_path: don't eagerly stringify Symbols 2023-01-13 17:33:07 +03:00
kadmin
8a4cbf4f7b Fix ICE
Left a todo awhile ago (I think), so fill it in to print a const for `Term`s.
2022-12-22 01:24:43 +00:00
Michael Howell
303653ef65 rustdoc: use javascript to layout notable traits popups
Fixes #102576
2022-11-07 22:45:24 -07:00
León Orell Valerian Liehr
9cdab67f6e rustdoc: render unnamed arguments as underscores in cross-crate functions & function pointers
for consistency with the way we display local definitions (cleaned from HIR, not from rustc_middle).
2022-11-04 19:34:37 +01:00
Guillaume Gomez
df326946ed Remove rustdoc clean::Visibility type 2022-11-03 18:15:24 +01:00
Vadim Petrochenkov
90f27f93bd rustdoc: Split effective visibilities from rustc from similar data built by rustdoc for external def-ids 2022-10-29 23:36:52 +04:00
Vadim Petrochenkov
34eb73c72d privacy: Rename "accessibility levels" to "effective visibilities"
And a couple of other naming tweaks

Related to https://github.com/rust-lang/rust/issues/48054
2022-10-26 16:34:53 +04:00
Rageking8
7122abaddf more dupe word typos 2022-10-14 12:57:56 +08:00
León Orell Valerian Liehr
73c239e5eb
rustdoc: render more cross-crate hrtbs properly 2022-10-05 23:14:15 +02:00
Michael Howell
598a02c6ad rustdoc: remove orphaned link on array bracket
This is 682889fb06, but for arrays instead.

For non-generics, this retains links to the array page, but instead of
trying to link it all, it only links the length part, which distinguishes
arrays from slices.

For generics, the entire thing becomes a link, just like slices.
2022-09-30 14:38:05 -07:00
Urgau
e214385a4d Add missing space between notable trait tooltip and where clause 2022-09-21 19:01:49 +02:00
KaDiWa
66211d83f9
Avoid Iterator::last 2022-09-11 17:23:00 +02:00
Matthias Krüger
21c8447d78
Rollup merge of #101245 - GuillaumeGomez:remove-unneeded-where-whitespace, r=notriddle
Remove unneeded where whitespace

It fixes these two bugs:

![Screenshot from 2022-08-31 18-14-40](https://user-images.githubusercontent.com/3050060/187727950-94657419-abfa-454c-9d27-004280fbcb45.png)
![Screenshot from 2022-08-31 18-14-49](https://user-images.githubusercontent.com/3050060/187727956-21d1b39d-62d7-4e7b-8f6f-631ceda67a19.png)

It's a relic from a very old time (this commit: bfd01b7f40).

You can test the result [here](https://rustdoc.crud.net/imperio/remove-unneeded-where-whitespace/lib2/struct.WhereWhitespace.html).

cc `````````@jsha`````````
r? `````````@notriddle`````````
2022-09-01 21:37:11 +02:00
Guillaume Gomez
803e35abf7 Remove unneeded extra whitespace before where clause 2022-08-31 18:13:39 +02:00
Nixon Enraght-Moony
6099d17afe rustdoc: Resugar async fn return type in clean, not html
This way it also happens for json output.

Fixes #101199
2022-08-30 18:09:04 +01: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
Michael Howell
dddc2fd6de rustdoc: reduce the number of intermediate Strings allocated 2022-08-05 08:56:09 -07:00
Michael Howell
5271e32c46 Improve the function pointer docs
* Reduce duplicate impls; show only the `fn (T)` and include a sentence
  saying that there exists up to twelve of them.
* Show `Copy` and `Clone`.
* Show auto traits like `Send` and `Sync`, and blanket impls like `Any`.
2022-07-19 08:52:24 -07:00
Michael Howell
1169832f2f rustdoc: extend #[doc(tuple_variadic)] to fn pointers
The attribute is also renamed `fake_variadic`.
2022-07-17 16:32:06 -07:00
bors
a639f89d04 Auto merge of #99066 - est31:remove_box_librustdoc, r=jsha
Remove most box syntax from librustdoc

This is the second attempt after the librustdoc specific changes have been reverted from #87781 in #89134, due to a minor, but exant regression caused by the changes. ~~There have been some changes to librustdoc in the past and maybe thanks to them there is no regression any more. If there is still a regression, one can investigate further and maybe find ways to fix the regressions. Thus, i request a perf run.~~ Edit: turns out there is still a regression, but it's caused only by a subset of the changes. So I've changed this PR to only contains the changes that don't cause any performance regressions, keeping the regression causing changes for a later PR.
2022-07-13 08:29:57 +00:00
est31
1ac17fcddb Remove box syntax from Box<dyn Iterator> construction
The iterators created should be pretty light weight.
2022-07-11 22:58:57 +02:00
Guillaume Gomez
d96d54103e Replace boolean argument for print_where_clause with an enum to make code more clear 2022-07-07 16:16:35 +02:00
Guillaume Gomez
c748551f7f Fix invalid add of whitespace when there is where clause 2022-07-05 21:45:27 +02:00
Guillaume Gomez
b17cf7a493 Remove unwanted trailing whitespaces for long declarations 2022-07-02 12:43:07 +02:00
Guillaume Gomez
beb2f364cc Fix panic by checking if CStore has the crate data we want before actually querying it 2022-06-20 23:39:26 +02:00
Guillaume Gomez
987c73158e Integrate generate_macro_def_id_path into href_with_root_path 2022-06-20 22:40:19 +02:00