diff options
Diffstat (limited to 'src/concurrent/qtconcurrentreducekernel.h')
| -rw-r--r-- | src/concurrent/qtconcurrentreducekernel.h | 15 |
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(); |
