libcoro  1.0
Coroutine support library for C++20
Classes | Typedefs
Awaitables
+ Collaboration diagram for Awaitables:

Classes

class  coro::async< T, Alloc >
 COROUTINE: Coroutine for asynchronous operation. More...
 
class  coro::suspend
 Suspend current coroutine and switch to another coroutine ready to run. More...
 
class  coro::distributor< T, Lock >
 Distributes single event to multiple coroutines (subscribbers) More...
 
class  coro::future< T >
 Contains future value of T, can be co_awaited in coroutine. More...
 
class  coro::deferred_future< T >
 Contains future value of T, where evaluation is deferred until the value is needed. More...
 
class  coro::shared_future< T >
 Future which can be shared (by copying - like shared_ptr) More...
 
class  coro::generator< T, Alloc >
 COROUTINE: Generator. More...
 
class  coro::mutex
 Mutex which allows locking across co_await and co_yield suspend points. More...
 
class  coro::queue< T, QueueImpl >
 Implements asychronous queue with support for coroutines. More...
 
class  coro::subscription< T, SubscribeFn >
 Awaiter for subscriptions. More...
 

Typedefs

using coro::scheduler = scheduler_t< std::condition_variable >
 scheduler for coroutines More...
 
using coro::thread_pool = thread_pool_t< std::condition_variable >
 Thread pool implementation. More...
 

Detailed Description

Objects that can be awaited in coroutines