]> git.lizzy.rs Git - rust.git/blob - src/test/rustdoc/async-fn.rs
Rollup merge of #71829 - kper:issue71136, r=matthewjasper
[rust.git] / src / test / rustdoc / async-fn.rs
1 // edition:2018
2
3 // @has async_fn/fn.foo.html '//pre[@class="rust fn"]' 'pub async fn foo() -> Option<Foo>'
4 pub async fn foo() -> Option<Foo> {
5     None
6 }
7
8 // @has async_fn/fn.bar.html '//pre[@class="rust fn"]' 'pub async fn bar(a: i32, b: i32) -> i32'
9 pub async fn bar(a: i32, b: i32) -> i32 {
10     0
11 }
12
13 // @has async_fn/fn.baz.html '//pre[@class="rust fn"]' 'pub async fn baz<T>(a: T) -> T'
14 pub async fn baz<T>(a: T) -> T {
15     a
16 }
17
18 // @has async_fn/fn.qux.html '//pre[@class="rust fn"]' 'pub async unsafe fn qux() -> char'
19 pub async unsafe fn qux() -> char {
20     '⚠'
21 }
22
23 trait Bar {}
24
25 impl Bar for () {}
26
27 // @has async_fn/fn.quux.html '//pre[@class="rust fn"]' 'pub async fn quux() -> impl Bar'
28 pub async fn quux() -> impl Bar {
29     ()
30 }
31
32 // @has async_fn/struct.Foo.html
33 // @matches - '//code' 'pub async fn f\(\)$'
34 // @matches - '//code' 'pub async unsafe fn g\(\)$'
35 pub struct Foo;
36
37 impl Foo {
38     pub async fn f() {}
39     pub async unsafe fn g() {}
40 }