summaryrefslogtreecommitdiffstats
path: root/src/concurrent/qtconcurrentreducekernel.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/concurrent/qtconcurrentreducekernel.h')
-rw-r--r--src/concurrent/qtconcurrentreducekernel.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/concurrent/qtconcurrentreducekernel.h b/src/concurrent/qtconcurrentreducekernel.h
index 333d358f189..cdddfdde0d0 100644
--- a/src/concurrent/qtconcurrentreducekernel.h
+++ b/src/concurrent/qtconcurrentreducekernel.h
@@ -232,6 +232,13 @@ struct SequenceHolder2 : private QtPrivate::SequenceHolder<Sequence>, public Bas
reduceOptions)
{ }
+ SequenceHolder2(QThreadPool *pool, Sequence &&_sequence, Functor1 functor1, Functor2 functor2,
+ ReduceOptions reduceOptions)
+ : QtPrivate::SequenceHolder<Sequence>(std::move(_sequence)),
+ Base(pool, this->sequence.cbegin(), this->sequence.cend(), functor1, functor2,
+ reduceOptions)
+ { }
+
template<typename InitialValueType>
SequenceHolder2(QThreadPool *pool, const Sequence &_sequence, Functor1 functor1,
Functor2 functor2, InitialValueType &&initialValue, ReduceOptions reduceOptions)
@@ -240,6 +247,14 @@ struct SequenceHolder2 : private QtPrivate::SequenceHolder<Sequence>, public Bas
std::forward<InitialValueType>(initialValue), reduceOptions)
{ }
+ template<typename InitialValueType>
+ SequenceHolder2(QThreadPool *pool, Sequence &&_sequence, Functor1 functor1, Functor2 functor2,
+ InitialValueType &&initialValue, ReduceOptions reduceOptions)
+ : QtPrivate::SequenceHolder<Sequence>(std::move(_sequence)),
+ Base(pool, this->sequence.cbegin(), this->sequence.cend(), functor1, functor2,
+ std::forward<InitialValueType>(initialValue), reduceOptions)
+ { }
+
void finish() override
{
Base::finish();