diff options
author | Murray Cumming <murrayc@murrayc.com> | 2016-01-14 21:56:46 +0100 |
---|---|---|
committer | Murray Cumming <murrayc@murrayc.com> | 2016-03-01 22:27:42 +0100 |
commit | 8a2dddc78c0db749985eb6e11eeddfd63e8e450e (patch) | |
tree | 9e770cd3a4c87af22fd8450af7a7820d72ce4787 | |
parent | e130782e96f9c712f0e206192905a08336bbed2d (diff) | |
download | sigc++-8a2dddc78c0db749985eb6e11eeddfd63e8e450e.tar.gz |
slot.h.m4: visit_each specialization: Make this variadic.
-rw-r--r-- | 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); } |