summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* bind: Correct wrong use of type_trait_take_t.variadicMurray Cumming2016-03-011-2/+2
| | | | | | Instead of type_trait_pass_t. This was caused by an incorrect substitution in this commit: https://git.gnome.org/browse/libsigc++2/commit/?h=variadic&id=e0d2c10094c043294a9d07f8a6ab4e0e2611534f
* Remove can_deduce_result_type_with_decltype.Murray Cumming2016-01-161-37/+4
|
* Remove functor_base.Murray Cumming2016-01-151-28/+4
|
* Functors: Do not derive from functor_base.Murray Cumming2016-01-1511-76/+15
| | | | Because we don't need result_type any more.
* Remove deprecated SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPEMurray Cumming2016-01-151-23/+0
|
* Remove result_type typedefs.Murray Cumming2016-01-1515-79/+9
| | | | decltype(auto) seems to replace all need for this.
* signal_emit: Reorder the typedefs to fix the build.Murray Cumming2016-01-151-1/+1
|
* signal.h: Automatic deduction accumulator's operator() return type.Marcin Kolny2016-01-151-1/+1
|
* exception_catch_functor::operator():Murray Cumming2016-01-152-14/+18
| | | | | | | Remove the unnecessary operator()() overload. This did need me to change the test code so that it doesn't try to provide a catch function that returns something, but that seems more correct anyway.
* Another use of decltype(auto) for a return typeMurray Cumming2016-01-151-1/+1
|
* Correct some documentation.Murray Cumming2016-01-151-2/+0
|
* More use of decltype(auto) for return types.Murray Cumming2016-01-152-8/+11
|
* retype: Make this variadic.Murray Cumming2016-01-151-37/+24
| | | | | However, we still need to generate const/volatile/const_volatile/ bound_const/bound_volatile/bound_const_volatile versions.
* Updated .gitignore.Murray Cumming2016-01-151-0/+1
|
* slot.h: Remove comment about this being generated.Murray Cumming2016-01-151-2/+2
|
* slot.h: Use this as a normal .h file.Murray Cumming2016-01-153-28/+10
| | | | Instead of generating it from a .h.m4 file.
* slot: Make this fully variadic.Murray Cumming2016-01-151-290/+135
|
* slot.h.m4: make slot_call fully variadic.Murray Cumming2016-01-151-42/+36
|
* bind_functor::operator()(): Give this a dummy template parameter.Murray Cumming2016-01-152-4/+2
| | | | | And remove the m4 ifelse from slot.h.m4 because we can now resolve that operator() when calling it with an empty variadic parameter pack.
* slot.h.m4: visit_each specialization: Make this variadic.Murray Cumming2016-01-141-5/+5
|
* track_obj.h: Use this as a normal .h file.Murray Cumming2016-01-143-33/+13
| | | | Instead of genrating it from a .h.m4 file.
* track_obj.h.m4: Make this variadic.Murray Cumming2016-01-145-98/+312
| | | | | | This uses a tuple_for_each_const<>() utility taken from here: https://github.com/murraycu/murrayc-tuple-utils/tree/master/tuple-utils for the visit_each() specialization.
* make_slot: Use decltype(auto) for return type.Murray Cumming2016-01-141-1/+1
|
* Replace some uses of result_type with decltype(auto).Murray Cumming2016-01-147-54/+35
|
* hide.h: Use this as a normal .h file.Murray Cumming2016-01-143-34/+10
| | | | Instead of generating it from an .h.m4 file.
* hide_functor: Make this fully variadic.Murray Cumming2016-01-141-77/+58
|
* hide.h.m4: hide_functor::operator(): Make this variadic.Murray Cumming2016-01-1412-41/+585
| | | | | | | | | | This uses some tuple manipulation utilities so that the variadic parameters with which we call a method can be based on the variadic parameters that the caller received, but not exactly. In this case, we need to replace an element in the middle of a tuple. There is probably a more efficient way to do this. For now, this is using copies of the tuple utilities from here: https://github.com/murraycu/murrayc-tuple-utils/tree/master/tuple-utils
* Remove code that used the SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD ↵Murray Cumming2016-01-141-4/+0
| | | | | | ifndefs. See the previous commit.
* Remove the SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD ifndefs.Murray Cumming2016-01-147-105/+0
| | | | | | | | | These were mostly for the Sun Forte (now Sun Studio) compiler. There is a good chance that these are no longer necessary with more recent compiler versions, and if not, this is one way to find out. They have duplicated code that makes porting to variadic templates awkward.
* test_acum_iter: Replace signal_accumulated with signal<>::accumulated.Murray Cumming2016-01-141-1/+1
| | | | | I've never noticed this sub-template before, but this syntax is arguably nicer.
* signal.h: Use this as a normal header file.Murray Cumming2016-01-143-39/+30
| | | | Instead of generating it from a .h.m4 file.
* signal: Make this fully variadic.Murray Cumming2016-01-141-142/+119
|
* signal.h.m4: Rename signal1/2/3/etc to signal_with_accumulator.Murray Cumming2016-01-142-156/+153
| | | | And make it fully variadic.
* signal1/2/3/etc: Make this variadic.Murray Cumming2016-01-141-14/+13
| | | | Though the separate generated signal1/2/3/etc still exist.
* signal1/2/3: Move T_accumulator to second position.Murray Cumming2016-01-141-8/+8
| | | | | Because it can't go at the end if we want to change the args to a variadic template pack.
* Remove useless SIGC_TYPEDEF_REDEFINE_ALLOWEDMurray Cumming2016-01-141-10/+0
|
* signal.h.m4: Make signal_emit fully variadic.Murray Cumming2016-01-141-246/+246
|
* signal_emit1/2/3/etc: Simplify call_type typedef.Murray Cumming2016-01-141-1/+1
|
* signal.h.m4: signal_emit1/2/3/etc: Make this variadic.Murray Cumming2016-01-141-70/+62
| | | | | | | | Though we still have the separate generated signal_emit1/2/3, etc. This is the first time that we need to use a tuple, and then std::index_sequence(), to call another method with the stored (in a tuple) parameter pack.
* signal.h.m4: signal_emit: Put the T_Accumulator before the args.Murray Cumming2016-01-141-7/+7
| | | | So the args can be variadic eventually.
* test_disconnect: Use slot<> instead of slot1<>.Murray Cumming2016-01-141-1/+1
| | | | Because we are trying to remove slot1,2,3, etc.
* fixMurray Cumming2016-01-141-0/+3
|
* slot.h.m4: Make slot1/2/3/etc variadic.Murray Cumming2016-01-141-14/+12
| | | | | While still having slot1/2/3/ themselves. This is lets us take another small step in the conversion to variadic templates.
* m4: Remove unused UPPER and LOWER functions.Murray Cumming2016-01-141-2/+0
|
* tests: Use = delete instead of private constructors.Murray Cumming2016-01-143-12/+28
| | | | To make classes non-copyable.
* test_ptr_fun: Comment out what doesn't work with g++.Murray Cumming2016-01-091-4/+16
| | | | | | | We probably need to get this working, but it already works with clang++ (I'm using clang++ 3.7), so I'm just doing this for now, with TODO comments, so I can move forwards. I'm using g++ 5.2.1 .
* bind(): Make this variadic.Murray Cumming2016-01-081-23/+17
| | | | | | Instead of generating many versions. bind_functor<> is not at all variadic yet.
* bind(): Move T_functor the start.Murray Cumming2016-01-081-1/+1
| | | | | | | This is different to the bind<number, ...> version but it's the only way to have a parameter pack at the end. Hopefully this version of bind() never needs to be called for specific template types.
* C++14: bind(): Use decltype(auto) for the return type.Murray Cumming2016-01-081-5/+2
| | | | This simplifies the code a bit.
* Rename deduce_result_type.h to adaptor_base.hMurray Cumming2016-01-083-2/+2
| | | | | Because that is all this file now contains. However, I suspect that we don't need adaptor_base at all now.