mirror of
https://github.com/clearlinux/folly.git
synced 2026-09-01 11:15:52 +00:00
Move this reduce to helpers.h
Summary: just a lowly non-erroring semantic merge conflict Test Plan: builds Reviewed By: jsedgwick@fb.com Subscribers: trunkagent, exa, folly-diffs@, jsedgwick, yfeldblum, chalfant FB internal diff: D2029593 Signature: t1:2029593:1430319785:2cd96927b9080fe18b168ab95ad201afc4f00857
This commit is contained in:
committed by
Andrii Grynenko
parent
f0901aec91
commit
dd00fd8134
@@ -404,17 +404,6 @@ class Future {
|
||||
};
|
||||
|
||||
|
||||
// Sugar for the most common case
|
||||
template <class Collection, class T, class F>
|
||||
auto reduce(Collection&& c, T&& initial, F&& func)
|
||||
-> decltype(reduce(c.begin(), c.end(), initial, func)) {
|
||||
return reduce(
|
||||
c.begin(),
|
||||
c.end(),
|
||||
std::forward<T>(initial),
|
||||
std::forward<F>(func));
|
||||
}
|
||||
|
||||
} // folly
|
||||
|
||||
#include <folly/futures/Future-inl.h>
|
||||
|
||||
+15
-4
@@ -153,7 +153,7 @@ Future<std::vector<Try<
|
||||
typename std::iterator_traits<InputIterator>::value_type::value_type>>>
|
||||
collectAll(InputIterator first, InputIterator last);
|
||||
|
||||
// Sugar for the most common case
|
||||
/// Sugar for the most common case
|
||||
template <class Collection>
|
||||
auto collectAll(Collection&& c) -> decltype(collectAll(c.begin(), c.end())) {
|
||||
return collectAll(c.begin(), c.end());
|
||||
@@ -177,7 +177,7 @@ Future<typename detail::CollectContext<
|
||||
>::result_type>
|
||||
collect(InputIterator first, InputIterator last);
|
||||
|
||||
// Sugar for the most common case
|
||||
/// Sugar for the most common case
|
||||
template <class Collection>
|
||||
auto collect(Collection&& c) -> decltype(collect(c.begin(), c.end())) {
|
||||
return collect(c.begin(), c.end());
|
||||
@@ -195,7 +195,7 @@ Future<std::pair<
|
||||
Try<typename std::iterator_traits<InputIterator>::value_type::value_type>>>
|
||||
collectAny(InputIterator first, InputIterator last);
|
||||
|
||||
// Sugar for the most common case
|
||||
/// Sugar for the most common case
|
||||
template <class Collection>
|
||||
auto collectAny(Collection&& c) -> decltype(collectAny(c.begin(), c.end())) {
|
||||
return collectAny(c.begin(), c.end());
|
||||
@@ -213,7 +213,7 @@ Future<std::vector<std::pair<
|
||||
Try<typename std::iterator_traits<InputIterator>::value_type::value_type>>>>
|
||||
collectN(InputIterator first, InputIterator last, size_t n);
|
||||
|
||||
// Sugar for the most common case
|
||||
/// Sugar for the most common case
|
||||
template <class Collection>
|
||||
auto collectN(Collection&& c, size_t n)
|
||||
-> decltype(collectN(c.begin(), c.end(), n)) {
|
||||
@@ -246,4 +246,15 @@ template <class It, class T, class F,
|
||||
typename std::enable_if<isFutureResult<F, T, Arg>::value, Future<T>>::type
|
||||
reduce(It first, It last, T initial, F func);
|
||||
|
||||
/// Sugar for the most common case
|
||||
template <class Collection, class T, class F>
|
||||
auto reduce(Collection&& c, T&& initial, F&& func)
|
||||
-> decltype(reduce(c.begin(), c.end(), initial, func)) {
|
||||
return reduce(
|
||||
c.begin(),
|
||||
c.end(),
|
||||
std::forward<T>(initial),
|
||||
std::forward<F>(func));
|
||||
}
|
||||
|
||||
} // namespace folly
|
||||
|
||||
Reference in New Issue
Block a user