5#ifndef QTCONCURRENT_FUNCTIONWRAPPERS_H
6#define QTCONCURRENT_FUNCTIONWRAPPERS_H
8#include <QtConcurrent/qtconcurrentcompilertest.h>
9#include <QtConcurrent/qtconcurrentreducekernel.h>
10#include <QtCore/qfuture.h>
14#if !defined(QT_NO_CONCURRENT) || defined(Q_QDOC)
22 template <
class C,
class U>
25 return c.push_back(u);
28 template <
class C,
class U>
31 return c.push_back(u);
37template <
class T,
class Enable =
void>
58template <
class T,
class MapFunctor>
62 "It's not possible to invoke the function with passed argument.");
66template <
class T,
class MapFunctor>
74template <
class U,
class V>
80template <
class T,
class C,
class U>
86template <
class U,
class V>
92template <
typename R,
typename ...A>
98template <
class U,
class V>
104template <
class T,
class C,
class U>
110template<
class T,
class Enable =
void>
116template<
class T,
class Enable =
void>
131template<
class Callable,
class Enable =
void>
154template <
class InputSequence,
class MapFunctor>
159 "Couldn't deduce the output sequence type, you must specify it explicitly.");
163#ifndef QT_NO_TEMPLATE_TEMPLATE_PARAMETERS
165template <
template <
typename...>
class InputSequence,
typename MapFunctor,
typename ...T>
constexpr bool hasCallOperator_v
constexpr bool isInitialValueCompatible_v
typename MapResult< T, MapFunctor >::Type MapResultType
constexpr bool isIterator_v
void operator()(C &c, U &&u) const
void operator()(C &c, const U &u) const
typename std::tuple_element< 0, std::tuple< A... > >::type ResultType