Commit graph

945 commits

Author SHA1 Message Date
Michael Howell
57ca36861d rustdoc: make item links consistently use title="{shortty} {path}"
The ordering in item tables was flipped in 3030cbea95, making it
inconsistent with the ordering in method signatures.

Compare these:

c8e6a9e8b6/src/librustdoc/html/render/print_item.rs (L455-L459)

c8e6a9e8b6/src/librustdoc/html/format.rs (L903-L908)
2023-01-23 14:31:35 -07: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
8b80bc1bf4 Revert "Improve code readability"
This reverts commit eb93d1bede.
2023-01-19 20:26:01 +01:00
bors
65d2f2a5f9 Auto merge of #106810 - oli-obk:resolver_reverse_plumbing, r=petrochenkov
Various cleanups around pre-TyCtxt queries and functions

part of #105462

based on https://github.com/rust-lang/rust/pull/106776 (everything starting at [0e2b39f](https://github.com/rust-lang/rust/pull/106810/commits/0e2b39fd1ffde51b50d45ccbe41de52b85136b8b) is new in this PR)

r? `@petrochenkov`

I think this should be most of the uncontroversial part of #105462.
2023-01-19 05:23:40 +00:00
Matthias Krüger
b90f62988d
Rollup merge of #106869 - notriddle:notriddle/item-decl-pre-rust, r=GuillaumeGomez
rustdoc: remove redundant item kind class from `.item-decl > pre`

This class originated in the very first commit of `rustdoc_ng`, and was used to add a color border around the item decl based on its kind.

4fd061c426/src/rustdoc_ng/html/static/main.css (L102-L106)

The item decl no longer has a border, and there aren't any kind-specific styles in modern rustdoc's rendering of this UI item.

Most of this PR is updating test cases so that they use `item-decl` to find the `<pre>` tag instead of relying on the fact that the class name had `rust {kind}` in it while other `<pre>` tags only had class `rust`.
2023-01-17 05:25:22 +01:00
Oli Scherer
9f5cd03153 Move compiler input and ouput paths into session 2023-01-16 14:46:44 +00:00
Matthias Krüger
fdd6af14a1 rustdoc: simplify some & ref erences 2023-01-15 15:23:30 +01:00
Michael Howell
3a3f70c94e rustdoc: remove redundant item kind class from .item-decl > pre
This class originated in the very first commit of `rustdoc_ng`, and was used
to add a color border around the item decl based on its kind.

4fd061c426/src/rustdoc_ng/html/static/main.css (L102-L106)

The item decl no longer has a border, and there aren't any
kind-specific styles in modern rustdoc's rendering of this UI item.

Most of this commit is updating test cases so that they use `item-decl` to
find the `<pre>` tag instead of relying on the fact that the class name
had `rust {kind}` in it while other `<pre>` tags only had class `rust`.
2023-01-14 11:34:03 -07:00
Matthias Krüger
bc0c816410
Rollup merge of #106855 - klensy:rd-s, r=notriddle
rustdoc: few small cleanups
2023-01-14 18:45:28 +01:00
Matthias Krüger
14fbc21466
Rollup merge of #106828 - notriddle:notriddle/notable-trait-docblock, r=GuillaumeGomez
rustdoc: remove `docblock` class from notable trait popover

This commit builds on b72de9be74, which removes the `docblock` class from the All Items page, and 9457380ac9, which removes the `docblock` class from the item decl.

Fixes #92974
2023-01-14 18:45:27 +01:00
Yuki Okushi
caa1d47fba
Rollup merge of #106819 - notriddle:notriddle/rm-h1-fqn, r=GuillaumeGomez
rustdoc: remove unnecessary DOM class `h1.fqn`

It's misleading. The main heading sometimes isn't an fully qualified name at all.

It's also redundant. It's always a child of `div.main-heading`, so just use that.
2023-01-14 12:04:37 +09:00
Michael Howell
5314ed5627 rustdoc: remove docblock class from notable trait popover
This commit builds on b72de9be74, which removes
the `docblock` class from the All Items page, and
9457380ac9, which removes the `docblock` class
from the item decl.

