Index: src/list-inl.h |
diff --git a/src/list-inl.h b/src/list-inl.h |
index c09788e9ae0e466e5639673c909215b4e52e8d8f..98f0343fa57f0b84aff9254bf6c1bed7b482e56a 100644 |
--- a/src/list-inl.h |
+++ b/src/list-inl.h |
@@ -193,14 +193,16 @@ int List<T, P>::CountOccurrences(const T& elm, int start, int end) const { |
} |
-template<typename T, class P> |
-void List<T, P>::Sort(int (*cmp)(const T* x, const T* y)) { |
+template <typename T, class P> |
+template <typename CompareFunction> |
+void List<T, P>::Sort(CompareFunction cmp) { |
Sort(cmp, 0, length_); |
} |
template <typename T, class P> |
-void List<T, P>::Sort(int (*cmp)(const T* x, const T* y), size_t s, size_t l) { |
+template <typename CompareFunction> |
+void List<T, P>::Sort(CompareFunction cmp, size_t s, size_t l) { |
ToVector().Sort(cmp, s, l); |
#ifdef DEBUG |
for (size_t i = s + 1; i < l; i++) DCHECK(cmp(&data_[i - 1], &data_[i]) <= 0); |
@@ -215,14 +217,15 @@ void List<T, P>::Sort() { |
template <typename T, class P> |
-void List<T, P>::StableSort(int (*cmp)(const T* x, const T* y)) { |
+template <typename CompareFunction> |
+void List<T, P>::StableSort(CompareFunction cmp) { |
StableSort(cmp, 0, length_); |
} |
template <typename T, class P> |
-void List<T, P>::StableSort(int (*cmp)(const T* x, const T* y), size_t s, |
- size_t l) { |
+template <typename CompareFunction> |
+void List<T, P>::StableSort(CompareFunction cmp, size_t s, size_t l) { |
ToVector().StableSort(cmp, s, l); |
#ifdef DEBUG |
for (size_t i = s + 1; i < l; i++) DCHECK(cmp(&data_[i - 1], &data_[i]) <= 0); |