libostd/examples/coroutine2.cc

27 lines
402 B
C++
Raw Normal View History

2017-03-06 03:31:37 +01:00
#include <ostd/io.hh>
#include <ostd/coroutine.hh>
using namespace ostd;
int main() {
2017-03-11 14:16:32 +01:00
auto f = [](auto yield) {
for (int i: range(5, 26, 5)) {
yield(i);
}
2017-03-06 03:31:37 +01:00
};
writeln("generator test");
2017-03-11 14:16:32 +01:00
for (int i: generator<int>{f}) {
writefln("generated: %s", i);
2017-03-06 03:31:37 +01:00
}
}
/*
generator test
generated: 5
generated: 10
generated: 15
generated: 20
generated: 25
*/