Rename lots of files that had generator
in their name
This commit is contained in:
parent
8c66e117e2
commit
af93c20c06
63 changed files with 81 additions and 81 deletions
45
tests/ui/async-await/coroutine-not-future.rs
Normal file
45
tests/ui/async-await/coroutine-not-future.rs
Normal file
|
@ -0,0 +1,45 @@
|
|||
// edition:2018
|
||||
#![feature(coroutines, coroutine_trait)]
|
||||
|
||||
use std::future::Future;
|
||||
use std::ops::Coroutine;
|
||||
|
||||
async fn async_fn() {}
|
||||
fn returns_async_block() -> impl Future<Output = ()> {
|
||||
async {}
|
||||
}
|
||||
fn returns_coroutine() -> impl Coroutine<(), Yield = (), Return = ()> {
|
||||
|| {
|
||||
let _: () = yield ();
|
||||
}
|
||||
}
|
||||
|
||||
fn takes_future(_f: impl Future<Output = ()>) {}
|
||||
fn takes_coroutine<ResumeTy>(_g: impl Coroutine<ResumeTy, Yield = (), Return = ()>) {}
|
||||
|
||||
fn main() {
|
||||
// okay:
|
||||
takes_future(async_fn());
|
||||
takes_future(returns_async_block());
|
||||
takes_future(async {});
|
||||
takes_coroutine(returns_coroutine());
|
||||
takes_coroutine(|| {
|
||||
let _: () = yield ();
|
||||
});
|
||||
|
||||
// async futures are not coroutines:
|
||||
takes_coroutine(async_fn());
|
||||
//~^ ERROR the trait bound
|
||||
takes_coroutine(returns_async_block());
|
||||
//~^ ERROR the trait bound
|
||||
takes_coroutine(async {});
|
||||
//~^ ERROR the trait bound
|
||||
|
||||
// coroutines are not futures:
|
||||
takes_future(returns_coroutine());
|
||||
//~^ ERROR is not a future
|
||||
takes_future(|ctx| {
|
||||
//~^ ERROR is not a future
|
||||
ctx = yield ();
|
||||
});
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue