Commit graph

16 commits

Author SHA1 Message Date
q66 e97e70b427 constructor cleanup, const correctness, swap fixes, explicit bool, comments 2017-03-07 17:39:40 +01:00
q66 483ec9df3b only initialize the context with a valid function 2017-03-07 02:19:25 +01:00
q66 573c001786 put coroutine_context in detail and inherit from it 2017-03-07 02:07:13 +01:00
q66 248acbeac5 use p_func to check finished status (no separate bool) 2017-03-07 01:25:56 +01:00
q66 7ba1f9265b make value-returning no-argument coroutines iterable 2017-03-06 19:01:17 +01:00
q66 64d92743e4 only pass yield to coroutines, make them movable and swappable, improve examples 2017-03-06 18:38:50 +01:00
q66 9a194343f3 operator bool on coroutine should be inverse 2017-03-06 02:09:52 +01:00
q66 a4e17e22c7 fix coroutine + initial proof of concept generator (bad impl) 2017-03-06 00:47:15 +01:00
q66 1f946bff50 forwarding of coroutine args/results 2017-03-05 23:49:20 +01:00
q66 34a434ab53 move helpers to coro_base 2017-03-05 23:07:00 +01:00
q66 5c209872b5 fix narrowing 2017-03-05 21:56:41 +01:00
q66 ed514c28a6 specialize coroutines for zero args 2017-03-05 20:11:39 +01:00
q66 d369bb4b8a use generic arg so we can construct coroutines from lambdas using = 2017-03-05 19:50:25 +01:00
q66 1bb2dffc63 return the arg directly from yield with single-arg coroutines 2017-03-05 19:45:26 +01:00
q66 2a842ef9da reimplement coroutine using the new fcontext assembly 2017-03-05 16:48:44 +01:00
q66 8ecaa338bc add initial coroutine module (slow ucontext_t, POSIX only, WiP) 2017-03-04 18:25:33 +01:00