[libsigcplusplus/variadic_mem_fun3: 5/148] *mem_functor(): Remove the numbered versions, leaving just variadic ones.
- From: Murray Cumming <murrayc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libsigcplusplus/variadic_mem_fun3: 5/148] *mem_functor(): Remove the numbered versions, leaving just variadic ones.
- Date: Mon, 7 Mar 2016 09:58:12 +0000 (UTC)
commit 5d8b2cdcd524aed13c133116764e68e7b6c90c62
Author: Murray Cumming <murrayc murrayc com>
Date: Thu Jan 7 17:14:14 2016 +0100
*mem_functor(): Remove the numbered versions, leaving just variadic ones.
Do not generate *mem_functor0 through *mem_functor7. Instead just
generate variadic *mem_functor<>.
We do still generate mem_functor, const_mem_functor and
const_volatile_mem_functor, which seems messy.
sigc++/adaptors/macros/retype.h.m4 | 6 +-
sigc++/functors/macros/functor_trait.h.m4 | 8 +-
sigc++/functors/macros/mem_fun.h.m4 | 148 +++++++++++++----------------
sigc++/macros/signal.h.m4 | 4 +-
tests/test_accumulated.cc | 4 +-
tests/test_disconnect.cc | 4 +-
tests/test_mem_fun.cc | 12 +-
tests/test_signal.cc | 2 +-
tests/test_size.cc | 4 +-
tests/test_trackable.cc | 2 +-
tests/test_trackable_move.cc | 4 +-
11 files changed, 91 insertions(+), 107 deletions(-)
---
diff --git a/sigc++/adaptors/macros/retype.h.m4 b/sigc++/adaptors/macros/retype.h.m4
index 0f3ab41..ced5cf9 100644
--- a/sigc++/adaptors/macros/retype.h.m4
+++ b/sigc++/adaptors/macros/retype.h.m4
@@ -67,9 +67,9 @@ define([RETYPE_MEM_FUNCTOR],[dnl
* @ingroup retype
*/
template <LIST(class T_return, class T_obj, LOOP(class T_arg%1, $1))>
-inline retype_functor<LIST($2[]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>, LOOP(T_arg%1, $1)) >
-retype(const $2[]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>& _A_functor)
-{ return retype_functor<LIST($2[]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>, LOOP(T_arg%1, $1))
+inline retype_functor<LIST($2[]mem_functor<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>, LOOP(T_arg%1, $1)) >
+retype(const $2[]mem_functor<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>& _A_functor)
+{ return retype_functor<LIST($2[]mem_functor<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>, LOOP(T_arg%1, $1)) >
(_A_functor); }
])
diff --git a/sigc++/functors/macros/functor_trait.h.m4 b/sigc++/functors/macros/functor_trait.h.m4
index 4c9d613..743a639 100644
--- a/sigc++/functors/macros/functor_trait.h.m4
+++ b/sigc++/functors/macros/functor_trait.h.m4
@@ -27,19 +27,19 @@ struct functor_trait<T_return (*)(LOOP(T_arg%1, $1)), false, false>
])
define([FUNCTOR_MEM_FUN],[dnl
-template <LIST(class T_return, class T_obj, LOOP(class T_arg%1, $1))> class mem_functor$1;
-template <LIST(class T_return, class T_obj, LOOP(class T_arg%1, $1))> class const_mem_functor$1;
+template <LIST(class T_return, class T_obj, class... T_arg)> class mem_functor;
+template <LIST(class T_return, class T_obj, class... T_arg)> class const_mem_functor;
template <LIST(LOOP(class T_arg%1, $1), class T_return, class T_obj)>
struct functor_trait<T_return (T_obj::*)(LOOP(T_arg%1, $1)), false, false>
{
typedef T_return result_type;
- typedef mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))> functor_type;
+ typedef mem_functor<LIST(T_return, T_obj, LOOP(T_arg%1, $1))> functor_type;
};
template <LIST(LOOP(class T_arg%1, $1), class T_return, class T_obj)>
struct functor_trait<T_return (T_obj::*)(LOOP(T_arg%1, $1)) const, false, false>
{
typedef T_return result_type;
- typedef const_mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))> functor_type;
+ typedef const_mem_functor<LIST(T_return, T_obj, LOOP(T_arg%1, $1))> functor_type;
};
])
diff --git a/sigc++/functors/macros/mem_fun.h.m4 b/sigc++/functors/macros/mem_fun.h.m4
index 90d1889..388daf5 100644
--- a/sigc++/functors/macros/mem_fun.h.m4
+++ b/sigc++/functors/macros/mem_fun.h.m4
@@ -19,49 +19,46 @@ divert(-1)
include(template.macros.m4)
define([MEMBER_FUNCTOR],[dnl
-/** [$2]mem_functor$1 wraps $4 methods with $1 argument(s).
- * Use the convenience function mem_fun() to create an instance of [$2]mem_functor$1.
+/** [$1]mem_functor wraps $3 methods with argument(s).
+ * Use the convenience function mem_fun() to create an instance of [$1]mem_functor.
*
* The following template arguments are used:dnl
-FOR(1,$1,[
- * - @e T_arg%1 Argument type used in the definition of operator()().])
+ * - @e T_arg... Argument types used in the definition of operator()().
* - @e T_return The return type of operator()().
* - @e T_obj The object type.
*
* @ingroup mem_fun
*/
-template <LIST(class T_return, class T_obj, LOOP(class T_arg%1, $1))>
-class [$2]mem_functor$1 : public functor_base
+template <LIST(class T_return, class T_obj, class... T_arg)>
+class [$1]mem_functor : public functor_base
{
public:
- typedef T_return (T_obj::*function_type)(LOOP(T_arg%1, $1)) $4;
+ typedef T_return (T_obj::*function_type)(T_arg...) $3;
typedef T_return result_type;
/// Constructs an invalid functor.
- [$2]mem_functor$1() : func_ptr_(nullptr) {}
+ [$1]mem_functor() : func_ptr_(nullptr) {}
- /** Constructs a [$2]mem_functor$1 object that wraps the passed method.
+ /** Constructs a [$1]mem_functor object that wraps the passed method.
* @param _A_func Pointer to method will be invoked from operator()().
*/
- explicit [$2]mem_functor$1(function_type _A_func) : func_ptr_(_A_func) {}
+ explicit [$1]mem_functor(function_type _A_func) : func_ptr_(_A_func) {}
/** Execute the wrapped method operating on the passed instance.
* @param _A_obj Pointer to instance the method should operate on.dnl
-FOR(1, $1,[
- * @param _A_a%1 Argument to be passed on to the method.])
+ * @param _A_a... Argument to be passed on to the method.
* @return The return value of the method invocation.
*/
- T_return operator()(LIST($3 T_obj* _A_obj, LOOP(type_trait_take_t<T_arg%1> _A_a%1, $1))) const
- { return (_A_obj->*(this->func_ptr_))(LOOP(_A_a%1, $1)); }
+ T_return operator()(LIST($2 T_obj* _A_obj, type_trait_take_t<T_arg>... _A_a)) const
+ { return (_A_obj->*(this->func_ptr_))(_A_a...); }
/** Execute the wrapped method operating on the passed instance.
* @param _A_obj Reference to instance the method should operate on.dnl
-FOR(1, $1,[
- * @param _A_a%1 Argument to be passed on to the method.])
+ * @param _A_a... Argument to be passed on to the method.
* @return The return value of the method invocation.
*/
- T_return operator()(LIST($3 T_obj& _A_obj, LOOP(type_trait_take_t<T_arg%1> _A_a%1, $1))) const
- { return (_A_obj.*func_ptr_)(LOOP(_A_a%1, $1)); }
+ T_return operator()(LIST($2 T_obj& _A_obj, type_trait_take_t<T_arg>... _A_a)) const
+ { return (_A_obj.*func_ptr_)(_A_a...); }
protected:
function_type func_ptr_;
@@ -70,71 +67,69 @@ protected:
])
define([BOUND_MEMBER_FUNCTOR],[dnl
-/** bound_[$2]mem_functor$1 encapsulates a $4 method with $1 arguments and an object instance.
- * Use the convenience function mem_fun() to create an instance of bound_[$2]mem_functor$1.
+/** bound_[$1]mem_functor encapsulates a $3 method with arguments and an object instance.
+ * Use the convenience function mem_fun() to create an instance of bound_[$1]mem_functor.
*
* The following template arguments are used:dnl
-FOR(1,$1,[
- * - @e T_arg%1 Argument type used in the definition of operator()().])
+ * - @e T_arg... Argument type used in the definition of operator()().
* - @e T_return The return type of operator()().
* - @e T_obj The object type.
*
* @ingroup mem_fun
*/
-template <LIST(class T_return, class T_obj, LOOP(class T_arg%1, $1))>
-class bound_[$2]mem_functor$1
- : public [$2]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>
+template <LIST(class T_return, class T_obj, class... T_arg)>
+class bound_[$1]mem_functor
+ : public [$1]mem_functor<LIST(T_return, T_obj, T_arg...)>
{
- typedef [$2]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))> base_type_;
+ typedef [$1]mem_functor<LIST(T_return, T_obj, T_arg...)> base_type_;
public:
typedef typename base_type_::function_type function_type;
- /** Constructs a bound_[$2]mem_functor$1 object that wraps the passed method.
+ /** Constructs a bound_[$1]mem_functor object that wraps the passed method.
* @param _A_obj Pointer to instance the method will operate on.
* @param _A_func Pointer to method will be invoked from operator()().
*/
- bound_[$2]mem_functor$1($3 T_obj* _A_obj, function_type _A_func)
+ bound_[$1]mem_functor($2 T_obj* _A_obj, function_type _A_func)
: base_type_(_A_func),
obj_(*_A_obj)
{}
- /** Constructs a bound_[$2]mem_functor$1 object that wraps the passed method.
+ /** Constructs a bound_[$1]mem_functor object that wraps the passed method.
* @param _A_obj Reference to instance the method will operate on.
* @param _A_func Pointer to method will be invoked from operator()().
*/
- bound_[$2]mem_functor$1($3 T_obj& _A_obj, function_type _A_func)
+ bound_[$1]mem_functor($2 T_obj& _A_obj, function_type _A_func)
: base_type_(_A_func),
obj_(_A_obj)
{}
/** Execute the wrapped method operating on the stored instance.dnl
-FOR(1, $1,[
- * @param _A_a%1 Argument to be passed on to the method.])
+ * @param _A_a... Argument to be passed on to the method.
* @return The return value of the method invocation.
*/
- T_return operator()(LOOP(type_trait_take_t<T_arg%1> _A_a%1, $1)) const
- { return (obj_.invoke().*(this->func_ptr_))(LOOP(_A_a%1, $1)); }
+ T_return operator()(type_trait_take_t<T_arg>... _A_a) const
+ { return (obj_.invoke().*(this->func_ptr_))(_A_a...); }
//protected:
// Reference to stored object instance.
// This is the handler object, such as TheObject in void TheObject::signal_handler().
- [$2]limit_reference<T_obj> obj_;
+ [$1]limit_reference<T_obj> obj_;
};
#ifndef DOXYGEN_SHOULD_SKIP_THIS
//template specialization of visitor<>::do_visit_each<>(action, functor):
/** Performs a functor on each of the targets of a functor.
- * The function overload for sigc::bound_[$2]mem_functor performs a functor
- * on the object instance stored in the sigc::bound_[$2]mem_functor object.
+ * The function overload for sigc::bound_[$1]mem_functor performs a functor
+ * on the object instance stored in the sigc::bound_[$1]mem_functor object.
*
* @ingroup mem_fun
*/
-template <LIST(class T_return, class T_obj, LOOP(class T_arg%1, $1))>
-struct visitor<bound_[$2]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))> >
+template <LIST(class T_return, class T_obj, class... T_arg)>
+struct visitor<bound_[$1]mem_functor<LIST(T_return, T_obj, T_arg...)> >
{
template <class T_action>
static void do_visit_each(const T_action& _A_action,
- const bound_[$2]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>&
_A_target)
+ const bound_[$1]mem_functor<LIST(T_return, T_obj, T_arg...)>& _A_target)
{
sigc::visit_each(_A_action, _A_target.obj_);
}
@@ -143,42 +138,42 @@ struct visitor<bound_[$2]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>
])
define([MEM_FUN],[dnl
-/** Creates a functor of type sigc::[$3]mem_functor$1 which wraps a $5 method.
+/** Creates a functor of type sigc::[$1]mem_functor which wraps a $3 method.
* @param _A_func Pointer to method that should be wrapped.
* @return Functor that executes _A_func on invokation.
*
* @ingroup mem_fun
*/
-template <LIST(LOOP(class T_arg%1, $1), class T_return, class T_obj)>
-inline [$3]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>
-mem_fun[]ifelse($2,, $1)(T_return (T_obj::*_A_func)(LOOP(T_arg%1,$1)) $5)
-{ return [$3]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>(_A_func); }
+template <LIST(class T_return, class T_obj, class... T_arg)>
+inline [$1]mem_functor<LIST(T_return, T_obj, T_arg...)>
+mem_fun(T_return (T_obj::*_A_func)(T_arg...) $3)
+{ return [$1]mem_functor<LIST(T_return, T_obj, T_arg...)>(_A_func); }
])
define([BOUND_MEM_FUN],[dnl
-/** Creates a functor of type sigc::bound_[$3]mem_functor$1 which encapsulates a method and an object
instance.
+/** Creates a functor of type sigc::bound_[$1]mem_functor which encapsulates a method and an object instance.
* @param _A_obj Pointer to object instance the functor should operate on.
* @param _A_func Pointer to method that should be wrapped.
* @return Functor that executes @e _A_func on invokation.
*
* @ingroup mem_fun
*/
-template <LIST(LOOP(class T_arg%1, $1), class T_return, class T_obj, class T_obj2)>
-inline bound_[$3]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>
-mem_fun[]ifelse($2,, $1)(/*$4*/ T_obj* _A_obj, T_return (T_obj2::*_A_func)(LOOP(T_arg%1,$1)) $5)
-{ return bound_[$3]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>(_A_obj, _A_func); }
+template <LIST(class T_return, class T_obj, class T_obj2, class... T_arg)>
+inline bound_[$1]mem_functor<LIST(T_return, T_obj, T_arg...)>
+mem_fun(/*$2*/ T_obj* _A_obj, T_return (T_obj2::*_A_func)(T_arg...) $3)
+{ return bound_[$1]mem_functor<LIST(T_return, T_obj, T_arg...)>(_A_obj, _A_func); }
-/** Creates a functor of type sigc::bound_[$3]mem_functor$1 which encapsulates a method and an object
instance.
+/** Creates a functor of type sigc::bound_[$1]mem_functor which encapsulates a method and an object instance.
* @param _A_obj Reference to object instance the functor should operate on.
* @param _A_func Pointer to method that should be wrapped.
* @return Functor that executes @e _A_func on invokation.
*
* @ingroup mem_fun
*/
-template <LIST(LOOP(class T_arg%1, $1), class T_return, class T_obj, class T_obj2)>
-inline bound_[$3]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>
-mem_fun[]ifelse($2,, $1)(/*$4*/ T_obj& _A_obj, T_return (T_obj2::*_A_func)(LOOP(T_arg%1,$1)) $5)
-{ return bound_[$3]mem_functor$1<LIST(T_return, T_obj, LOOP(T_arg%1, $1))>(_A_obj, _A_func); }
+template <LIST(class T_return, class T_obj, class T_obj2, class... T_arg)>
+inline bound_[$1]mem_functor<LIST(T_return, T_obj, T_arg...)>
+mem_fun(/*$2*/ T_obj& _A_obj, T_return (T_obj2::*_A_func)(T_arg...) $3)
+{ return bound_[$1]mem_functor<LIST(T_return, T_obj, T_arg...)>(_A_obj, _A_func); }
])
@@ -249,33 +244,22 @@ namespace sigc {
* @ingroup sigcfunctors
*/
-FOR(0,CALL_SIZE,[[MEMBER_FUNCTOR(%1,[],[],[])]])dnl
-FOR(0,CALL_SIZE,[[MEMBER_FUNCTOR(%1,[const_],[const],[const])]])dnl
-FOR(0,CALL_SIZE,[[MEMBER_FUNCTOR(%1,[volatile_],[],[volatile])]])dnl
-FOR(0,CALL_SIZE,[[MEMBER_FUNCTOR(%1,[const_volatile_],[const],[const volatile])]])dnl
-FOR(0,CALL_SIZE,[[BOUND_MEMBER_FUNCTOR(%1,[],[],[])]])dnl
-FOR(0,CALL_SIZE,[[BOUND_MEMBER_FUNCTOR(%1,[const_],[const],[const])]])dnl
-FOR(0,CALL_SIZE,[[BOUND_MEMBER_FUNCTOR(%1,[volatile_],[],[volatile])]])dnl
-FOR(0,CALL_SIZE,[[BOUND_MEMBER_FUNCTOR(%1,[const_volatile_],[const],[const volatile])]])dnl
+MEMBER_FUNCTOR([],[],[])
+MEMBER_FUNCTOR([const_],[const],[const])
+MEMBER_FUNCTOR([volatile_],[],[volatile])
+MEMBER_FUNCTOR([const_volatile_],[const],[const volatile])
+BOUND_MEMBER_FUNCTOR([],[],[])
+BOUND_MEMBER_FUNCTOR([const_],[const],[const])
+BOUND_MEMBER_FUNCTOR([volatile_],[],[volatile])
+BOUND_MEMBER_FUNCTOR([const_volatile_],[const],[const volatile])
-// numbered
-FOR(0,CALL_SIZE,[[MEM_FUN(%1,,[],[],[])]])dnl
-FOR(0,CALL_SIZE,[[MEM_FUN(%1,,[const_],[const],[const])]])dnl
-FOR(0,CALL_SIZE,[[MEM_FUN(%1,,[volatile_],[],[volatile])]])dnl
-FOR(0,CALL_SIZE,[[MEM_FUN(%1,,[const_volatile_],[const],[const volatile])]])dnl
-FOR(0,CALL_SIZE,[[BOUND_MEM_FUN(%1,,[],[],[])]])dnl
-FOR(0,CALL_SIZE,[[BOUND_MEM_FUN(%1,,[const_],[const],[const])]])dnl
-FOR(0,CALL_SIZE,[[BOUND_MEM_FUN(%1,,[volatile_],[],[volatile])]])dnl
-FOR(0,CALL_SIZE,[[BOUND_MEM_FUN(%1,,[const_volatile_],[const],[const volatile])]])dnl
-
-// unnumbered
-FOR(0,CALL_SIZE,[[MEM_FUN(%1,1,[],[],[])]])dnl
-FOR(0,CALL_SIZE,[[MEM_FUN(%1,1,[const_],[const],[const])]])dnl
-FOR(0,CALL_SIZE,[[MEM_FUN(%1,1,[volatile_],[],[volatile])]])dnl
-FOR(0,CALL_SIZE,[[MEM_FUN(%1,1,[const_volatile_],[const],[const volatile])]])dnl
-FOR(0,CALL_SIZE,[[BOUND_MEM_FUN(%1,1,[],[],[])]])dnl
-FOR(0,CALL_SIZE,[[BOUND_MEM_FUN(%1,1,[const_],[const],[const])]])dnl
-FOR(0,CALL_SIZE,[[BOUND_MEM_FUN(%1,1,[volatile_],[],[volatile])]])dnl
-FOR(0,CALL_SIZE,[[BOUND_MEM_FUN(%1,1,[const_volatile_],[const],[const volatile])]])dnl
+MEM_FUN([],[],[])
+MEM_FUN([const_],[const],[const])
+MEM_FUN([volatile_],[],[volatile])
+MEM_FUN([const_volatile_],[const],[const volatile])
+BOUND_MEM_FUN([],[],[])
+BOUND_MEM_FUN([const_],[const],[const])
+BOUND_MEM_FUN([volatile_],[],[volatile])
+BOUND_MEM_FUN([const_volatile_],[const],[const volatile])
} /* namespace sigc */
diff --git a/sigc++/macros/signal.h.m4 b/sigc++/macros/signal.h.m4
index b9e2a2b..f8feb7b 100644
--- a/sigc++/macros/signal.h.m4
+++ b/sigc++/macros/signal.h.m4
@@ -378,8 +378,8 @@ FOR(1, $1,[
* yields the same result.
* @return A functor that calls emit() on this signal.
*/
- bound_const_mem_functor$1<LIST(result_type, signal$1, LOOP(type_trait_take_t<T_arg%1>, $1))> make_slot()
const
- { return bound_const_mem_functor$1<LIST(result_type, signal$1, LOOP(type_trait_take_t<T_arg%1>,
$1))>(this, &signal$1::emit); }
+ bound_const_mem_functor<LIST(result_type, signal$1, LOOP(type_trait_take_t<T_arg%1>, $1))> make_slot()
const
+ { return bound_const_mem_functor<LIST(result_type, signal$1, LOOP(type_trait_take_t<T_arg%1>,
$1))>(this, &signal$1::emit); }
/** Creates an STL-style interface for the signal's list of slots.
* This interface supports iteration, insertion and removal of slots.
diff --git a/tests/test_accumulated.cc b/tests/test_accumulated.cc
index 06e6606..436ace4 100644
--- a/tests/test_accumulated.cc
+++ b/tests/test_accumulated.cc
@@ -89,11 +89,11 @@ int main(int argc, char* argv[])
A a;
sig.connect(sigc::ptr_fun(&foo));
- sig.connect(sigc::mem_fun1(&a, &A::foo));
+ sig.connect(sigc::mem_fun(&a, &A::foo));
sig.connect(sigc::ptr_fun(&bar));
sig_vec.connect(sigc::ptr_fun(&foo));
- sig_vec.connect(sigc::mem_fun1(&a, &A::foo));
+ sig_vec.connect(sigc::mem_fun(&a, &A::foo));
sig_vec.connect(sigc::ptr_fun(&bar));
double dres = sig(1);
diff --git a/tests/test_disconnect.cc b/tests/test_disconnect.cc
index 0c11765..44fd8e6 100644
--- a/tests/test_disconnect.cc
+++ b/tests/test_disconnect.cc
@@ -89,7 +89,7 @@ int main(int argc, char* argv[])
{
A a;
- sig.connect(sigc::mem_fun1(&a, &A::foo));
+ sig.connect(sigc::mem_fun(&a, &A::foo));
confoo = sig.connect(sigc::ptr_fun(&foo));
conbar = sig.connect(sigc::ptr_fun(&bar));
result_stream << "sig is connected to A::foo, foo, bar (size=" << sig.size() << "): ";
@@ -103,7 +103,7 @@ int main(int argc, char* argv[])
util->check_result(result_stream, "sig is connected to foo, bar (size=2): foo(2) bar(2) ");
A a; // iterators stay valid after further connections.
- cona = sig.slots().insert(conbar, sigc::mem_fun1(&a, &A::foo));
+ cona = sig.slots().insert(conbar, sigc::mem_fun(&a, &A::foo));
result_stream << "sig is connected to foo, A::foo, bar (size=" << sig.size() << "): ";
sig(3);
util->check_result(result_stream,
diff --git a/tests/test_mem_fun.cc b/tests/test_mem_fun.cc
index 32e568b..b8fe8b9 100644
--- a/tests/test_mem_fun.cc
+++ b/tests/test_mem_fun.cc
@@ -116,16 +116,16 @@ int main(int argc, char* argv[])
#if ENABLE_TEST_OF_OVERLOADED_FUNCTIONS
{ /* test overloaded */
test t;
- sigc::mem_fun1<char>(&test::foo_overloaded)(&t, 7);
+ sigc::mem_fun<char>(&test::foo_overloaded)(&t, 7);
util->check_result(result_stream, "test::foo_overloaded(char 7)");
- sigc::mem_fun1<short>(&test::foo_overloaded)(&t, 7);
+ sigc::mem_fun<short>(&test::foo_overloaded)(&t, 7);
util->check_result(result_stream, "test::foo_overloaded(short 7)");
- //sigc::mem_fun1(&test::foo_overloaded)(&t, 7);
+ //sigc::mem_fun(&test::foo_overloaded)(&t, 7);
//util->check_result(result_stream, "test::foo_overloaded(short 7)");
- sigc::mem_fun2(&test::foo_overloaded)(&t, 7, 8);
+ sigc::mem_fun(&test::foo_overloaded)(&t, 7, 8);
util->check_result(result_stream, "test::foo_overloaded(int 7, int 8)");
}
#endif
@@ -150,10 +150,10 @@ int main(int argc, char* argv[])
util->check_result(result_stream, "test::foo_volatile(float 9)");
#if ENABLE_TEST_OF_OVERLOADED_FUNCTIONS
- sigc::mem_fun2(t, &test::foo_overloaded)(9, 10);
+ sigc::mem_fun(t, &test::foo_overloaded)(9, 10);
util->check_result(result_stream, "test::foo_overloaded(int 9, int 10)");
- sigc::mem_fun2(&t, &test::foo_overloaded)(9, 10);
+ sigc::mem_fun(&t, &test::foo_overloaded)(9, 10);
util->check_result(result_stream, "test::foo_overloaded(int 9, int 10)");
#endif
}
diff --git a/tests/test_signal.cc b/tests/test_signal.cc
index c8086be..ecb5a55 100644
--- a/tests/test_signal.cc
+++ b/tests/test_signal.cc
@@ -62,7 +62,7 @@ int main(int argc, char* argv[])
{
A a;
sig.connect(sigc::ptr_fun(&foo));
- sig.connect(sigc::mem_fun1(&a, &A::foo));
+ sig.connect(sigc::mem_fun(&a, &A::foo));
sig.connect(sigc::ptr_fun(&bar));
sig(1);
result_stream << sig.size();
diff --git a/tests/test_size.cc b/tests/test_size.cc
index c902462..7bdca1a 100644
--- a/tests/test_size.cc
+++ b/tests/test_size.cc
@@ -43,8 +43,8 @@ int main(int argc, char* argv[])
std::cout << " trackable_callback: " << sizeof(sigc::internal::trackable_callback) << std::endl;
std::cout << " trackable_callback_list: " << sizeof(sigc::internal::trackable_callback_list) <<
std::endl;
std::cout << " slot_rep: " << sizeof(sigc::internal::slot_rep) << std::endl;
- std::cout << " typed_slot_rep<mem_functor0<void,A> >: "
- << sizeof(sigc::internal::typed_slot_rep<sigc::mem_functor0<void,A> >) << std::endl;
+ std::cout << " typed_slot_rep<mem_functor<void,A> >: "
+ << sizeof(sigc::internal::typed_slot_rep<sigc::mem_functor<void,A> >) << std::endl;
std::cout << " signal_impl: " << sizeof(sigc::internal::signal_impl) << std::endl;
}
return util->get_result_and_delete_instance() ? EXIT_SUCCESS : EXIT_FAILURE;
diff --git a/tests/test_trackable.cc b/tests/test_trackable.cc
index 159aeeb..fe7ecb1 100644
--- a/tests/test_trackable.cc
+++ b/tests/test_trackable.cc
@@ -38,7 +38,7 @@ int main(int argc, char* argv[])
{
my_class t;
t.i = 10;
- sl = sigc::mem_fun0(&t, &my_class::foo);
+ sl = sigc::mem_fun(&t, &my_class::foo);
sl();
util->check_result(result_stream, "10");
}
diff --git a/tests/test_trackable_move.cc b/tests/test_trackable_move.cc
index 2d16273..6ed2e26 100644
--- a/tests/test_trackable_move.cc
+++ b/tests/test_trackable_move.cc
@@ -61,7 +61,7 @@ int main(int argc, char* argv[])
{
my_class t;
t.i = 10;
- sl = sigc::mem_fun0(&t, &my_class::foo);
+ sl = sigc::mem_fun(&t, &my_class::foo);
sl();
util->check_result(result_stream, "10");
@@ -70,7 +70,7 @@ int main(int argc, char* argv[])
t2.i = 15;
result_stream.clear();
- sl = sigc::mem_fun0(&t2, &my_class::foo);
+ sl = sigc::mem_fun(&t2, &my_class::foo);
sl();
util->check_result(result_stream, "15");
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]