Fixes #92974
2023-01-13 15:42:29 -07:00
Michael Howell
1d328de3ec rustdoc: rename CSS rustdoc-toggle -> toggle and toggle -> settings-toggle
This swaps things around so that the class that gets used more often has
the shorter name.
2023-01-13 12:38:03 -07:00
Michael Howell
39b90a5f6e rustdoc: remove unnecessary DOM class h1.fqn
It's misleading. The main heading sometimes isn't an fully qualified name at all.

It's also redundant. It's always a child of `div.main-heading`, so just use that.
2023-01-13 10:09:25 -07:00
klensy
8998bd35ed CrateData: don't allocate String when Serialize, &str is enough 2023-01-13 18:27:30 +03:00
klensy
ffb2e84319 Playground.crate_name String -> Symbol 2023-01-13 18:05:16 +03:00
klensy
4e1258c6b6 IndexItem.name String -> Symbol 2023-01-13 15:39:16 +03:00
klensy
60cc7783da evade clones 2023-01-13 15:07:14 +03:00
Guillaume Gomez
36c9b49c14 Remove unneeded ItemId::Primitive variant 2023-01-10 18:30:37 +01:00
clubby789
4a68f7ecae Correctly render sidebar for relative module paths 2023-01-06 16:48:13 +00:00
Nixon Enraght-Moony
f1f99c611a clean: Remove ctor_kind from VariantStruct.
It's always `None`.
2023-01-03 15:10:53 +00:00
Nixon Enraght-Moony
b7b252a4f4 clean: Always store enum disriminant. 2023-01-01 18:11:53 +00:00
yukang
c6b90d2800 Fix index out of bounds issues in rustdoc 2022-12-29 21:48:40 +08:00
Matthias Krüger
4a5cecec56
Rollup merge of #106027 - notriddle:notriddle/more-scraped-examples-inner, r=GuillaumeGomez
rustdoc: simplify CSS and DOM for more-scraped-examples

This gets rid of the more-scraped-examples-inner wrapper, instead nesting the children directly and using absolute positioning for the toggle line.
2022-12-22 19:36:14 +01:00
bors
cce9e72c55 Auto merge of #104889 - GuillaumeGomez:fix-impl-block-in-const-expr, r=notriddle
Fix impl block in const expr

Fixes #83026.

The problem was that we didn't visit block expressions. Considering how big the [walk_expr](https://doc.rust-lang.org/nightly/nightly-rustc/src/rustc_hir/intravisit.rs.html#678) function is, I decided to instead implement the `hir` visitor on the struct. It also answers the question which was in a comment for `RustdocVisitor`: we should have used a visitor instead of our ad-hoc implementation.

Adding this visitor also added some extra checks that weren't present before (check changes in `rustdoc-ui` tests).

r? `@notriddle`
2022-12-22 08:37:58 +00:00
Michael Howell
2b661c33de rustdoc: simplify CSS and DOM for more-scraped-examples
This gets rid of the more-scraped-examples-inner wrapper, instead nesting the
children directly and using absolute positioning for the toggle line.
2022-12-21 18:03:31 -07:00
Guillaume Gomez
14b508fbec Don't add "Read more" link if there is no extra content 2022-12-16 14:52:35 +01:00
Matthias Krüger
84a725e4e3
Rollup merge of #105639 - notriddle:notriddle/text-css, r=GuillaumeGomez
rustdoc: remove `type="text/css" from stylesheet links

MDN directly recommends this in <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link>, since "CSS is the only stylesheet language used on the web."

Like 07a243b2a4, but a few places that were missed the first time.
2022-12-13 01:17:12 +01:00
Michael Howell
46b4a3b831 rustdoc: remove `type="text/css" from stylesheet links
MDN directly recommends this in <https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link>,
since "CSS is the only stylesheet language used on the web."

Like 07a243b2a4, but a few places that were
missed the first time.
2022-12-12 15:17:49 -07:00
Michael Howell
7e64cebf97 rustdoc: stop treating everything in a trait item as a method
This was added in 0b9b4b7068 to fix the
spacing on trait pages, but stopped being needed because
791f04e5a4 stopped styling method-toggle.
By only putting the method-toggle class on actual methods, the JS setting
does the right thing.
2022-12-12 12:49:29 -07:00
Guillaume Gomez
eb93d1bede Improve code readability 2022-12-07 20:29:50 +01:00
Will Crichton
ae270f1b99 Update scrape-examples help, fix documentation typos 2022-12-07 09:08:43 -08:00
Will Crichton
6ccd14a782 Improve several aspects of the Rustdoc scrape-examples UI.
* Examples take up less screen height.
* Snippets from binary crates are prioritized.
* toggle-all-docs does not expand "More examples" sections.
2022-12-07 09:08:43 -08:00
Vadim Petrochenkov
1f259ae679 rustc_hir: Change representation of import paths to support multiple resolutions 2022-12-01 18:51:05 +03:00
Vadim Petrochenkov
6cd4dd3091 rustc_hir: Relax lifetime requirements on Visitor::visit_path 2022-12-01 17:04:02 +03:00
Michael Howell
19e0200296 rustdoc: remove fnname CSS class that's styled exactly like fn
It's not obvious why this was ever a separate class name, since even
in c4219a4783 when it was first added,
it was styled identically to regular `fn` links.
2022-11-28 10:51:46 -07:00
hkalbasi
390a637e29 move things from rustc_target::abi to rustc_abi 2022-11-24 16:26:13 +03:30
hkalbasi
09a384643e make rustc_target usable outside of rustc 2022-11-24 16:26:12 +03:30
Guillaume Gomez
aa73e29799 Improve accessibility:
* Set aria-label attribute on search input
 * Put anchor text directly into the DOM and not in the CSS
2022-11-23 15:08:00 +01:00
Vadim Petrochenkov
7a5376d23c Unreserve braced enum variants in value namespace 2022-11-21 22:40:06 +03:00
Michael Howell
a979b4a508 rustdoc: use real buttons for scrape examples controls 2022-11-19 12:27:40 -07:00
Michael Howell
4525eb112b rustdoc: use code-header class to format enum variants
The font size and weights should be exactly the same after this commit,
but the spacing is changed to be exactly the same as methods.
2022-11-17 15:37:34 -07:00
Yuki Okushi
528b4af796
Rollup merge of #104177 - notriddle:notriddle/js-notable-trait-v2, r=GuillaumeGomez
rustdoc: use consistent "popover" styling for notable traits

Follow-up to #104129
Fixes https://github.com/rust-lang/rust/issues/104313.

Preview: https://notriddle.com/notriddle-rustdoc-demos/js-notable-trait-v2/std/iter/trait.Iterator.html#method.step_by

## Before

![image](https://user-images.githubusercontent.com/1593513/200710372-d2d992ce-0bdc-4437-9a2e-379a29df09cf.png)

![image](https://user-images.githubusercontent.com/1593513/200711266-e372b176-daa9-45f3-a022-738ef0a77d3c.png)

## After

![image](https://user-images.githubusercontent.com/1593513/200710601-09b3b717-116f-43c6-b14f-34a8b02b33c0.png)

![image](https://user-images.githubusercontent.com/1593513/200711288-3978cdc1-a6c2-47f6-9216-e22e3c1f5bdf.png)
2022-11-13 16:41:44 +09:00
Yuki Okushi
96753eb0e0
Rollup merge of #103650 - notriddle:notriddle/line-anchors, r=GuillaumeGomez
rustdoc: change `.src-line-numbers > span` to `.src-line-numbers > a`

Example: https://notriddle.com/notriddle-rustdoc-demos/line-anchors/test_dingus/fn.test.html

This allows people to treat them like real links, such as right-click to copy URL, and makes the line numbers in a scraped example work at all, when before this commit was added, they had the clickable pointer cursor but did not actually do anything when clicked.
2022-11-13 16:41:44 +09:00
Michael Howell
cb3a04b6ef rustdoc: avoid excessive HTML generated in example sources 2022-11-12 09:23:09 -07:00
Michael Howell
89ba71649f rustdoc: use consistent "popover" styling for notable traits 2022-11-11 17:27:03 -07:00
Michael Howell
05824cd7b7 rustdoc: fix HTML validation failure by escaping data-ty 2022-11-11 10:01:54 -07:00
Michael Howell
53e8b490d8 rustdoc: sort output to make it deterministic 2022-11-09 13:55:52 -07:00
Michael Howell
303653ef65 rustdoc: use javascript to layout notable traits popups
Fixes #102576
2022-11-07 22:45:24 -07:00
Michael Howell
8e0cac18cd rustdoc: refactor notable_traits_decl to just act on the type directly 2022-11-07 11:13:01 -07:00