Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #![feature(generator_trait, generators)]
- use std::ops::{Generator, GeneratorState};
- pub fn main() {
- let mut g = move || {
- 'a: while {yield return 'a: while {break 'a; true} {}; true} {yield}
- };
- let mut n = 0;
- unsafe {
- loop {
- n += 1;
- if n == 10 { break }
- match g.resume() {
- GeneratorState::Yielded(y) => println!("YIELD {:?}", y),
- GeneratorState::Complete(r) => { println!("RETURNED {:?}", r); break},
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment