Pigweed
 
Loading...
Searching...
No Matches
pw::async2::OnceReceiver< T > Class Template Referencefinal

#include <once_sender.h>

Public Member Functions

template<typename... Args>
 OnceReceiver (Args &&... value_args)
 
 OnceReceiver (OnceReceiver &&other)
 
 OnceReceiver (const OnceReceiver &)=delete
 
OnceReceiveroperator= (const OnceReceiver &)=delete
 
OnceReceiveroperator= (OnceReceiver &&other)=delete
 
Poll< Result< T > > Pend (Context &cx)
 

Friends

class OnceSender< T >
 
template<typename U >
std::pair< OnceSender< U >, OnceReceiver< U > > MakeOnceSenderAndReceiver ()
 Construct a pair of OnceSender and OnceReceiver.
 
template<typename U >
void InitializeOnceSenderAndReceiver (OnceSender< U > &sender, OnceReceiver< U > &receiver)
 

Detailed Description

template<typename T>
class pw::async2::OnceReceiver< T >

OnceReceiver receives the value sent by the OnceSender it is constructed with. It must be constructed using MakeOnceSenderAndReceiver. OnceReceiver::Pend() is used to poll for the value sent by OnceSender. OnceReceiver is thread safe and may be used on a different thread than OnceSender.

Constructor & Destructor Documentation

◆ OnceReceiver()

template<typename T >
template<typename... Args>
pw::async2::OnceReceiver< T >::OnceReceiver ( Args &&...  value_args)
inlineexplicit

Create an already completed OnceReceiver by constructing the value with value_args.

Member Function Documentation

◆ Pend()

template<typename T >
Poll< Result< T > > pw::async2::OnceReceiver< T >::Pend ( Context cx)
inline

Returns Ready with a result containing the value once the value has been assigned. If the sender is destroyed before sending a value, a Cancelled result will be returned.


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