]> git.lizzy.rs Git - rust.git/blob - src/test/rustdoc/intra-link-disambiguators-removed.rs
Merge commit 'bf1c6f9871f430e284b17aa44059e0d0395e28a6' into clippyup
[rust.git] / src / test / rustdoc / intra-link-disambiguators-removed.rs
1 // ignore-tidy-linelength
2 #![deny(intra_doc_link_resolution_failure)]
3 // first try backticks
4 /// Trait: [`trait@Name`], fn: [`fn@Name`], [`Name`][`macro@Name`]
5 // @has intra_link_disambiguators_removed/struct.AtDisambiguator.html
6 // @has - '//a[@href="../intra_link_disambiguators_removed/trait.Name.html"][code]' "Name"
7 // @has - '//a[@href="../intra_link_disambiguators_removed/fn.Name.html"][code]' "Name"
8 // @has - '//a[@href="../intra_link_disambiguators_removed/macro.Name.html"][code]' "Name"
9 pub struct AtDisambiguator;
10
11 /// fn: [`Name()`], macro: [`Name!`]
12 // @has intra_link_disambiguators_removed/struct.SymbolDisambiguator.html
13 // @has - '//a[@href="../intra_link_disambiguators_removed/fn.Name.html"][code]' "Name()"
14 // @has - '//a[@href="../intra_link_disambiguators_removed/macro.Name.html"][code]' "Name!"
15 pub struct SymbolDisambiguator;
16
17 // Now make sure that backticks aren't added if they weren't already there
18 /// [fn@Name]
19 // @has intra_link_disambiguators_removed/trait.Name.html
20 // @has - '//a[@href="../intra_link_disambiguators_removed/fn.Name.html"]' "Name"
21 // @!has - '//a[@href="../intra_link_disambiguators_removed/fn.Name.html"][code]' "Name"
22
23 // FIXME: this will turn !() into ! alone
24 /// [Name!()]
25 // @has - '//a[@href="../intra_link_disambiguators_removed/macro.Name.html"]' "Name!"
26 pub trait Name {}
27
28 #[allow(non_snake_case)]
29
30 // Try collapsed reference links
31 /// [macro@Name][]
32 // @has intra_link_disambiguators_removed/fn.Name.html
33 // @has - '//a[@href="../intra_link_disambiguators_removed/macro.Name.html"]' "Name"
34
35 // Try links that have the same text as a generated URL
36 /// Weird URL aligned [../intra_link_disambiguators_removed/macro.Name.html][trait@Name]
37 // @has - '//a[@href="../intra_link_disambiguators_removed/trait.Name.html"]' "../intra_link_disambiguators_removed/macro.Name.html"
38 pub fn Name() {}
39
40 #[macro_export]
41 // Rustdoc doesn't currently handle links that have weird interspersing of inline code blocks.
42 /// [fn@Na`m`e]
43 // @has intra_link_disambiguators_removed/macro.Name.html
44 // @has - '//a[@href="../intra_link_disambiguators_removed/fn.Name.html"]' "fn@Name"
45
46 // It also doesn't handle any case where the code block isn't the whole link text:
47 /// [trait@`Name`]
48 // @has - '//a[@href="../intra_link_disambiguators_removed/trait.Name.html"]' "trait@Name"
49 macro_rules! Name {
50     () => ()
51 }