|
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 () &&noexcept |
| 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::UniqueCorePtr< V, E > & | GetCore () noexcept |
| Method that get internal Core state. | |
| Task (detail::UniqueCorePtr< V, E > core) noexcept | |
Provides a mechanism to schedule the some async operations TODO(MBkkt) add description.
|
defaultnoexcept |
|
defaultnoexcept |
Definition at line 40 of file task.hpp.
References yaclib::Task< V, E >::Cancel(), and yaclib::Task< V, E >::Valid().
|
inlinenoexcept |
Definition at line 88 of file task.hpp.
References yaclib::MakeContract(), and yaclib::MakeInline().
Referenced by yaclib::Task< V, E >::~Task().
Definition at line 92 of file task.hpp.
References yaclib::detail::MakeDrop(), yaclib::detail::Start(), yaclib::Task< V, E >::Valid(), and YACLIB_ASSERT.
|
inlinenoexcept |
Definition at line 98 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 55 of file task.hpp.
References yaclib::Task< V, E >::Valid(), and YACLIB_ASSERT.
Referenced by yaclib::Task< V, E >::Then(), yaclib::Task< V, E >::Then(), yaclib::Task< V, E >::ThenInline(), yaclib::Task< V, E >::Touch(), and yaclib::Task< V, E >::Touch().
|
inline |
Definition at line 82 of file task.hpp.
References yaclib::MakeContract(), yaclib::Task< V, E >::Ready(), and YACLIB_ASSERT.
|
inline |
Definition at line 70 of file task.hpp.
References yaclib::MakeContract(), yaclib::Task< V, E >::Ready(), and YACLIB_ASSERT.
|
inline |
Definition at line 76 of file task.hpp.
References yaclib::MakeContract(), yaclib::Task< V, E >::Ready(), and YACLIB_ASSERT.
|
inlinenoexcept |
Definition at line 105 of file task.hpp.
References yaclib::detail::Start(), yaclib::Task< V, E >::Valid(), and YACLIB_ASSERT.
|
inlinenoexcept |
Definition at line 110 of file task.hpp.
References yaclib::MakeContract(), yaclib::detail::Start(), yaclib::Task< V, E >::Valid(), and YACLIB_ASSERT.
Definition at line 128 of file task.hpp.
References yaclib::Task< V, E >::Ready(), and YACLIB_ASSERT.
|
inlinenoexcept |
Definition at line 124 of file task.hpp.
References yaclib::Task< V, E >::Ready(), and YACLIB_ASSERT.
Definition at line 46 of file task.hpp.
Referenced by yaclib::Task< V, E >::Detach(), yaclib::Task< V, E >::Detach(), yaclib::Task< V, E >::Ready(), yaclib::Task< V, E >::ToFuture(), yaclib::Task< V, E >::ToFuture(), and yaclib::Task< V, E >::~Task().