[libsigc++2/variadic_bind3: 21/45] slot.h.m4: visit_each specialization: Make this variadic.



commit becfafafa4be871a0c0291238cc8aa532af8d88c
Author: Murray Cumming <murrayc murrayc com>
Date:   Thu Jan 14 21:56:46 2016 +0100

    slot.h.m4: visit_each specialization: Make this variadic.

 sigc++/functors/macros/slot.h.m4 |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)
---
diff --git a/sigc++/functors/macros/slot.h.m4 b/sigc++/functors/macros/slot.h.m4
index b8fe21a..e1338a9 100644
--- a/sigc++/functors/macros/slot.h.m4
+++ b/sigc++/functors/macros/slot.h.m4
@@ -123,18 +123,18 @@ public:
  *
  * @ingroup slot
  */
-template <LIST(typename T_return, LOOP(typename T_arg%1, $1))>
-struct visitor<slot$1<LIST(T_return, LOOP(T_arg%1, $1))>>
+template <typename T_return, typename... T_arg>
+struct visitor<slot$1<T_return, T_arg...>>
 {
   static void do_visit_each(const internal::limit_derived_target<trackable*, internal::slot_do_bind>& 
_A_action,
-                            const slot$1<LIST(T_return, LOOP(T_arg%1, $1))>& _A_target)
+                            const slot$1<T_return, T_arg...>& _A_target)
   {
     if (_A_target.rep_ && _A_target.rep_->parent_ == nullptr)
     _A_target.rep_->set_parent(_A_action.action_.rep_, &internal::slot_rep::notify);
   }
 
   static void do_visit_each(const internal::limit_derived_target<trackable*, internal::slot_do_unbind>& 
_A_action,
-                            const slot$1<LIST(T_return, LOOP(T_arg%1, $1))>& _A_target)
+                            const slot$1<T_return, T_arg...>& _A_target)
   {
     if (_A_target.rep_ && _A_target.rep_->parent_ == _A_action.action_.rep_)
       _A_target.rep_->set_parent(nullptr, nullptr);
@@ -142,7 +142,7 @@ struct visitor<slot$1<LIST(T_return, LOOP(T_arg%1, $1))>>
 
   template <typename T_action>
   static void do_visit_each(const T_action& _A_action,
-                            const slot$1<LIST(T_return, LOOP(T_arg%1, $1))>& _A_target)
+                            const slot$1<T_return, T_arg...>& _A_target)
   {
     _A_action(_A_target);
   }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]