libzypp 17.36.1
zyppng::detail::AwaitImpl< ArgType, SignalProxy< SigR(SigT...)>(ArgType::*)()> Struct Template Reference

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

Inheritance diagram for zyppng::detail::AwaitImpl< ArgType, SignalProxy< SigR(SigT...)>(ArgType::*)()>:

Public Types

using SigGetter = SignalProxy<SigR(SigT...)> (ArgType::*)()
 
- Public Types inherited from zyppng::AsyncOp< std::shared_ptr< ArgType > >
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 S >
 AwaitImpl (S &&sigGet)
 
virtual ~AwaitImpl ()
 
void operator() (std::shared_ptr< ArgType > &&req)
 
- Public Member Functions inherited from zyppng::AsyncOp< std::shared_ptr< ArgType > >
 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

template<typename RetType = SigR>
std::enable_if_t< std::is_same_v< void, RetType >, RetTypesigHandler (SigT...)
 
template<typename RetType = SigR>
std::enable_if_t< !std::is_same_v< void, RetType >, RetTypesigHandler (SigT...)
 

Private Attributes

std::shared_ptr< ArgType_req
 
SigGetter _sigGet
 

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 ArgType, typename SigR, typename ... SigT>
struct zyppng::detail::AwaitImpl< ArgType, SignalProxy< SigR(SigT...)>(ArgType::*)()>

Definition at line 28 of file await.h.

Member Typedef Documentation

◆ SigGetter

template<typename ArgType , typename SigR , typename ... SigT>
using zyppng::detail::AwaitImpl< ArgType, SignalProxy< SigR(SigT...)>(ArgType::*)()>::SigGetter = SignalProxy<SigR(SigT...)> (ArgType::*)()

Definition at line 30 of file await.h.

Constructor & Destructor Documentation

◆ AwaitImpl()

template<typename ArgType , typename SigR , typename ... SigT>
template<typename S >
zyppng::detail::AwaitImpl< ArgType, SignalProxy< SigR(SigT...)>(ArgType::*)()>::AwaitImpl ( S && sigGet)
inline

Definition at line 33 of file await.h.

◆ ~AwaitImpl()

template<typename ArgType , typename SigR , typename ... SigT>
virtual zyppng::detail::AwaitImpl< ArgType, SignalProxy< SigR(SigT...)>(ArgType::*)()>::~AwaitImpl ( )
inlinevirtual

Definition at line 35 of file await.h.

Member Function Documentation

◆ operator()()

template<typename ArgType , typename SigR , typename ... SigT>
void zyppng::detail::AwaitImpl< ArgType, SignalProxy< SigR(SigT...)>(ArgType::*)()>::operator() ( std::shared_ptr< ArgType > && req)
inline

Definition at line 37 of file await.h.

◆ sigHandler() [1/2]

template<typename ArgType , typename SigR , typename ... SigT>
template<typename RetType = SigR>
std::enable_if_t< std::is_same_v< void, RetType >, RetType > zyppng::detail::AwaitImpl< ArgType, SignalProxy< SigR(SigT...)>(ArgType::*)()>::sigHandler ( SigT... )
inlineprivate

Definition at line 45 of file await.h.

◆ sigHandler() [2/2]

template<typename ArgType , typename SigR , typename ... SigT>
template<typename RetType = SigR>
std::enable_if_t< !std::is_same_v< void, RetType >, RetType > zyppng::detail::AwaitImpl< ArgType, SignalProxy< SigR(SigT...)>(ArgType::*)()>::sigHandler ( SigT... )
inlineprivate

Definition at line 51 of file await.h.

Member Data Documentation

◆ _req

template<typename ArgType , typename SigR , typename ... SigT>
std::shared_ptr<ArgType> zyppng::detail::AwaitImpl< ArgType, SignalProxy< SigR(SigT...)>(ArgType::*)()>::_req
private

Definition at line 56 of file await.h.

◆ _sigGet

template<typename ArgType , typename SigR , typename ... SigT>
SigGetter zyppng::detail::AwaitImpl< ArgType, SignalProxy< SigR(SigT...)>(ArgType::*)()>::_sigGet
private

Definition at line 57 of file await.h.


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