File tree Expand file tree Collapse file tree 2 files changed +41
-2
lines changed Expand file tree Collapse file tree 2 files changed +41
-2
lines changed Original file line number Diff line number Diff line change 1+ #![ feature( generators, generator_trait) ]
2+
3+ use std:: ops:: Generator ;
4+ use std:: pin:: Pin ;
5+
16fn main ( ) {
2- println ! ( "Hello World!" ) ;
3- }
7+ let mut generator = || {
8+ yield 1 ;
9+ yield 2 ;
10+ yield 3 ;
11+ return 4 ;
12+ } ;
13+
14+ for _ in 0 ..4 {
15+ let c = Pin :: new ( & mut generator) . resume ( ( ) ) ;
16+ println ! ( "{:?}" , c) ;
17+ }
18+ }
Original file line number Diff line number Diff line change 1+ #![ feature( generators, generator_trait) ]
2+
3+ use std:: ops:: Generator ;
4+ use std:: pin:: Pin ;
5+
6+ #[ cfg( test) ]
7+ mod tests {
8+ use super :: * ;
9+
10+ #[ test]
11+ fn test_generator ( ) {
12+ let mut generator = || {
13+ println ! ( "2" ) ;
14+ yield ;
15+ println ! ( "4" ) ;
16+ } ;
17+
18+ println ! ( "1" ) ;
19+ Pin :: new ( & mut generator) . resume ( ( ) ) ;
20+ println ! ( "3" ) ;
21+ Pin :: new ( & mut generator) . resume ( ( ) ) ;
22+ println ! ( "5" ) ;
23+ }
24+ }
You can’t perform that action at this time.
0 commit comments