LeechCraft 0.6.70-18808-g3467692359
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
LC::Util::Task< R, Extensions >::promise_type Struct Reference

#include "task.h"

Inheritance diagram for LC::Util::Task< R, Extensions >::promise_type:
Collaboration diagram for LC::Util::Task< R, Extensions >::promise_type:

Public Member Functions

auto GetAddress ()
Task get_return_object ()
std::suspend_never initial_suspend () const noexcept
auto final_suspend () noexcept
void unhandled_exception ()
void IncRef ()
void DecRef ()
Public Member Functions inherited from LC::Util::detail::PromiseRet< R >
template<typename U = R>
void return_value (this auto &&self, U &&val)
Public Member Functions inherited from LC::Util::detail::DefaultAwaiterHandler< Extensions< promise_type >... >
void AddAwaiter (std::coroutine_handle<> handle)
void RemoveAwaiter (std::coroutine_handle<>) noexcept
auto GetAwaiters (this auto &&self) noexcept

Additional Inherited Members

Public Types inherited from LC::Util::detail::PromiseRet< R >
using ReturnType_t = R
Static Public Member Functions inherited from LC::Util::detail::DefaultLockingHandler< Extensions< promise_type >... >
static void lock ()
static void unlock ()
Static Public Member Functions inherited from LC::Util::detail::DefaultResumeValueHandler< Extensions< promise_type >... >
static R && ResumeValue (R &ret) noexcept
Public Attributes inherited from LC::Util::detail::PromiseRet< R >
std::optional< R > Ret_
Public Attributes inherited from LC::Util::detail::PromiseBase
std::atomic< size_t > Refs_ = 1
std::exception_ptr Exception_ {}
Public Attributes inherited from LC::Util::detail::DefaultAwaiterHandler< Extensions< promise_type >... >
std::atomic< std::coroutine_handle<> > Continuation_
Static Public Attributes inherited from LC::Util::detail::PromiseRet< R >
static constexpr bool IsVoid = false

Detailed Description

template<typename R, template< typename > typename... Extensions>
struct LC::Util::Task< R, Extensions >::promise_type

Definition at line 158 of file task.h.

Member Function Documentation

◆ DecRef()

template<typename R, template< typename > typename... Extensions>
void LC::Util::Task< R, Extensions >::promise_type::DecRef ( )
inline

Definition at line 186 of file task.h.

References LC::Util::detail::PromiseBase::Refs_.

◆ final_suspend()

template<typename R, template< typename > typename... Extensions>
auto LC::Util::Task< R, Extensions >::promise_type::final_suspend ( )
inlinenoexcept

Definition at line 174 of file task.h.

◆ get_return_object()

template<typename R, template< typename > typename... Extensions>
Task LC::Util::Task< R, Extensions >::promise_type::get_return_object ( )
inline

Definition at line 167 of file task.h.

References LC::Util::Task< R, Extensions >::Task().

Here is the call graph for this function:

◆ GetAddress()

template<typename R, template< typename > typename... Extensions>
auto LC::Util::Task< R, Extensions >::promise_type::GetAddress ( )
inline

Definition at line 165 of file task.h.

◆ IncRef()

template<typename R, template< typename > typename... Extensions>
void LC::Util::Task< R, Extensions >::promise_type::IncRef ( )
inline

Definition at line 181 of file task.h.

References LC::Util::detail::PromiseBase::Refs_.

◆ initial_suspend()

template<typename R, template< typename > typename... Extensions>
std::suspend_never LC::Util::Task< R, Extensions >::promise_type::initial_suspend ( ) const
inlinenoexcept

Definition at line 172 of file task.h.

◆ unhandled_exception()

template<typename R, template< typename > typename... Extensions>
void LC::Util::Task< R, Extensions >::promise_type::unhandled_exception ( )
inline

Definition at line 176 of file task.h.

References LC::Util::detail::PromiseBase::Exception_.


The documentation for this struct was generated from the following file:
  • /home/abuild/rpmbuild/BUILD/leechcraft-doc-0.6.70+git.18808.g3467692359-build/leechcraft-0.6.70-18808-g3467692359/src/util/threads/coro/task.h