YACLib
C++ library for concurrent tasks execution
|
Provides a mechanism to schedule the some async operations TODO(MBkkt) add description. More...
#include <task.hpp>
Public Member Functions | |
Task (const Task &)=delete | |
Task & | operator= (const Task &)=delete |
Task (Task &&other) noexcept=default | |
Task & | operator= (Task &&other) noexcept=default |
Task () noexcept=default | |
~Task () noexcept | |
bool | Valid () const &noexcept |
bool | Ready () const &noexcept |
Check that Result that corresponds to this Task is computed. | |
Task< V, E > | On (std::nullptr_t) &&noexcept |
Do nothing, just for compatibility with FutureOn TODO(MBkkt) think about force On/Detach/ToFuture: It's able to set passed executor to previous nullptr/all/head/etc or replace. | |
template<typename Func > | |
auto | Then (IExecutor &e, Func &&f) && |
template<typename Func > | |
auto | ThenInline (Func &&f) && |
template<typename Func > | |
auto | Then (Func &&f) && |
void | Cancel () && |
void | Detach () &&noexcept |
void | Detach (IExecutor &e) &&noexcept |
Future< V, E > | ToFuture () &&noexcept |
FutureOn< V, E > | ToFuture (IExecutor &e) &&noexcept |
Result< V, E > | Get () &&noexcept |
void | Touch () &=delete |
void | Touch () const &&=delete |
const Result< V, E > & | Touch () const &noexcept |
Result< V, E > | Touch () &&noexcept |
detail::ResultCorePtr< V, E > & | GetCore () noexcept |
Method that get internal Core state. | |
Task (detail::ResultCorePtr< V, E > core) noexcept | |
Provides a mechanism to schedule the some async operations TODO(MBkkt) add description.
|
defaultnoexcept |
|
defaultnoexcept |
Definition at line 38 of file task.hpp.
References yaclib::Task< V, E >::Cancel(), and yaclib::Task< V, E >::Valid().
|
inlinenoexcept |
Definition at line 134 of file task.hpp.
References yaclib::MakeContract().
Definition at line 82 of file task.hpp.
References yaclib::MakeContract(), and yaclib::MakeInline().
Referenced by yaclib::Task< V, E >::~Task().
Definition at line 86 of file task.hpp.
References yaclib::MakeContract(), yaclib::detail::MakeDrop(), yaclib::detail::Start(), yaclib::Task< V, E >::Valid(), and YACLIB_ASSERT.
|
inlinenoexcept |
Definition at line 92 of file task.hpp.
References yaclib::MakeContract(), yaclib::detail::MakeDrop(), yaclib::detail::Start(), yaclib::Task< V, E >::Valid(), and YACLIB_ASSERT.
|
inlinenoexcept |
|
inlinenoexcept |
|
delete |
|
defaultnoexcept |
Check that Result that corresponds to this Task is computed.
Definition at line 53 of file task.hpp.
References yaclib::Task< V, E >::Valid(), and YACLIB_ASSERT.
Referenced by yaclib::Task< V, E >::Touch(), and yaclib::Task< V, E >::Touch().
|
inline |
Definition at line 77 of file task.hpp.
References yaclib::MakeContract().
|
inline |
Definition at line 68 of file task.hpp.
References yaclib::MakeContract().
|
inline |
Definition at line 72 of file task.hpp.
References yaclib::MakeContract().
|
inlinenoexcept |
Definition at line 99 of file task.hpp.
References yaclib::detail::Start().
|
inlinenoexcept |
Definition at line 103 of file task.hpp.
References yaclib::MakeContract(), and yaclib::detail::Start().
Definition at line 120 of file task.hpp.
References yaclib::MakeContract(), yaclib::Task< V, E >::Ready(), and YACLIB_ASSERT.
|
inlinenoexcept |
Definition at line 116 of file task.hpp.
References yaclib::Task< V, E >::Ready(), and YACLIB_ASSERT.
Definition at line 44 of file task.hpp.
Referenced by yaclib::Task< V, E >::Detach(), yaclib::Task< V, E >::Detach(), yaclib::Task< V, E >::Ready(), and yaclib::Task< V, E >::~Task().