libzypp 17.36.1
zyppng::detail::AsyncToSyncResult< PrevRes, Callback, std::enable_if_t< is_sync_monad_cb_with_async_res_v< Callback, PrevRes > > > Struct Template Reference

#include <zypp-core/zyppng/pipelines/asyncresult.h>

Inheritance diagram for zyppng::detail::AsyncToSyncResult< PrevRes, Callback, std::enable_if_t< is_sync_monad_cb_with_async_res_v< Callback, PrevRes > > >:

Public Types

using value_type = typename remove_smart_ptr_t<std::invoke_result_t<Callback, PrevRes>>::value_type
 
- Public Types inherited from zyppng::AsyncOp< remove_smart_ptr_t< std::invoke_result_t< Callback, PrevRes > >::value_type >
using value_type
 
using Ptr
 
- Public Types inherited from zyppng::Base
using Ptr = std::shared_ptr<Base>
 
using WeakPtr = std::weak_ptr<Base>
 

Public Member Functions

template<typename CBType = Callback>
 AsyncToSyncResult (AsyncOpRef< PrevRes > &&prevTask, CBType &&cb)
 
 AsyncToSyncResult (const AsyncToSyncResult &other)=delete
 
AsyncToSyncResultoperator= (const AsyncToSyncResult &other)=delete
 
 AsyncToSyncResult (AsyncToSyncResult &&other)=delete
 
AsyncToSyncResultoperator= (AsyncToSyncResult &&other)=delete
 
virtual ~AsyncToSyncResult ()
 
void connect ()
 
- Public Member Functions inherited from zyppng::AsyncOp< remove_smart_ptr_t< std::invoke_result_t< Callback, PrevRes > >::value_type >
 AsyncOp ()=default
 
 AsyncOp (const AsyncOp &other)=delete
 
 AsyncOp (AsyncOp &&other) noexcept=default
 
AsyncOpoperator= (const AsyncOp &other)=delete
 
AsyncOpoperator= (AsyncOp &&other) noexcept=default
 
 ~AsyncOp () override
 
void setReady (value_type &&val)
 
bool isReady () const
 
void onReady (Fun &&cb)
 
value_typeget ()
 
- Public Member Functions inherited from zyppng::AsyncOpBase
virtual bool canCancel ()
 
virtual void cancel ()
 
SignalProxy< void()> sigStarted ()
 
SignalProxy< void()> sigReady ()
 
- Public Member Functions inherited from zyppng::Base
 Base ()
 
virtual ~Base ()
 
WeakPtr parent () const
 
void addChild (const Base::Ptr &child)
 
void removeChild (const Ptr &child)
 
const std::unordered_set< Ptr > & children () const
 
std::thread::id threadId () const
 
template<typename T >
std::vector< std::weak_ptr< T > > findChildren () const
 
template<typename T >
std::shared_ptr< T > shared_this () const
 
template<typename T >
std::shared_ptr< T > shared_this ()
 
template<typename T >
std::weak_ptr< T > weak_this () const
 
template<typename T >
std::weak_ptr< T > weak_this ()
 
template<typename SenderFunc , typename ReceiverFunc >
auto connect (SenderFunc &&sFun, typename internal::MemberFunction< ReceiverFunc >::ClassType &recv, ReceiverFunc &&rFunc)
 
template<typename SenderFunc , typename ReceiverFunc , typename ... Tracker>
std::enable_if_t< std::is_member_function_pointer_v< SenderFunc >, connectionconnectFunc (SenderFunc &&sFun, ReceiverFunc &&rFunc, const Tracker &...trackers)
 

Private Member Functions

void readyWasCalled (PrevRes res)
 

Private Attributes

AsyncOpRef< PrevRes_prevTask
 
Callback _myTask
 
AsyncOpRef< value_type_asyncResult
 

Additional Inherited Members

- Static Public Member Functions inherited from zyppng::Base
template<typename Obj , typename Functor >
static decltype(automake_base_slot (Obj *o, Functor &&f)
 
template<typename SenderFunc , typename ReceiverFunc >
static auto connect (typename internal::MemberFunction< SenderFunc >::ClassType &s, SenderFunc &&sFun, typename internal::MemberFunction< ReceiverFunc >::ClassType &recv, ReceiverFunc &&rFunc)
 
template<typename SenderFunc , typename ReceiverFunc , typename ... Tracker>
static auto connectFunc (typename internal::MemberFunction< SenderFunc >::ClassType &s, SenderFunc &&sFun, ReceiverFunc &&rFunc, const Tracker &...trackers)
 
- Public Attributes inherited from zyppng::AsyncOpBase
SignalProxy< void(const std::string &, int, int) sigProgress )()
 
