diff options
author | sergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-12-09 02:25:47 +0000 |
---|---|---|
committer | sergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-12-09 02:25:47 +0000 |
commit | 3e6d120bf18e6ba69373cc635e1e7dd46543ea33 (patch) | |
tree | 3353f324a4796ffc419f3468daf436866b0036fd /base/bind_internal.h | |
parent | d17d2fcf157bd17b810c25328a8e0960c9d1d834 (diff) | |
download | chromium_src-3e6d120bf18e6ba69373cc635e1e7dd46543ea33.zip chromium_src-3e6d120bf18e6ba69373cc635e1e7dd46543ea33.tar.gz chromium_src-3e6d120bf18e6ba69373cc635e1e7dd46543ea33.tar.bz2 |
Revert 113722 - Add Pass(), which implements move semantics, to scoped_ptr, scoped_array, and scoped_ptr_malloc.
This modification to the scopers implements the "moveable but not copyable" semantics that were introduced in C++11's unique_ptr<>.
With this, is now possible to use scopers as an argument type or a return type. This signifies, in the type system, transfer of ownership into a function or out of a function respectively. Calling, or returning such a function MUST use the temporary resulting from the scoper's Pass() function. You CANNOT just pass the scoper by copy as there is still no copy constructor or assignment operator; trying to do so will yield a compilation error.
This distinction makes it possible to avoid the implicit ownership transfer issues of auto_ptr, but still allow us to have compiler enforced ownership transfer.
Also adds a Passed() helper that allows using a scoper with Bind().
BUG=96118
TEST=new unittests
Review URL: http://codereview.chromium.org/8774032
TBR=ajwong@chromium.org
Review URL: http://codereview.chromium.org/8890060
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@113738 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/bind_internal.h')
-rw-r--r-- | base/bind_internal.h | 267 |
1 files changed, 78 insertions, 189 deletions
diff --git a/base/bind_internal.h b/base/bind_internal.h index 50ffaa5..ccd7ab2 100644 --- a/base/bind_internal.h +++ b/base/bind_internal.h @@ -76,6 +76,7 @@ namespace internal { // into the Bind() system, doing most of the type resolution. // There are ARITY BindState types. + // RunnableAdapter<> // // The RunnableAdapter<> templates provide a uniform interface for invoking @@ -166,7 +167,7 @@ class RunnableAdapter<R(*)(A1)> { } R Run(typename CallbackParamTraits<A1>::ForwardType a1) { - return function_(CallbackForward(a1)); + return function_(a1); } private: @@ -185,7 +186,7 @@ class RunnableAdapter<R(T::*)(A1)> { } R Run(T* object, typename CallbackParamTraits<A1>::ForwardType a1) { - return (object->*method_)(CallbackForward(a1)); + return (object->*method_)(a1); } private: @@ -204,7 +205,7 @@ class RunnableAdapter<R(T::*)(A1) const> { } R Run(const T* object, typename CallbackParamTraits<A1>::ForwardType a1) { - return (object->*method_)(CallbackForward(a1)); + return (object->*method_)(a1); } private: @@ -223,7 +224,7 @@ class RunnableAdapter<R(*)(A1, A2)> { R Run(typename CallbackParamTraits<A1>::ForwardType a1, typename CallbackParamTraits<A2>::ForwardType a2) { - return function_(CallbackForward(a1), CallbackForward(a2)); + return function_(a1, a2); } private: @@ -243,7 +244,7 @@ class RunnableAdapter<R(T::*)(A1, A2)> { R Run(T* object, typename CallbackParamTraits<A1>::ForwardType a1, typename CallbackParamTraits<A2>::ForwardType a2) { - return (object->*method_)(CallbackForward(a1), CallbackForward(a2)); + return (object->*method_)(a1, a2); } private: @@ -263,7 +264,7 @@ class RunnableAdapter<R(T::*)(A1, A2) const> { R Run(const T* object, typename CallbackParamTraits<A1>::ForwardType a1, typename CallbackParamTraits<A2>::ForwardType a2) { - return (object->*method_)(CallbackForward(a1), CallbackForward(a2)); + return (object->*method_)(a1, a2); } private: @@ -283,8 +284,7 @@ class RunnableAdapter<R(*)(A1, A2, A3)> { R Run(typename CallbackParamTraits<A1>::ForwardType a1, typename CallbackParamTraits<A2>::ForwardType a2, typename CallbackParamTraits<A3>::ForwardType a3) { - return function_(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3)); + return function_(a1, a2, a3); } private: @@ -305,8 +305,7 @@ class RunnableAdapter<R(T::*)(A1, A2, A3)> { R Run(T* object, typename CallbackParamTraits<A1>::ForwardType a1, typename CallbackParamTraits<A2>::ForwardType a2, typename CallbackParamTraits<A3>::ForwardType a3) { - return (object->*method_)(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3)); + return (object->*method_)(a1, a2, a3); } private: @@ -327,8 +326,7 @@ class RunnableAdapter<R(T::*)(A1, A2, A3) const> { R Run(const T* object, typename CallbackParamTraits<A1>::ForwardType a1, typename CallbackParamTraits<A2>::ForwardType a2, typename CallbackParamTraits<A3>::ForwardType a3) { - return (object->*method_)(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3)); + return (object->*method_)(a1, a2, a3); } private: @@ -349,8 +347,7 @@ class RunnableAdapter<R(*)(A1, A2, A3, A4)> { typename CallbackParamTraits<A2>::ForwardType a2, typename CallbackParamTraits<A3>::ForwardType a3, typename CallbackParamTraits<A4>::ForwardType a4) { - return function_(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4)); + return function_(a1, a2, a3, a4); } private: @@ -373,8 +370,7 @@ class RunnableAdapter<R(T::*)(A1, A2, A3, A4)> { typename CallbackParamTraits<A2>::ForwardType a2, typename CallbackParamTraits<A3>::ForwardType a3, typename CallbackParamTraits<A4>::ForwardType a4) { - return (object->*method_)(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4)); + return (object->*method_)(a1, a2, a3, a4); } private: @@ -397,8 +393,7 @@ class RunnableAdapter<R(T::*)(A1, A2, A3, A4) const> { typename CallbackParamTraits<A2>::ForwardType a2, typename CallbackParamTraits<A3>::ForwardType a3, typename CallbackParamTraits<A4>::ForwardType a4) { - return (object->*method_)(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4)); + return (object->*method_)(a1, a2, a3, a4); } private: @@ -421,8 +416,7 @@ class RunnableAdapter<R(*)(A1, A2, A3, A4, A5)> { typename CallbackParamTraits<A3>::ForwardType a3, typename CallbackParamTraits<A4>::ForwardType a4, typename CallbackParamTraits<A5>::ForwardType a5) { - return function_(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4), CallbackForward(a5)); + return function_(a1, a2, a3, a4, a5); } private: @@ -446,8 +440,7 @@ class RunnableAdapter<R(T::*)(A1, A2, A3, A4, A5)> { typename CallbackParamTraits<A3>::ForwardType a3, typename CallbackParamTraits<A4>::ForwardType a4, typename CallbackParamTraits<A5>::ForwardType a5) { - return (object->*method_)(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4), CallbackForward(a5)); + return (object->*method_)(a1, a2, a3, a4, a5); } private: @@ -471,8 +464,7 @@ class RunnableAdapter<R(T::*)(A1, A2, A3, A4, A5) const> { typename CallbackParamTraits<A3>::ForwardType a3, typename CallbackParamTraits<A4>::ForwardType a4, typename CallbackParamTraits<A5>::ForwardType a5) { - return (object->*method_)(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4), CallbackForward(a5)); + return (object->*method_)(a1, a2, a3, a4, a5); } private: @@ -496,9 +488,7 @@ class RunnableAdapter<R(*)(A1, A2, A3, A4, A5, A6)> { typename CallbackParamTraits<A4>::ForwardType a4, typename CallbackParamTraits<A5>::ForwardType a5, typename CallbackParamTraits<A6>::ForwardType a6) { - return function_(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), - CallbackForward(a6)); + return function_(a1, a2, a3, a4, a5, a6); } private: @@ -523,9 +513,7 @@ class RunnableAdapter<R(T::*)(A1, A2, A3, A4, A5, A6)> { typename CallbackParamTraits<A4>::ForwardType a4, typename CallbackParamTraits<A5>::ForwardType a5, typename CallbackParamTraits<A6>::ForwardType a6) { - return (object->*method_)(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), - CallbackForward(a6)); + return (object->*method_)(a1, a2, a3, a4, a5, a6); } private: @@ -550,9 +538,7 @@ class RunnableAdapter<R(T::*)(A1, A2, A3, A4, A5, A6) const> { typename CallbackParamTraits<A4>::ForwardType a4, typename CallbackParamTraits<A5>::ForwardType a5, typename CallbackParamTraits<A6>::ForwardType a6) { - return (object->*method_)(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), - CallbackForward(a6)); + return (object->*method_)(a1, a2, a3, a4, a5, a6); } private: @@ -577,9 +563,7 @@ class RunnableAdapter<R(*)(A1, A2, A3, A4, A5, A6, A7)> { typename CallbackParamTraits<A5>::ForwardType a5, typename CallbackParamTraits<A6>::ForwardType a6, typename CallbackParamTraits<A7>::ForwardType a7) { - return function_(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), - CallbackForward(a6), CallbackForward(a7)); + return function_(a1, a2, a3, a4, a5, a6, a7); } private: @@ -605,9 +589,7 @@ class RunnableAdapter<R(T::*)(A1, A2, A3, A4, A5, A6, A7)> { typename CallbackParamTraits<A5>::ForwardType a5, typename CallbackParamTraits<A6>::ForwardType a6, typename CallbackParamTraits<A7>::ForwardType a7) { - return (object->*method_)(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), - CallbackForward(a6), CallbackForward(a7)); + return (object->*method_)(a1, a2, a3, a4, a5, a6, a7); } private: @@ -633,9 +615,7 @@ class RunnableAdapter<R(T::*)(A1, A2, A3, A4, A5, A6, A7) const> { typename CallbackParamTraits<A5>::ForwardType a5, typename CallbackParamTraits<A6>::ForwardType a6, typename CallbackParamTraits<A7>::ForwardType a7) { - return (object->*method_)(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), - CallbackForward(a6), CallbackForward(a7)); + return (object->*method_)(a1, a2, a3, a4, a5, a6, a7); } private: @@ -857,7 +837,7 @@ template <typename ReturnType, typename Runnable,typename A1> struct InvokeHelper<false, ReturnType, Runnable, void(A1)> { static ReturnType MakeItSo(Runnable runnable, A1 a1) { - return runnable.Run(CallbackForward(a1)); + return runnable.Run(a1); } }; @@ -865,7 +845,7 @@ template <typename Runnable,typename A1> struct InvokeHelper<false, void, Runnable, void(A1)> { static void MakeItSo(Runnable runnable, A1 a1) { - runnable.Run(CallbackForward(a1)); + runnable.Run(a1); } }; @@ -877,7 +857,7 @@ struct InvokeHelper<true, void, Runnable, return; } - runnable.Run(CallbackForward(a1)); + runnable.Run(a1); } }; @@ -885,7 +865,7 @@ template <typename ReturnType, typename Runnable,typename A1, typename A2> struct InvokeHelper<false, ReturnType, Runnable, void(A1, A2)> { static ReturnType MakeItSo(Runnable runnable, A1 a1, A2 a2) { - return runnable.Run(CallbackForward(a1), CallbackForward(a2)); + return runnable.Run(a1, a2); } }; @@ -893,7 +873,7 @@ template <typename Runnable,typename A1, typename A2> struct InvokeHelper<false, void, Runnable, void(A1, A2)> { static void MakeItSo(Runnable runnable, A1 a1, A2 a2) { - runnable.Run(CallbackForward(a1), CallbackForward(a2)); + runnable.Run(a1, a2); } }; @@ -905,7 +885,7 @@ struct InvokeHelper<true, void, Runnable, return; } - runnable.Run(CallbackForward(a1), CallbackForward(a2)); + runnable.Run(a1, a2); } }; @@ -914,8 +894,7 @@ template <typename ReturnType, typename Runnable,typename A1, typename A2, struct InvokeHelper<false, ReturnType, Runnable, void(A1, A2, A3)> { static ReturnType MakeItSo(Runnable runnable, A1 a1, A2 a2, A3 a3) { - return runnable.Run(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3)); + return runnable.Run(a1, a2, a3); } }; @@ -923,7 +902,7 @@ template <typename Runnable,typename A1, typename A2, typename A3> struct InvokeHelper<false, void, Runnable, void(A1, A2, A3)> { static void MakeItSo(Runnable runnable, A1 a1, A2 a2, A3 a3) { - runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3)); + runnable.Run(a1, a2, a3); } }; @@ -935,7 +914,7 @@ struct InvokeHelper<true, void, Runnable, return; } - runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3)); + runnable.Run(a1, a2, a3); } }; @@ -944,8 +923,7 @@ template <typename ReturnType, typename Runnable,typename A1, typename A2, struct InvokeHelper<false, ReturnType, Runnable, void(A1, A2, A3, A4)> { static ReturnType MakeItSo(Runnable runnable, A1 a1, A2 a2, A3 a3, A4 a4) { - return runnable.Run(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4)); + return runnable.Run(a1, a2, a3, a4); } }; @@ -953,8 +931,7 @@ template <typename Runnable,typename A1, typename A2, typename A3, typename A4> struct InvokeHelper<false, void, Runnable, void(A1, A2, A3, A4)> { static void MakeItSo(Runnable runnable, A1 a1, A2 a2, A3 a3, A4 a4) { - runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), - CallbackForward(a4)); + runnable.Run(a1, a2, a3, a4); } }; @@ -966,8 +943,7 @@ struct InvokeHelper<true, void, Runnable, return; } - runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), - CallbackForward(a4)); + runnable.Run(a1, a2, a3, a4); } }; @@ -977,8 +953,7 @@ struct InvokeHelper<false, ReturnType, Runnable, void(A1, A2, A3, A4, A5)> { static ReturnType MakeItSo(Runnable runnable, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5) { - return runnable.Run(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4), CallbackForward(a5)); + return runnable.Run(a1, a2, a3, a4, a5); } }; @@ -987,8 +962,7 @@ template <typename Runnable,typename A1, typename A2, typename A3, typename A4, struct InvokeHelper<false, void, Runnable, void(A1, A2, A3, A4, A5)> { static void MakeItSo(Runnable runnable, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5) { - runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), - CallbackForward(a4), CallbackForward(a5)); + runnable.Run(a1, a2, a3, a4, a5); } }; @@ -1001,8 +975,7 @@ struct InvokeHelper<true, void, Runnable, return; } - runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), - CallbackForward(a4), CallbackForward(a5)); + runnable.Run(a1, a2, a3, a4, a5); } }; @@ -1012,9 +985,7 @@ struct InvokeHelper<false, ReturnType, Runnable, void(A1, A2, A3, A4, A5, A6)> { static ReturnType MakeItSo(Runnable runnable, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6) { - return runnable.Run(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), - CallbackForward(a6)); + return runnable.Run(a1, a2, a3, a4, a5, a6); } }; @@ -1024,8 +995,7 @@ struct InvokeHelper<false, void, Runnable, void(A1, A2, A3, A4, A5, A6)> { static void MakeItSo(Runnable runnable, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6) { - runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), - CallbackForward(a4), CallbackForward(a5), CallbackForward(a6)); + runnable.Run(a1, a2, a3, a4, a5, a6); } }; @@ -1039,8 +1009,7 @@ struct InvokeHelper<true, void, Runnable, return; } - runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), - CallbackForward(a4), CallbackForward(a5), CallbackForward(a6)); + runnable.Run(a1, a2, a3, a4, a5, a6); } }; @@ -1050,9 +1019,7 @@ struct InvokeHelper<false, ReturnType, Runnable, void(A1, A2, A3, A4, A5, A6, A7)> { static ReturnType MakeItSo(Runnable runnable, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7) { - return runnable.Run(CallbackForward(a1), CallbackForward(a2), - CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), - CallbackForward(a6), CallbackForward(a7)); + return runnable.Run(a1, a2, a3, a4, a5, a6, a7); } }; @@ -1062,9 +1029,7 @@ struct InvokeHelper<false, void, Runnable, void(A1, A2, A3, A4, A5, A6, A7)> { static void MakeItSo(Runnable runnable, A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7) { - runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), - CallbackForward(a4), CallbackForward(a5), CallbackForward(a6), - CallbackForward(a7)); + runnable.Run(a1, a2, a3, a4, a5, a6, a7); } }; @@ -1078,9 +1043,7 @@ struct InvokeHelper<true, void, Runnable, return; } - runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), - CallbackForward(a4), CallbackForward(a5), CallbackForward(a6), - CallbackForward(a7)); + runnable.Run(a1, a2, a3, a4, a5, a6, a7); } }; @@ -1143,7 +1106,7 @@ struct Invoker<0, StorageType, R(X1)> { return InvokeHelper<StorageType::IsWeakCall::value, R, typename StorageType::RunnableType, void(typename CallbackParamTraits<X1>::ForwardType x1)> - ::MakeItSo(storage->runnable_, CallbackForward(x1)); + ::MakeItSo(storage->runnable_, x1); } }; @@ -1167,7 +1130,7 @@ struct Invoker<1, StorageType, R(X1)> { return InvokeHelper<StorageType::IsWeakCall::value, R, typename StorageType::RunnableType, void(typename Bound1UnwrapTraits::ForwardType)> - ::MakeItSo(storage->runnable_, CallbackForward(x1)); + ::MakeItSo(storage->runnable_, x1); } }; @@ -1193,8 +1156,7 @@ struct Invoker<0, StorageType, R(X1, X2)> { typename StorageType::RunnableType, void(typename CallbackParamTraits<X1>::ForwardType x1, typename CallbackParamTraits<X2>::ForwardType x2)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2)); + ::MakeItSo(storage->runnable_, x1, x2); } }; @@ -1221,8 +1183,7 @@ struct Invoker<1, StorageType, R(X1, X2)> { typename StorageType::RunnableType, void(typename Bound1UnwrapTraits::ForwardType, typename CallbackParamTraits<X2>::ForwardType x2)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2)); + ::MakeItSo(storage->runnable_, x1, x2); } }; @@ -1250,8 +1211,7 @@ struct Invoker<2, StorageType, R(X1, X2)> { typename StorageType::RunnableType, void(typename Bound1UnwrapTraits::ForwardType, typename Bound2UnwrapTraits::ForwardType)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2)); + ::MakeItSo(storage->runnable_, x1, x2); } }; @@ -1281,8 +1241,7 @@ struct Invoker<0, StorageType, R(X1, X2, X3)> { void(typename CallbackParamTraits<X1>::ForwardType x1, typename CallbackParamTraits<X2>::ForwardType x2, typename CallbackParamTraits<X3>::ForwardType x3)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3)); + ::MakeItSo(storage->runnable_, x1, x2, x3); } }; @@ -1313,8 +1272,7 @@ struct Invoker<1, StorageType, R(X1, X2, X3)> { void(typename Bound1UnwrapTraits::ForwardType, typename CallbackParamTraits<X2>::ForwardType x2, typename CallbackParamTraits<X3>::ForwardType x3)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3)); + ::MakeItSo(storage->runnable_, x1, x2, x3); } }; @@ -1346,8 +1304,7 @@ struct Invoker<2, StorageType, R(X1, X2, X3)> { void(typename Bound1UnwrapTraits::ForwardType, typename Bound2UnwrapTraits::ForwardType, typename CallbackParamTraits<X3>::ForwardType x3)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3)); + ::MakeItSo(storage->runnable_, x1, x2, x3); } }; @@ -1380,8 +1337,7 @@ struct Invoker<3, StorageType, R(X1, X2, X3)> { void(typename Bound1UnwrapTraits::ForwardType, typename Bound2UnwrapTraits::ForwardType, typename Bound3UnwrapTraits::ForwardType)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3)); + ::MakeItSo(storage->runnable_, x1, x2, x3); } }; @@ -1414,9 +1370,7 @@ struct Invoker<0, StorageType, R(X1, X2, X3, X4)> { typename CallbackParamTraits<X2>::ForwardType x2, typename CallbackParamTraits<X3>::ForwardType x3, typename CallbackParamTraits<X4>::ForwardType x4)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4); } }; @@ -1450,9 +1404,7 @@ struct Invoker<1, StorageType, R(X1, X2, X3, X4)> { typename CallbackParamTraits<X2>::ForwardType x2, typename CallbackParamTraits<X3>::ForwardType x3, typename CallbackParamTraits<X4>::ForwardType x4)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4); } }; @@ -1487,9 +1439,7 @@ struct Invoker<2, StorageType, R(X1, X2, X3, X4)> { typename Bound2UnwrapTraits::ForwardType, typename CallbackParamTraits<X3>::ForwardType x3, typename CallbackParamTraits<X4>::ForwardType x4)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4); } }; @@ -1525,9 +1475,7 @@ struct Invoker<3, StorageType, R(X1, X2, X3, X4)> { typename Bound2UnwrapTraits::ForwardType, typename Bound3UnwrapTraits::ForwardType, typename CallbackParamTraits<X4>::ForwardType x4)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4); } }; @@ -1564,9 +1512,7 @@ struct Invoker<4, StorageType, R(X1, X2, X3, X4)> { typename Bound2UnwrapTraits::ForwardType, typename Bound3UnwrapTraits::ForwardType, typename Bound4UnwrapTraits::ForwardType)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4); } }; @@ -1602,9 +1548,7 @@ struct Invoker<0, StorageType, R(X1, X2, X3, X4, X5)> { typename CallbackParamTraits<X3>::ForwardType x3, typename CallbackParamTraits<X4>::ForwardType x4, typename CallbackParamTraits<X5>::ForwardType x5)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5); } }; @@ -1641,9 +1585,7 @@ struct Invoker<1, StorageType, R(X1, X2, X3, X4, X5)> { typename CallbackParamTraits<X3>::ForwardType x3, typename CallbackParamTraits<X4>::ForwardType x4, typename CallbackParamTraits<X5>::ForwardType x5)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5); } }; @@ -1681,9 +1623,7 @@ struct Invoker<2, StorageType, R(X1, X2, X3, X4, X5)> { typename CallbackParamTraits<X3>::ForwardType x3, typename CallbackParamTraits<X4>::ForwardType x4, typename CallbackParamTraits<X5>::ForwardType x5)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5); } }; @@ -1722,9 +1662,7 @@ struct Invoker<3, StorageType, R(X1, X2, X3, X4, X5)> { typename Bound3UnwrapTraits::ForwardType, typename CallbackParamTraits<X4>::ForwardType x4, typename CallbackParamTraits<X5>::ForwardType x5)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5); } }; @@ -1764,9 +1702,7 @@ struct Invoker<4, StorageType, R(X1, X2, X3, X4, X5)> { typename Bound3UnwrapTraits::ForwardType, typename Bound4UnwrapTraits::ForwardType, typename CallbackParamTraits<X5>::ForwardType x5)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5); } }; @@ -1807,9 +1743,7 @@ struct Invoker<5, StorageType, R(X1, X2, X3, X4, X5)> { typename Bound3UnwrapTraits::ForwardType, typename Bound4UnwrapTraits::ForwardType, typename Bound5UnwrapTraits::ForwardType)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5); } }; @@ -1848,10 +1782,7 @@ struct Invoker<0, StorageType, R(X1, X2, X3, X4, X5, X6)> { typename CallbackParamTraits<X4>::ForwardType x4, typename CallbackParamTraits<X5>::ForwardType x5, typename CallbackParamTraits<X6>::ForwardType x6)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6); } }; @@ -1891,10 +1822,7 @@ struct Invoker<1, StorageType, R(X1, X2, X3, X4, X5, X6)> { typename CallbackParamTraits<X4>::ForwardType x4, typename CallbackParamTraits<X5>::ForwardType x5, typename CallbackParamTraits<X6>::ForwardType x6)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6); } }; @@ -1935,10 +1863,7 @@ struct Invoker<2, StorageType, R(X1, X2, X3, X4, X5, X6)> { typename CallbackParamTraits<X4>::ForwardType x4, typename CallbackParamTraits<X5>::ForwardType x5, typename CallbackParamTraits<X6>::ForwardType x6)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6); } }; @@ -1980,10 +1905,7 @@ struct Invoker<3, StorageType, R(X1, X2, X3, X4, X5, X6)> { typename CallbackParamTraits<X4>::ForwardType x4, typename CallbackParamTraits<X5>::ForwardType x5, typename CallbackParamTraits<X6>::ForwardType x6)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6); } }; @@ -2026,10 +1948,7 @@ struct Invoker<4, StorageType, R(X1, X2, X3, X4, X5, X6)> { typename Bound4UnwrapTraits::ForwardType, typename CallbackParamTraits<X5>::ForwardType x5, typename CallbackParamTraits<X6>::ForwardType x6)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6); } }; @@ -2073,10 +1992,7 @@ struct Invoker<5, StorageType, R(X1, X2, X3, X4, X5, X6)> { typename Bound4UnwrapTraits::ForwardType, typename Bound5UnwrapTraits::ForwardType, typename CallbackParamTraits<X6>::ForwardType x6)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6); } }; @@ -2121,10 +2037,7 @@ struct Invoker<6, StorageType, R(X1, X2, X3, X4, X5, X6)> { typename Bound4UnwrapTraits::ForwardType, typename Bound5UnwrapTraits::ForwardType, typename Bound6UnwrapTraits::ForwardType)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6); } }; @@ -2166,10 +2079,7 @@ struct Invoker<0, StorageType, R(X1, X2, X3, X4, X5, X6, X7)> { typename CallbackParamTraits<X5>::ForwardType x5, typename CallbackParamTraits<X6>::ForwardType x6, typename CallbackParamTraits<X7>::ForwardType x7)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6), CallbackForward(x7)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6, x7); } }; @@ -2212,10 +2122,7 @@ struct Invoker<1, StorageType, R(X1, X2, X3, X4, X5, X6, X7)> { typename CallbackParamTraits<X5>::ForwardType x5, typename CallbackParamTraits<X6>::ForwardType x6, typename CallbackParamTraits<X7>::ForwardType x7)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6), CallbackForward(x7)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6, x7); } }; @@ -2259,10 +2166,7 @@ struct Invoker<2, StorageType, R(X1, X2, X3, X4, X5, X6, X7)> { typename CallbackParamTraits<X5>::ForwardType x5, typename CallbackParamTraits<X6>::ForwardType x6, typename CallbackParamTraits<X7>::ForwardType x7)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6), CallbackForward(x7)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6, x7); } }; @@ -2307,10 +2211,7 @@ struct Invoker<3, StorageType, R(X1, X2, X3, X4, X5, X6, X7)> { typename CallbackParamTraits<X5>::ForwardType x5, typename CallbackParamTraits<X6>::ForwardType x6, typename CallbackParamTraits<X7>::ForwardType x7)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6), CallbackForward(x7)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6, x7); } }; @@ -2356,10 +2257,7 @@ struct Invoker<4, StorageType, R(X1, X2, X3, X4, X5, X6, X7)> { typename CallbackParamTraits<X5>::ForwardType x5, typename CallbackParamTraits<X6>::ForwardType x6, typename CallbackParamTraits<X7>::ForwardType x7)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6), CallbackForward(x7)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6, x7); } }; @@ -2406,10 +2304,7 @@ struct Invoker<5, StorageType, R(X1, X2, X3, X4, X5, X6, X7)> { typename Bound5UnwrapTraits::ForwardType, typename CallbackParamTraits<X6>::ForwardType x6, typename CallbackParamTraits<X7>::ForwardType x7)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6), CallbackForward(x7)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6, x7); } }; @@ -2457,10 +2352,7 @@ struct Invoker<6, StorageType, R(X1, X2, X3, X4, X5, X6, X7)> { typename Bound5UnwrapTraits::ForwardType, typename Bound6UnwrapTraits::ForwardType, typename CallbackParamTraits<X7>::ForwardType x7)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6), CallbackForward(x7)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6, x7); } }; @@ -2509,10 +2401,7 @@ struct Invoker<7, StorageType, R(X1, X2, X3, X4, X5, X6, X7)> { typename Bound5UnwrapTraits::ForwardType, typename Bound6UnwrapTraits::ForwardType, typename Bound7UnwrapTraits::ForwardType)> - ::MakeItSo(storage->runnable_, CallbackForward(x1), - CallbackForward(x2), CallbackForward(x3), - CallbackForward(x4), CallbackForward(x5), - CallbackForward(x6), CallbackForward(x7)); + ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6, x7); } }; |