]> git.lizzy.rs Git - rust.git/blob - src/test/rustdoc/manual_impl.rs
Rollup merge of #68378 - billyrieger:btreemap-remove-entry, r=KodrAus
[rust.git] / src / test / rustdoc / manual_impl.rs
1 // @has manual_impl/trait.T.html
2 // @has  - '//*[@class="docblock"]' 'Docs associated with the trait definition.'
3 // @has  - '//*[@class="docblock"]' 'Docs associated with the trait a_method definition.'
4 // @has  - '//*[@class="docblock"]' 'Docs associated with the trait b_method definition.'
5 /// Docs associated with the trait definition.
6 pub trait T {
7     /// Docs associated with the trait a_method definition.
8     fn a_method(&self) -> usize;
9
10     /// Docs associated with the trait b_method definition.
11     fn b_method(&self) -> usize {
12         self.a_method()
13     }
14
15     /// Docs associated with the trait c_method definition.
16     ///
17     /// There is another line
18     fn c_method(&self) -> usize {
19         self.a_method()
20     }
21 }
22
23 // @has manual_impl/struct.S1.html '//*[@class="trait"]' 'T'
24 // @has  - '//*[@class="docblock"]' 'Docs associated with the S1 trait implementation.'
25 // @has  - '//*[@class="docblock"]' 'Docs associated with the S1 trait a_method implementation.'
26 // @!has - '//*[@class="docblock"]' 'Docs associated with the trait a_method definition.'
27 // @has - '//*[@class="docblock hidden"]' 'Docs associated with the trait b_method definition.'
28 // @has - '//*[@class="docblock hidden"]' 'Docs associated with the trait c_method definition.'
29 // @!has - '//*[@class="docblock"]' 'There is another line'
30 // @has - '//*[@class="docblock hidden"]' 'Read more'
31 pub struct S1(usize);
32
33 /// Docs associated with the S1 trait implementation.
34 impl T for S1 {
35     /// Docs associated with the S1 trait a_method implementation.
36     fn a_method(&self) -> usize {
37         self.0
38     }
39 }
40
41 // @has manual_impl/struct.S2.html '//*[@class="trait"]' 'T'
42 // @has  - '//*[@class="docblock"]' 'Docs associated with the S2 trait implementation.'
43 // @has  - '//*[@class="docblock"]' 'Docs associated with the S2 trait a_method implementation.'
44 // @has  - '//*[@class="docblock"]' 'Docs associated with the S2 trait c_method implementation.'
45 // @!has - '//*[@class="docblock"]' 'Docs associated with the trait a_method definition.'
46 // @!has - '//*[@class="docblock"]' 'Docs associated with the trait c_method definition.'
47 // @has - '//*[@class="docblock hidden"]' 'Docs associated with the trait b_method definition.'
48 pub struct S2(usize);
49
50 /// Docs associated with the S2 trait implementation.
51 impl T for S2 {
52     /// Docs associated with the S2 trait a_method implementation.
53     fn a_method(&self) -> usize {
54         self.0
55     }
56
57     /// Docs associated with the S2 trait c_method implementation.
58     fn c_method(&self) -> usize {
59         5
60     }
61 }
62
63 // @has manual_impl/struct.S3.html '//*[@class="trait"]' 'T'
64 // @has  - '//*[@class="docblock"]' 'Docs associated with the S3 trait implementation.'
65 // @has  - '//*[@class="docblock"]' 'Docs associated with the S3 trait b_method implementation.'
66 // @has - '//*[@class="docblock hidden"]' 'Docs associated with the trait a_method definition.'
67 pub struct S3(usize);
68
69 /// Docs associated with the S3 trait implementation.
70 impl T for S3 {
71     fn a_method(&self) -> usize {
72         self.0
73     }
74
75     /// Docs associated with the S3 trait b_method implementation.
76     fn b_method(&self) -> usize {
77         5
78     }
79 }