summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMurray Cumming <murrayc@murrayc.com>2016-01-14 21:56:46 +0100
committerMurray Cumming <murrayc@murrayc.com>2016-01-14 21:56:46 +0100
commit3f9578e706c17ec915b6245899f4159043e4a7b0 (patch)
treef0c2a0d7b83f4ff3e081af3831a756dab3620052
parent107e5317b3b400802c5eccb761e4ff54a707777b (diff)
downloadsigc++-3f9578e706c17ec915b6245899f4159043e4a7b0.tar.gz
slot.h.m4: visit_each specialization: Make this variadic.
-rw-r--r--sigc++/functors/macros/slot.h.m410
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);
}