|
YACLib
C++ library for concurrent tasks execution
|
#include <shared_future.hpp>
Public Types | |
| using | Handle = detail::SharedHandle |
| using | Core = detail::SharedCore< V, E > |
Public Member Functions | |
| SharedFutureBase ()=default | |
| bool | Valid () const noexcept |
| bool | Ready () const noexcept |
| Result< V, E > | Get () &&noexcept |
| void | Get () const &&=delete |
| const Result< V, E > & | Get () const &noexcept |
| Result< V, E > | Touch () &&noexcept |
| void | Touch () const &&=delete |
| const Result< V, E > & | Touch () const &noexcept |
| template<typename Func > | |
| auto | Then (IExecutor &e, Func &&f) const |
| void | Detach () &&noexcept |
| template<typename Func > | |
| void | SubscribeInline (Func &&f) const |
| template<typename Func > | |
| void | Subscribe (IExecutor &e, Func &&f) const |
| detail::SharedCorePtr< V, E > & | GetCore () noexcept |
| const detail::SharedCorePtr< V, E > & | GetCore () const noexcept |
| detail::SharedHandle | GetHandle () const noexcept |
Protected Member Functions | |
| SharedFutureBase (detail::SharedCorePtr< V, E > core) noexcept | |
Protected Attributes | |
| detail::SharedCorePtr< V, E > | _core |
Definition at line 14 of file shared_future.hpp.
| using yaclib::SharedFutureBase< V, E >::Core = detail::SharedCore<V, E> |
Definition at line 105 of file shared_future.hpp.
| using yaclib::SharedFutureBase< V, E >::Handle = detail::SharedHandle |
Definition at line 104 of file shared_future.hpp.
|
default |
|
inlineexplicitprotectednoexcept |
Definition at line 112 of file shared_future.hpp.
|
inlinenoexcept |
Definition at line 78 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core.
|
inlinenoexcept |
Definition at line 34 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core, yaclib::SharedFutureBase< V, E >::Valid(), yaclib::Wait(), and YACLIB_ASSERT.
|
inlinenoexcept |
Definition at line 46 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core, yaclib::SharedFutureBase< V, E >::Valid(), yaclib::Wait(), and YACLIB_ASSERT.
|
inlinenoexcept |
Definition at line 100 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core.
|
inlinenoexcept |
Definition at line 96 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core.
Referenced by yaclib::Split().
|
inlinenoexcept |
Definition at line 107 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core.
|
inlinenoexcept |
Definition at line 29 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core, yaclib::SharedFutureBase< V, E >::Valid(), and YACLIB_ASSERT.
Referenced by yaclib::SharedFutureBase< V, E >::Touch(), and yaclib::SharedFutureBase< V, E >::Touch().
|
inline |
Definition at line 89 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core, yaclib::IExecutor::Inline, yaclib::MakeContract(), and YACLIB_WARN.
|
inline |
Definition at line 83 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core, and yaclib::MakeContract().
|
inline |
Definition at line 71 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core, yaclib::IExecutor::Inline, yaclib::MakeContract(), and YACLIB_WARN.
|
inlinenoexcept |
Definition at line 52 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core, yaclib::SharedFutureBase< V, E >::Ready(), yaclib::SharedFutureBase< V, E >::Valid(), and YACLIB_ASSERT.
|
inlinenoexcept |
Definition at line 64 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core, yaclib::SharedFutureBase< V, E >::Ready(), yaclib::SharedFutureBase< V, E >::Valid(), and YACLIB_ASSERT.
|
inlinenoexcept |
Definition at line 25 of file shared_future.hpp.
References yaclib::SharedFutureBase< V, E >::_core.
Referenced by yaclib::SharedFutureBase< V, E >::Get(), yaclib::SharedFutureBase< V, E >::Get(), yaclib::SharedFutureBase< V, E >::Ready(), yaclib::SharedFutureBase< V, E >::Touch(), and yaclib::SharedFutureBase< V, E >::Touch().
|
protected |
Definition at line 115 of file shared_future.hpp.
Referenced by yaclib::SharedFutureBase< V, E >::Detach(), yaclib::SharedFutureBase< V, E >::Get(), yaclib::SharedFutureBase< V, E >::Get(), yaclib::SharedFutureBase< V, E >::GetCore(), yaclib::SharedFutureBase< V, E >::GetCore(), yaclib::SharedFutureBase< V, E >::GetHandle(), yaclib::SharedFutureBase< V, E >::Ready(), yaclib::SharedFutureBase< V, E >::Subscribe(), yaclib::SharedFutureBase< V, E >::SubscribeInline(), yaclib::SharedFutureBase< V, E >::Then(), yaclib::SharedFutureBase< V, E >::Touch(), yaclib::SharedFutureBase< V, E >::Touch(), and yaclib::SharedFutureBase< V, E >::Valid().