Sane C++ Libraries
C++ Platform Abstraction Libraries
Loading...
Searching...
No Matches
SC::AwaitTask::Promise Struct Reference

Coroutine promise implementation used by AwaitTask. More...

#include <Await.h>

Classes

struct  FinalSuspend
 

Public Member Functions

template<typename First , typename... Rest>
 Promise (First &first, Rest &... rest)
 
AwaitTask get_return_object ()
 
AwaitSuspendAlways initial_suspend () noexcept
 
FinalSuspend final_suspend () noexcept
 
void return_value (Result newResult) noexcept
 
void unhandled_exception () noexcept
 

Static Public Member Functions

static AwaitEventLoopfindEventLoop ()
 
static AwaitEventLoopfindEventLoop (AwaitEventLoop &await)
 
template<typename First , typename... Rest>
static AwaitEventLoopfindEventLoop (First &, Rest &... rest)
 
static void * allocateFrame (size_t size, AwaitEventLoop *eventLoop) noexcept
 
static void deallocateFrame (void *frame) noexcept
 
static void * operator new (size_t size) noexcept
 
template<typename First , typename... Rest>
static void * operator new (size_t size, First &first, Rest &... rest) noexcept
 
static void operator delete (void *frame, size_t) noexcept
 
static AwaitTask get_return_object_on_allocation_failure ()
 

Public Attributes

Result taskResult
 
AwaitTask::Handle continuation
 
AwaitTask::Handle deferredDestroyNext
 
AwaitCancellationHandler cancellation
 
AwaitEventLoopeventLoop
 
void * completionObject
 
void(* completionCallback )(void *object)
 
bool started
 
bool completed
 
bool cancellationRequested
 
bool inCompletionCallback
 
bool destroyDeferred
 

Detailed Description

Coroutine promise implementation used by AwaitTask.


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