Index: base/bind_internal.h |
diff --git a/base/bind_internal.h b/base/bind_internal.h |
index ccd7ab2fbb87b9bc53e5d1f2768de703bbeeed61..50ffaa526787864e72138f3ae98d0b6597b8e635 100644 |
--- a/base/bind_internal.h |
+++ b/base/bind_internal.h |
@@ -76,7 +76,6 @@ 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 |
@@ -167,7 +166,7 @@ class RunnableAdapter<R(*)(A1)> { |
} |
R Run(typename CallbackParamTraits<A1>::ForwardType a1) { |
- return function_(a1); |
+ return function_(CallbackForward(a1)); |
} |
private: |
@@ -186,7 +185,7 @@ class RunnableAdapter<R(T::*)(A1)> { |
} |
R Run(T* object, typename CallbackParamTraits<A1>::ForwardType a1) { |
- return (object->*method_)(a1); |
+ return (object->*method_)(CallbackForward(a1)); |
} |
private: |
@@ -205,7 +204,7 @@ class RunnableAdapter<R(T::*)(A1) const> { |
} |
R Run(const T* object, typename CallbackParamTraits<A1>::ForwardType a1) { |
- return (object->*method_)(a1); |
+ return (object->*method_)(CallbackForward(a1)); |
} |
private: |
@@ -224,7 +223,7 @@ class RunnableAdapter<R(*)(A1, A2)> { |
R Run(typename CallbackParamTraits<A1>::ForwardType a1, |
typename CallbackParamTraits<A2>::ForwardType a2) { |
- return function_(a1, a2); |
+ return function_(CallbackForward(a1), CallbackForward(a2)); |
} |
private: |
@@ -244,7 +243,7 @@ class RunnableAdapter<R(T::*)(A1, A2)> { |
R Run(T* object, typename CallbackParamTraits<A1>::ForwardType a1, |
typename CallbackParamTraits<A2>::ForwardType a2) { |
- return (object->*method_)(a1, a2); |
+ return (object->*method_)(CallbackForward(a1), CallbackForward(a2)); |
} |
private: |
@@ -264,7 +263,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_)(a1, a2); |
+ return (object->*method_)(CallbackForward(a1), CallbackForward(a2)); |
} |
private: |
@@ -284,7 +283,8 @@ 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_(a1, a2, a3); |
+ return function_(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3)); |
} |
private: |
@@ -305,7 +305,8 @@ 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_)(a1, a2, a3); |
+ return (object->*method_)(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3)); |
} |
private: |
@@ -326,7 +327,8 @@ 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_)(a1, a2, a3); |
+ return (object->*method_)(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3)); |
} |
private: |
@@ -347,7 +349,8 @@ class RunnableAdapter<R(*)(A1, A2, A3, A4)> { |
typename CallbackParamTraits<A2>::ForwardType a2, |
typename CallbackParamTraits<A3>::ForwardType a3, |
typename CallbackParamTraits<A4>::ForwardType a4) { |
- return function_(a1, a2, a3, a4); |
+ return function_(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4)); |
} |
private: |
@@ -370,7 +373,8 @@ 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_)(a1, a2, a3, a4); |
+ return (object->*method_)(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4)); |
} |
private: |
@@ -393,7 +397,8 @@ 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_)(a1, a2, a3, a4); |
+ return (object->*method_)(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4)); |
} |
private: |
@@ -416,7 +421,8 @@ 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_(a1, a2, a3, a4, a5); |
+ return function_(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4), CallbackForward(a5)); |
} |
private: |
@@ -440,7 +446,8 @@ 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_)(a1, a2, a3, a4, a5); |
+ return (object->*method_)(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4), CallbackForward(a5)); |
} |
private: |
@@ -464,7 +471,8 @@ 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_)(a1, a2, a3, a4, a5); |
+ return (object->*method_)(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4), CallbackForward(a5)); |
} |
private: |
@@ -488,7 +496,9 @@ 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_(a1, a2, a3, a4, a5, a6); |
+ return function_(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), |
+ CallbackForward(a6)); |
} |
private: |
@@ -513,7 +523,9 @@ 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_)(a1, a2, a3, a4, a5, a6); |
+ return (object->*method_)(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), |
+ CallbackForward(a6)); |
} |
private: |
@@ -538,7 +550,9 @@ 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_)(a1, a2, a3, a4, a5, a6); |
+ return (object->*method_)(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), |
+ CallbackForward(a6)); |
} |
private: |
@@ -563,7 +577,9 @@ 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_(a1, a2, a3, a4, a5, a6, a7); |
+ return function_(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), |
+ CallbackForward(a6), CallbackForward(a7)); |
} |
private: |
@@ -589,7 +605,9 @@ 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_)(a1, a2, a3, a4, a5, a6, a7); |
+ return (object->*method_)(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), |
+ CallbackForward(a6), CallbackForward(a7)); |
} |
private: |
@@ -615,7 +633,9 @@ 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_)(a1, a2, a3, a4, a5, a6, a7); |
+ return (object->*method_)(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), |
+ CallbackForward(a6), CallbackForward(a7)); |
} |
private: |
@@ -837,7 +857,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(a1); |
+ return runnable.Run(CallbackForward(a1)); |
} |
}; |
@@ -845,7 +865,7 @@ template <typename Runnable,typename A1> |
struct InvokeHelper<false, void, Runnable, |
void(A1)> { |
static void MakeItSo(Runnable runnable, A1 a1) { |
- runnable.Run(a1); |
+ runnable.Run(CallbackForward(a1)); |
} |
}; |
@@ -857,7 +877,7 @@ struct InvokeHelper<true, void, Runnable, |
return; |
} |
- runnable.Run(a1); |
+ runnable.Run(CallbackForward(a1)); |
} |
}; |
@@ -865,7 +885,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(a1, a2); |
+ return runnable.Run(CallbackForward(a1), CallbackForward(a2)); |
} |
}; |
@@ -873,7 +893,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(a1, a2); |
+ runnable.Run(CallbackForward(a1), CallbackForward(a2)); |
} |
}; |
@@ -885,7 +905,7 @@ struct InvokeHelper<true, void, Runnable, |
return; |
} |
- runnable.Run(a1, a2); |
+ runnable.Run(CallbackForward(a1), CallbackForward(a2)); |
} |
}; |
@@ -894,7 +914,8 @@ 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(a1, a2, a3); |
+ return runnable.Run(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3)); |
} |
}; |
@@ -902,7 +923,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(a1, a2, a3); |
+ runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3)); |
} |
}; |
@@ -914,7 +935,7 @@ struct InvokeHelper<true, void, Runnable, |
return; |
} |
- runnable.Run(a1, a2, a3); |
+ runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3)); |
} |
}; |
@@ -923,7 +944,8 @@ 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(a1, a2, a3, a4); |
+ return runnable.Run(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4)); |
} |
}; |
@@ -931,7 +953,8 @@ 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(a1, a2, a3, a4); |
+ runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), |
+ CallbackForward(a4)); |
} |
}; |
@@ -943,7 +966,8 @@ struct InvokeHelper<true, void, Runnable, |
return; |
} |
- runnable.Run(a1, a2, a3, a4); |
+ runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), |
+ CallbackForward(a4)); |
} |
}; |
@@ -953,7 +977,8 @@ 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(a1, a2, a3, a4, a5); |
+ return runnable.Run(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4), CallbackForward(a5)); |
} |
}; |
@@ -962,7 +987,8 @@ 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(a1, a2, a3, a4, a5); |
+ runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), |
+ CallbackForward(a4), CallbackForward(a5)); |
} |
}; |
@@ -975,7 +1001,8 @@ struct InvokeHelper<true, void, Runnable, |
return; |
} |
- runnable.Run(a1, a2, a3, a4, a5); |
+ runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), |
+ CallbackForward(a4), CallbackForward(a5)); |
} |
}; |
@@ -985,7 +1012,9 @@ 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(a1, a2, a3, a4, a5, a6); |
+ return runnable.Run(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), |
+ CallbackForward(a6)); |
} |
}; |
@@ -995,7 +1024,8 @@ 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(a1, a2, a3, a4, a5, a6); |
+ runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), |
+ CallbackForward(a4), CallbackForward(a5), CallbackForward(a6)); |
} |
}; |
@@ -1009,7 +1039,8 @@ struct InvokeHelper<true, void, Runnable, |
return; |
} |
- runnable.Run(a1, a2, a3, a4, a5, a6); |
+ runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), |
+ CallbackForward(a4), CallbackForward(a5), CallbackForward(a6)); |
} |
}; |
@@ -1019,7 +1050,9 @@ 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(a1, a2, a3, a4, a5, a6, a7); |
+ return runnable.Run(CallbackForward(a1), CallbackForward(a2), |
+ CallbackForward(a3), CallbackForward(a4), CallbackForward(a5), |
+ CallbackForward(a6), CallbackForward(a7)); |
} |
}; |
@@ -1029,7 +1062,9 @@ 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(a1, a2, a3, a4, a5, a6, a7); |
+ runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), |
+ CallbackForward(a4), CallbackForward(a5), CallbackForward(a6), |
+ CallbackForward(a7)); |
} |
}; |
@@ -1043,7 +1078,9 @@ struct InvokeHelper<true, void, Runnable, |
return; |
} |
- runnable.Run(a1, a2, a3, a4, a5, a6, a7); |
+ runnable.Run(CallbackForward(a1), CallbackForward(a2), CallbackForward(a3), |
+ CallbackForward(a4), CallbackForward(a5), CallbackForward(a6), |
+ CallbackForward(a7)); |
} |
}; |
@@ -1106,7 +1143,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_, x1); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1)); |
} |
}; |
@@ -1130,7 +1167,7 @@ struct Invoker<1, StorageType, R(X1)> { |
return InvokeHelper<StorageType::IsWeakCall::value, R, |
typename StorageType::RunnableType, |
void(typename Bound1UnwrapTraits::ForwardType)> |
- ::MakeItSo(storage->runnable_, x1); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1)); |
} |
}; |
@@ -1156,7 +1193,8 @@ struct Invoker<0, StorageType, R(X1, X2)> { |
typename StorageType::RunnableType, |
void(typename CallbackParamTraits<X1>::ForwardType x1, |
typename CallbackParamTraits<X2>::ForwardType x2)> |
- ::MakeItSo(storage->runnable_, x1, x2); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2)); |
} |
}; |
@@ -1183,7 +1221,8 @@ struct Invoker<1, StorageType, R(X1, X2)> { |
typename StorageType::RunnableType, |
void(typename Bound1UnwrapTraits::ForwardType, |
typename CallbackParamTraits<X2>::ForwardType x2)> |
- ::MakeItSo(storage->runnable_, x1, x2); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2)); |
} |
}; |
@@ -1211,7 +1250,8 @@ struct Invoker<2, StorageType, R(X1, X2)> { |
typename StorageType::RunnableType, |
void(typename Bound1UnwrapTraits::ForwardType, |
typename Bound2UnwrapTraits::ForwardType)> |
- ::MakeItSo(storage->runnable_, x1, x2); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2)); |
} |
}; |
@@ -1241,7 +1281,8 @@ 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_, x1, x2, x3); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3)); |
} |
}; |
@@ -1272,7 +1313,8 @@ 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_, x1, x2, x3); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3)); |
} |
}; |
@@ -1304,7 +1346,8 @@ struct Invoker<2, StorageType, R(X1, X2, X3)> { |
void(typename Bound1UnwrapTraits::ForwardType, |
typename Bound2UnwrapTraits::ForwardType, |
typename CallbackParamTraits<X3>::ForwardType x3)> |
- ::MakeItSo(storage->runnable_, x1, x2, x3); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3)); |
} |
}; |
@@ -1337,7 +1380,8 @@ struct Invoker<3, StorageType, R(X1, X2, X3)> { |
void(typename Bound1UnwrapTraits::ForwardType, |
typename Bound2UnwrapTraits::ForwardType, |
typename Bound3UnwrapTraits::ForwardType)> |
- ::MakeItSo(storage->runnable_, x1, x2, x3); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3)); |
} |
}; |
@@ -1370,7 +1414,9 @@ 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_, x1, x2, x3, x4); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4)); |
} |
}; |
@@ -1404,7 +1450,9 @@ 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_, x1, x2, x3, x4); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4)); |
} |
}; |
@@ -1439,7 +1487,9 @@ 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_, x1, x2, x3, x4); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4)); |
} |
}; |
@@ -1475,7 +1525,9 @@ struct Invoker<3, StorageType, R(X1, X2, X3, X4)> { |
typename Bound2UnwrapTraits::ForwardType, |
typename Bound3UnwrapTraits::ForwardType, |
typename CallbackParamTraits<X4>::ForwardType x4)> |
- ::MakeItSo(storage->runnable_, x1, x2, x3, x4); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4)); |
} |
}; |
@@ -1512,7 +1564,9 @@ struct Invoker<4, StorageType, R(X1, X2, X3, X4)> { |
typename Bound2UnwrapTraits::ForwardType, |
typename Bound3UnwrapTraits::ForwardType, |
typename Bound4UnwrapTraits::ForwardType)> |
- ::MakeItSo(storage->runnable_, x1, x2, x3, x4); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4)); |
} |
}; |
@@ -1548,7 +1602,9 @@ 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_, x1, x2, x3, x4, x5); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5)); |
} |
}; |
@@ -1585,7 +1641,9 @@ 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_, x1, x2, x3, x4, x5); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5)); |
} |
}; |
@@ -1623,7 +1681,9 @@ 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_, x1, x2, x3, x4, x5); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5)); |
} |
}; |
@@ -1662,7 +1722,9 @@ 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_, x1, x2, x3, x4, x5); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5)); |
} |
}; |
@@ -1702,7 +1764,9 @@ struct Invoker<4, StorageType, R(X1, X2, X3, X4, X5)> { |
typename Bound3UnwrapTraits::ForwardType, |
typename Bound4UnwrapTraits::ForwardType, |
typename CallbackParamTraits<X5>::ForwardType x5)> |
- ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5)); |
} |
}; |
@@ -1743,7 +1807,9 @@ struct Invoker<5, StorageType, R(X1, X2, X3, X4, X5)> { |
typename Bound3UnwrapTraits::ForwardType, |
typename Bound4UnwrapTraits::ForwardType, |
typename Bound5UnwrapTraits::ForwardType)> |
- ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5)); |
} |
}; |
@@ -1782,7 +1848,10 @@ 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_, x1, x2, x3, x4, x5, x6); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6)); |
} |
}; |
@@ -1822,7 +1891,10 @@ 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_, x1, x2, x3, x4, x5, x6); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6)); |
} |
}; |
@@ -1863,7 +1935,10 @@ 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_, x1, x2, x3, x4, x5, x6); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6)); |
} |
}; |
@@ -1905,7 +1980,10 @@ 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_, x1, x2, x3, x4, x5, x6); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6)); |
} |
}; |
@@ -1948,7 +2026,10 @@ 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_, x1, x2, x3, x4, x5, x6); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6)); |
} |
}; |
@@ -1992,7 +2073,10 @@ 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_, x1, x2, x3, x4, x5, x6); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6)); |
} |
}; |
@@ -2037,7 +2121,10 @@ struct Invoker<6, StorageType, R(X1, X2, X3, X4, X5, X6)> { |
typename Bound4UnwrapTraits::ForwardType, |
typename Bound5UnwrapTraits::ForwardType, |
typename Bound6UnwrapTraits::ForwardType)> |
- ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6)); |
} |
}; |
@@ -2079,7 +2166,10 @@ 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_, x1, x2, x3, x4, x5, x6, x7); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6), CallbackForward(x7)); |
} |
}; |
@@ -2122,7 +2212,10 @@ 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_, x1, x2, x3, x4, x5, x6, x7); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6), CallbackForward(x7)); |
} |
}; |
@@ -2166,7 +2259,10 @@ 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_, x1, x2, x3, x4, x5, x6, x7); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6), CallbackForward(x7)); |
} |
}; |
@@ -2211,7 +2307,10 @@ 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_, x1, x2, x3, x4, x5, x6, x7); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6), CallbackForward(x7)); |
} |
}; |
@@ -2257,7 +2356,10 @@ 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_, x1, x2, x3, x4, x5, x6, x7); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6), CallbackForward(x7)); |
} |
}; |
@@ -2304,7 +2406,10 @@ 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_, x1, x2, x3, x4, x5, x6, x7); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6), CallbackForward(x7)); |
} |
}; |
@@ -2352,7 +2457,10 @@ 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_, x1, x2, x3, x4, x5, x6, x7); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6), CallbackForward(x7)); |
} |
}; |
@@ -2401,7 +2509,10 @@ struct Invoker<7, StorageType, R(X1, X2, X3, X4, X5, X6, X7)> { |
typename Bound5UnwrapTraits::ForwardType, |
typename Bound6UnwrapTraits::ForwardType, |
typename Bound7UnwrapTraits::ForwardType)> |
- ::MakeItSo(storage->runnable_, x1, x2, x3, x4, x5, x6, x7); |
+ ::MakeItSo(storage->runnable_, CallbackForward(x1), |
+ CallbackForward(x2), CallbackForward(x3), |
+ CallbackForward(x4), CallbackForward(x5), |
+ CallbackForward(x6), CallbackForward(x7)); |
} |
}; |