Move /src/test to /tests
This commit is contained in:
parent
ca855e6e42
commit
cf2dff2b1e
27592 changed files with 0 additions and 0 deletions
32
tests/ui/async-await/in-trait/async-example.rs
Normal file
32
tests/ui/async-await/in-trait/async-example.rs
Normal file
|
@ -0,0 +1,32 @@
|
|||
// check-pass
|
||||
// edition: 2021
|
||||
|
||||
#![feature(async_fn_in_trait)]
|
||||
#![allow(incomplete_features)]
|
||||
|
||||
trait MyTrait {
|
||||
async fn foo(&self) -> i32;
|
||||
async fn bar(&self) -> i32;
|
||||
}
|
||||
|
||||
impl MyTrait for i32 {
|
||||
async fn foo(&self) -> i32 {
|
||||
*self
|
||||
}
|
||||
|
||||
async fn bar(&self) -> i32 {
|
||||
self.foo().await
|
||||
}
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let x = 5;
|
||||
// Calling from non-async context
|
||||
let _ = x.foo();
|
||||
let _ = x.bar();
|
||||
// Calling from async block in non-async context
|
||||
async {
|
||||
let _: i32 = x.foo().await;
|
||||
let _: i32 = x.bar().await;
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue