| Index: base/bind_internal.h
|
| diff --git a/base/bind_internal.h b/base/bind_internal.h
|
| index 17ce9c89bde702b637b860c8b77355a9e3b0377a..404b795297897106ba29b85f32c13260f6ca99e2 100644
|
| --- a/base/bind_internal.h
|
| +++ b/base/bind_internal.h
|
| @@ -1721,6 +1721,47 @@ struct Invoker6<true, StorageType, void(T::*)(X1, X2, X3, X4, X5)> {
|
| }
|
| };
|
|
|
| +// BindMoreFuncN<>
|
| +//
|
| +// This set of functions help in fully binding the free parameters in a
|
| +// Callback<>.
|
| +template <typename Sig, typename P1>
|
| +void BindMoreFunc1(const base::Callback<Sig>& callback, const P1& p1) {
|
| + callback.Run(p1);
|
| +}
|
| +
|
| +template <typename Sig, typename P1, typename P2>
|
| +void BindMoreFunc2(const base::Callback<Sig>& callback, const P1& p1,
|
| + const P2& p2) {
|
| + callback.Run(p1, p2);
|
| +}
|
| +
|
| +template <typename Sig, typename P1, typename P2, typename P3>
|
| +void BindMoreFunc3(const base::Callback<Sig>& callback, const P1& p1,
|
| + const P2& p2, const P3& p3) {
|
| + callback.Run(p1, p2, p3);
|
| +}
|
| +
|
| +template <typename Sig, typename P1, typename P2, typename P3, typename P4>
|
| +void BindMoreFunc4(const base::Callback<Sig>& callback, const P1& p1,
|
| + const P2& p2, const P3& p3, const P4& p4) {
|
| + callback.Run(p1, p2, p3, p4);
|
| +}
|
| +
|
| +template <typename Sig, typename P1, typename P2, typename P3, typename P4,
|
| + typename P5>
|
| +void BindMoreFunc5(const base::Callback<Sig>& callback, const P1& p1,
|
| + const P2& p2, const P3& p3, const P4& p4, const P5& p5) {
|
| + callback.Run(p1, p2, p3, p4, p5);
|
| +}
|
| +
|
| +template <typename Sig, typename P1, typename P2, typename P3, typename P4,
|
| + typename P5, typename P6>
|
| +void BindMoreFunc6(const base::Callback<Sig>& callback, const P1& p1,
|
| + const P2& p2, const P3& p3, const P4& p4, const P5& p5, const P6& p6) {
|
| + callback.Run(p1, p2, p3, p4, p5, p6);
|
| +}
|
| +
|
| // InvokerStorageN<>
|
| //
|
| // These are the actual storage classes for the Invokers.
|
|
|