- Protected Member Functions inherited from zyppng::Base
 Base (BasePrivate &dd)
 
- Protected Attributes inherited from zyppng::AsyncOpBase
Signal< void()> _sigStarted
 
Signal< void()> _sigReady
 
Signal< void(const std::string &, int, int) _sigProgress )
 
- Protected Attributes inherited from zyppng::Base
std::unique_ptr< BasePrivated_ptr
 

Detailed Description

template<typename PrevRes, typename Callback>
struct zyppng::detail::AsyncToSyncResult< PrevRes, Callback, std::enable_if_t< is_sync_monad_cb_with_async_res_v< Callback, PrevRes > > >

Definition at line 229 of file asyncresult.h.

Member Typedef Documentation

◆ value_type

template<typename PrevRes , typename Callback >
using zyppng::detail::AsyncToSyncResult< PrevRes, Callback, std::enable_if_t< is_sync_monad_cb_with_async_res_v< Callback, PrevRes > > >::value_type = typename remove_smart_ptr_t<std::invoke_result_t<Callback, PrevRes>>::value_type

Definition at line 232 of file asyncresult.h.

Constructor & Destructor Documentation

◆ AsyncToSyncResult() [1/3]

template<typename PrevRes , typename Callback >
template<typename CBType = Callback>
zyppng::detail::AsyncToSyncResult< PrevRes, Callback, std::enable_if_t< is_sync_monad_cb_with_async_res_v< Callback, PrevRes > > >::AsyncToSyncResult ( AsyncOpRef< PrevRes > && prevTask,
CBType && cb )
inline

Definition at line 236 of file asyncresult.h.

◆ AsyncToSyncResult() [2/3]

template<typename PrevRes , typename Callback >
zyppng::detail::AsyncToSyncResult< PrevRes, Callback, std::enable_if_t< is_sync_monad_cb_with_async_res_v< Callback, PrevRes > > >::AsyncToSyncResult ( const AsyncToSyncResult< PrevRes, Callback, std::enable_if_t< is_sync_monad_cb_with_async_res_v< Callback, PrevRes > > > & other)
delete

◆ AsyncToSyncResult() [3/3]

template<typename PrevRes , typename Callback >
zyppng::detail::AsyncToSyncResult< PrevRes, Callback, std::enable_if_t< is_sync_monad_cb_with_async_res_v< Callback, PrevRes > > >::AsyncToSyncResult ( AsyncToSyncResult< PrevRes, Callback, std::enable_if_t< is_sync_monad_cb_with_async_res_v< Callback, PrevRes > > > && other)
delete

◆ ~AsyncToSyncResult()

Definition at line 248 of file asyncresult.h.

Member Function Documentation

◆ operator=() [1/2]

◆ operator=() [2/2]

◆ connect()

template<typename PrevRes , typename Callback >
void zyppng::detail::AsyncToSyncResult< PrevRes, Callback, std::enable_if_t< is_sync_monad_cb_with_async_res_v< Callback, PrevRes > > >::connect ( )
inline

Definition at line 250 of file asyncresult.h.

◆ readyWasCalled()

template<typename PrevRes , typename Callback >
void zyppng::detail::AsyncToSyncResult< PrevRes, Callback, std::enable_if_t< is_sync_monad_cb_with_async_res_v< Callback, PrevRes > > >::readyWasCalled ( PrevRes res)
inlineprivate

Definition at line 260 of file asyncresult.h.

Member Data Documentation

◆ _prevTask

Definition at line 273 of file asyncresult.h.

◆ _myTask

template<typename PrevRes , typename Callback >
Callback zyppng::detail::AsyncToSyncResult< PrevRes, Callback, std::enable_if_t< is_sync_monad_cb_with_async_res_v< Callback, PrevRes > > >::_myTask
private

Definition at line 274 of file asyncresult.h.

◆ _asyncResult

Definition at line 275 of file asyncresult.h.


The documentation for this struct was generated from the following file: