summaryrefslogtreecommitdiffstats
path: root/tests/ui/coroutine/gen_fn_iter.rs
blob: da01bc96ef45390277794ad0711484e555b7af83 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// edition: 2024
// compile-flags: -Zunstable-options
// run-pass
#![feature(gen_blocks)]

// make sure that a ridiculously simple gen fn works as an iterator.

gen fn foo() -> i32 {
    yield 1;
    yield 2;
    yield 3;
}

fn main() {
    let mut iter = foo();
    assert_eq!(iter.next(), Some(1));
    assert_eq!(iter.next(), Some(2));
    assert_eq!(iter.next(), Some(3));
    assert_eq!(iter.next(), None);
}