Corium 1.1.0
High-Performance Zero-Heap C++20 MPSC Application Runtime
Loading...
Searching...
No Matches
corium::async::Channel< T, Capacity >::PushAwaiter Struct Reference

Awaiter for pushing an item asynchronously (suspends if channel is full). More...

#include <Channel.hpp>

+ Collaboration diagram for corium::async::Channel< T, Capacity >::PushAwaiter:

Public Member Functions

bool await_ready () noexcept
 
bool await_resume () noexcept
 
bool await_suspend (std::coroutine_handle<> h) noexcept
 

Public Attributes

Channelchan
 
bool done {false}
 
val
 

Detailed Description

template<typename T, size_t Capacity = 16>
struct corium::async::Channel< T, Capacity >::PushAwaiter

Awaiter for pushing an item asynchronously (suspends if channel is full).

Member Function Documentation

◆ await_ready()

template<typename T , size_t Capacity = 16>
bool corium::async::Channel< T, Capacity >::PushAwaiter::await_ready ( )
inlinenoexcept
+ Here is the call graph for this function:

◆ await_resume()

template<typename T , size_t Capacity = 16>
bool corium::async::Channel< T, Capacity >::PushAwaiter::await_resume ( )
inlinenoexcept
+ Here is the call graph for this function:

◆ await_suspend()

template<typename T , size_t Capacity = 16>
bool corium::async::Channel< T, Capacity >::PushAwaiter::await_suspend ( std::coroutine_handle<>  h)
inlinenoexcept

Member Data Documentation

◆ chan

template<typename T , size_t Capacity = 16>
Channel& corium::async::Channel< T, Capacity >::PushAwaiter::chan

◆ done

template<typename T , size_t Capacity = 16>
bool corium::async::Channel< T, Capacity >::PushAwaiter::done {false}

◆ val

template<typename T , size_t Capacity = 16>
T corium::async::Channel< T, Capacity >::PushAwaiter::val

The documentation for this struct was generated from the following file: