LeechCraft 0.6.70-18808-g3467692359
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
LC::Util::detail::TaskAwaiter< Promise > Struct Template Reference

#include "task.h"

Public Types

using Handle_t = std::coroutine_handle<Promise>

Public Member Functions

 TaskAwaiter (Handle_t subtask)
 TaskAwaiter (TaskAwaiter &&other) noexcept
 TaskAwaiter (const TaskAwaiter &)=delete
TaskAwaiteroperator= (const TaskAwaiter &)=delete
TaskAwaiteroperator= (TaskAwaiter &&other)=delete
 ~TaskAwaiter ()
bool await_ready () const noexcept
bool await_suspend (std::coroutine_handle<> handle)
auto await_resume ()

Public Attributes

Handle_t Subtask_
std::coroutine_handle OuterTask_

Detailed Description

template<typename Promise>
struct LC::Util::detail::TaskAwaiter< Promise >

Definition at line 63 of file task.h.

Member Typedef Documentation

◆ Handle_t

template<typename Promise>
using LC::Util::detail::TaskAwaiter< Promise >::Handle_t = std::coroutine_handle<Promise>

Definition at line 65 of file task.h.

Constructor & Destructor Documentation

◆ TaskAwaiter() [1/3]

template<typename Promise>
LC::Util::detail::TaskAwaiter< Promise >::TaskAwaiter ( Handle_t subtask)
inlineexplicit

Definition at line 70 of file task.h.

References Subtask_.

Referenced by TaskAwaiter(), TaskAwaiter(), operator=(), and operator=().

Here is the caller graph for this function:

◆ TaskAwaiter() [2/3]

template<typename Promise>
LC::Util::detail::TaskAwaiter< Promise >::TaskAwaiter ( TaskAwaiter< Promise > && other)
inlinenoexcept

Definition at line 77 of file task.h.

References TaskAwaiter(), and Subtask_.

Here is the call graph for this function:

◆ TaskAwaiter() [3/3]

template<typename Promise>
LC::Util::detail::TaskAwaiter< Promise >::TaskAwaiter ( const TaskAwaiter< Promise > & )
delete

References TaskAwaiter().

Here is the call graph for this function:

◆ ~TaskAwaiter()

template<typename Promise>
LC::Util::detail::TaskAwaiter< Promise >::~TaskAwaiter ( )
inline

Definition at line 87 of file task.h.

References OuterTask_, and Subtask_.

Member Function Documentation

◆ await_ready()

template<typename Promise>
bool LC::Util::detail::TaskAwaiter< Promise >::await_ready ( ) const
inlinenoexcept

Definition at line 100 of file task.h.

References Subtask_.

◆ await_resume()

template<typename Promise>
auto LC::Util::detail::TaskAwaiter< Promise >::await_resume ( )
inline

Definition at line 119 of file task.h.

References Subtask_.

◆ await_suspend()

template<typename Promise>
bool LC::Util::detail::TaskAwaiter< Promise >::await_suspend ( std::coroutine_handle<> handle)
inline

Definition at line 107 of file task.h.

References OuterTask_, and Subtask_.

◆ operator=() [1/2]

template<typename Promise>
TaskAwaiter & LC::Util::detail::TaskAwaiter< Promise >::operator= ( const TaskAwaiter< Promise > & )
delete

References TaskAwaiter().

Here is the call graph for this function:

◆ operator=() [2/2]

template<typename Promise>
TaskAwaiter & LC::Util::detail::TaskAwaiter< Promise >::operator= ( TaskAwaiter< Promise > && other)
delete

References TaskAwaiter().

Here is the call graph for this function:

Member Data Documentation

◆ OuterTask_

template<typename Promise>
std::coroutine_handle LC::Util::detail::TaskAwaiter< Promise >::OuterTask_

Definition at line 68 of file task.h.

Referenced by ~TaskAwaiter(), and await_suspend().

◆ Subtask_

template<typename Promise>
Handle_t LC::Util::detail::TaskAwaiter< Promise >::Subtask_

Definition at line 66 of file task.h.

Referenced by TaskAwaiter(), TaskAwaiter(), ~TaskAwaiter(), await_ready(), await_resume(), and await_suspend().


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