]> git.lizzy.rs Git - rust.git/blob - tests/ui/generator/xcrate.rs
Rollup merge of #106797 - FawazTirmizi:dev/issues/104284, r=bjorn3
[rust.git] / tests / ui / generator / xcrate.rs
1 // run-pass
2
3 // aux-build:xcrate.rs
4
5 #![feature(generators, generator_trait)]
6
7 extern crate xcrate;
8
9 use std::ops::{GeneratorState, Generator};
10 use std::pin::Pin;
11
12 fn main() {
13     let mut foo = xcrate::foo();
14
15     match Pin::new(&mut foo).resume(()) {
16         GeneratorState::Complete(()) => {}
17         s => panic!("bad state: {:?}", s),
18     }
19
20     let mut foo = xcrate::bar(3);
21
22     match Pin::new(&mut foo).resume(()) {
23         GeneratorState::Yielded(3) => {}
24         s => panic!("bad state: {:?}", s),
25     }
26     match Pin::new(&mut foo).resume(()) {
27         GeneratorState::Complete(()) => {}
28         s => panic!("bad state: {:?}", s),
29     }
30 }