Index: base/callback_list.h |
diff --git a/base/callback_list.h b/base/callback_list.h |
index aeed5f1e2216211df27e66760a4b2ef2de436ad3..5b911fd4867e1bec80ce002c57fd5d58b129247b 100644 |
--- a/base/callback_list.h |
+++ b/base/callback_list.h |
@@ -1,3 +1,8 @@ |
+// This file was GENERATED by command: |
+// pump.py callback_list.h.pump |
+// DO NOT EDIT BY HAND!!! |
+ |
+ |
// Copyright 2013 The Chromium Authors. All rights reserved. |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
@@ -203,21 +208,192 @@ |
template <typename Sig> class CallbackList; |
-template <typename... Args> |
-class CallbackList<void(Args...)> |
- : public internal::CallbackListBase<Callback<void(Args...)> > { |
- public: |
- typedef Callback<void(Args...)> CallbackType; |
- |
- CallbackList() {} |
- |
- void Notify( |
- typename internal::CallbackParamTraits<Args>::ForwardType... args) { |
- typename internal::CallbackListBase<CallbackType>::Iterator it = |
- this->GetIterator(); |
- CallbackType* cb; |
- while ((cb = it.GetNext()) != NULL) { |
- cb->Run(args...); |
+template <> |
+class CallbackList<void(void)> |
+ : public internal::CallbackListBase<Callback<void(void)> > { |
+ public: |
+ typedef Callback<void(void)> CallbackType; |
+ |
+ CallbackList() {} |
+ |
+ void Notify() { |
+ internal::CallbackListBase<CallbackType>::Iterator it = |
+ this->GetIterator(); |
+ CallbackType* cb; |
+ while ((cb = it.GetNext()) != NULL) { |
+ cb->Run(); |
+ } |
+ } |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(CallbackList); |
+}; |
+ |
+template <typename A1> |
+class CallbackList<void(A1)> |
+ : public internal::CallbackListBase<Callback<void(A1)> > { |
+ public: |
+ typedef Callback<void(A1)> CallbackType; |
+ |
+ CallbackList() {} |
+ |
+ void Notify(typename internal::CallbackParamTraits<A1>::ForwardType a1) { |
+ typename internal::CallbackListBase<CallbackType>::Iterator it = |
+ this->GetIterator(); |
+ CallbackType* cb; |
+ while ((cb = it.GetNext()) != NULL) { |
+ cb->Run(a1); |
+ } |
+ } |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(CallbackList); |
+}; |
+ |
+template <typename A1, typename A2> |
+class CallbackList<void(A1, A2)> |
+ : public internal::CallbackListBase<Callback<void(A1, A2)> > { |
+ public: |
+ typedef Callback<void(A1, A2)> CallbackType; |
+ |
+ CallbackList() {} |
+ |
+ void Notify(typename internal::CallbackParamTraits<A1>::ForwardType a1, |
+ typename internal::CallbackParamTraits<A2>::ForwardType a2) { |
+ typename internal::CallbackListBase<CallbackType>::Iterator it = |
+ this->GetIterator(); |
+ CallbackType* cb; |
+ while ((cb = it.GetNext()) != NULL) { |
+ cb->Run(a1, a2); |
+ } |
+ } |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(CallbackList); |
+}; |
+ |
+template <typename A1, typename A2, typename A3> |
+class CallbackList<void(A1, A2, A3)> |
+ : public internal::CallbackListBase<Callback<void(A1, A2, A3)> > { |
+ public: |
+ typedef Callback<void(A1, A2, A3)> CallbackType; |
+ |
+ CallbackList() {} |
+ |
+ void Notify(typename internal::CallbackParamTraits<A1>::ForwardType a1, |
+ typename internal::CallbackParamTraits<A2>::ForwardType a2, |
+ typename internal::CallbackParamTraits<A3>::ForwardType a3) { |
+ typename internal::CallbackListBase<CallbackType>::Iterator it = |
+ this->GetIterator(); |
+ CallbackType* cb; |
+ while ((cb = it.GetNext()) != NULL) { |
+ cb->Run(a1, a2, a3); |
+ } |
+ } |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(CallbackList); |
+}; |
+ |
+template <typename A1, typename A2, typename A3, typename A4> |
+class CallbackList<void(A1, A2, A3, A4)> |
+ : public internal::CallbackListBase<Callback<void(A1, A2, A3, A4)> > { |
+ public: |
+ typedef Callback<void(A1, A2, A3, A4)> CallbackType; |
+ |
+ CallbackList() {} |
+ |
+ void Notify(typename internal::CallbackParamTraits<A1>::ForwardType a1, |
+ typename internal::CallbackParamTraits<A2>::ForwardType a2, |
+ typename internal::CallbackParamTraits<A3>::ForwardType a3, |
+ typename internal::CallbackParamTraits<A4>::ForwardType a4) { |
+ typename internal::CallbackListBase<CallbackType>::Iterator it = |
+ this->GetIterator(); |
+ CallbackType* cb; |
+ while ((cb = it.GetNext()) != NULL) { |
+ cb->Run(a1, a2, a3, a4); |
+ } |
+ } |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(CallbackList); |
+}; |
+ |
+template <typename A1, typename A2, typename A3, typename A4, typename A5> |
+class CallbackList<void(A1, A2, A3, A4, A5)> |
+ : public internal::CallbackListBase<Callback<void(A1, A2, A3, A4, A5)> > { |
+ public: |
+ typedef Callback<void(A1, A2, A3, A4, A5)> CallbackType; |
+ |
+ CallbackList() {} |
+ |
+ void Notify(typename internal::CallbackParamTraits<A1>::ForwardType a1, |
+ typename internal::CallbackParamTraits<A2>::ForwardType a2, |
+ typename internal::CallbackParamTraits<A3>::ForwardType a3, |
+ typename internal::CallbackParamTraits<A4>::ForwardType a4, |
+ typename internal::CallbackParamTraits<A5>::ForwardType a5) { |
+ typename internal::CallbackListBase<CallbackType>::Iterator it = |
+ this->GetIterator(); |
+ CallbackType* cb; |
+ while ((cb = it.GetNext()) != NULL) { |
+ cb->Run(a1, a2, a3, a4, a5); |
+ } |
+ } |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(CallbackList); |
+}; |
+ |
+template <typename A1, typename A2, typename A3, typename A4, typename A5, |
+ typename A6> |
+class CallbackList<void(A1, A2, A3, A4, A5, A6)> |
+ : public internal::CallbackListBase<Callback<void(A1, A2, A3, A4, A5, |
+ A6)> > { |
+ public: |
+ typedef Callback<void(A1, A2, A3, A4, A5, A6)> CallbackType; |
+ |
+ CallbackList() {} |
+ |
+ void Notify(typename internal::CallbackParamTraits<A1>::ForwardType a1, |
+ typename internal::CallbackParamTraits<A2>::ForwardType a2, |
+ typename internal::CallbackParamTraits<A3>::ForwardType a3, |
+ typename internal::CallbackParamTraits<A4>::ForwardType a4, |
+ typename internal::CallbackParamTraits<A5>::ForwardType a5, |
+ typename internal::CallbackParamTraits<A6>::ForwardType a6) { |
+ typename internal::CallbackListBase<CallbackType>::Iterator it = |
+ this->GetIterator(); |
+ CallbackType* cb; |
+ while ((cb = it.GetNext()) != NULL) { |
+ cb->Run(a1, a2, a3, a4, a5, a6); |
+ } |
+ } |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(CallbackList); |
+}; |
+ |
+template <typename A1, typename A2, typename A3, typename A4, typename A5, |
+ typename A6, typename A7> |
+class CallbackList<void(A1, A2, A3, A4, A5, A6, A7)> |
+ : public internal::CallbackListBase<Callback<void(A1, A2, A3, A4, A5, A6, |
+ A7)> > { |
+ public: |
+ typedef Callback<void(A1, A2, A3, A4, A5, A6, A7)> CallbackType; |
+ |
+ CallbackList() {} |
+ |
+ void Notify(typename internal::CallbackParamTraits<A1>::ForwardType a1, |
+ typename internal::CallbackParamTraits<A2>::ForwardType a2, |
+ typename internal::CallbackParamTraits<A3>::ForwardType a3, |
+ typename internal::CallbackParamTraits<A4>::ForwardType a4, |
+ typename internal::CallbackParamTraits<A5>::ForwardType a5, |
+ typename internal::CallbackParamTraits<A6>::ForwardType a6, |
+ typename internal::CallbackParamTraits<A7>::ForwardType a7) { |
+ typename internal::CallbackListBase<CallbackType>::Iterator it = |
+ this->GetIterator(); |
+ CallbackType* cb; |
+ while ((cb = it.GetNext()) != NULL) { |
+ cb->Run(a1, a2, a3, a4, a5, a6, a7); |
} |
} |