diff options
author | Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> | 2020-09-29 18:30:04 +0200 |
---|---|---|
committer | Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> | 2020-10-06 09:15:28 +0200 |
commit | 733ab10961a4d6539b4d42cf4768e9cb0b88c6a7 (patch) | |
tree | 77254d6b17b66b5491d3e90e97c5fc081e6bed8d /src/corelib/text | |
parent | e60a337f4ed5c716b87f2318a2595c793fb4bca8 (diff) |
QRegularExpression: add move constructor(s)
Change-Id: I599e4b7338172de5936b191f5e16383c1c31104c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/text')
-rw-r--r-- | src/corelib/text/qregularexpression.cpp | 37 | ||||
-rw-r--r-- | src/corelib/text/qregularexpression.h | 7 |
2 files changed, 44 insertions, 0 deletions
diff --git a/src/corelib/text/qregularexpression.cpp b/src/corelib/text/qregularexpression.cpp index beba74021b..1ca1cadaa3 100644 --- a/src/corelib/text/qregularexpression.cpp +++ b/src/corelib/text/qregularexpression.cpp @@ -1363,12 +1363,24 @@ QRegularExpression::QRegularExpression(const QRegularExpression &re) } /*! + \fn QRegularExpression::QRegularExpression(QRegularExpression &&re) + + Constructs a QRegularExpression object by moving from \a re. + + \since 6.0 + + \sa operator= +*/ + +/*! Destroys the QRegularExpression object. */ QRegularExpression::~QRegularExpression() { } +QT_DEFINE_QESDP_SPECIALIZATION_DTOR(QRegularExpressionPrivate) + /*! Assigns the regular expression \a re to this object, and returns a reference to the copy. Both the pattern and the pattern options are copied. @@ -2018,6 +2030,8 @@ QRegularExpressionMatch::~QRegularExpressionMatch() { } +QT_DEFINE_QSDP_SPECIALIZATION_DTOR(QRegularExpressionMatchPrivate) + /*! Constructs a match result by copying the result of the given \a match. @@ -2029,6 +2043,16 @@ QRegularExpressionMatch::QRegularExpressionMatch(const QRegularExpressionMatch & } /*! + \fn QRegularExpressionMatch::QRegularExpressionMatch(QRegularExpressionMatch &&re) + + Constructs a match result by moving from the given \a match. + + \since 6.0 + + \sa operator=() +*/ + +/*! Assigns the match result \a match to this object, and returns a reference to the copy. */ @@ -2450,6 +2474,8 @@ QRegularExpressionMatchIterator::~QRegularExpressionMatchIterator() { } +QT_DEFINE_QSDP_SPECIALIZATION_DTOR(QRegularExpressionMatchIteratorPrivate) + /*! Constructs a QRegularExpressionMatchIterator object as a copy of \a iterator. @@ -2462,6 +2488,17 @@ QRegularExpressionMatchIterator::QRegularExpressionMatchIterator(const QRegularE } /*! + \fn QRegularExpressionMatchIterator::QRegularExpressionMatchIterator(QRegularExpressionMatchIterator &&iterator) + + Constructs a QRegularExpressionMatchIterator object by moving from \a + iterator. + + \since 6.0 + + \sa operator=() +*/ + +/*! Assigns the iterator \a iterator to this object, and returns a reference to the copy. */ diff --git a/src/corelib/text/qregularexpression.h b/src/corelib/text/qregularexpression.h index 6067d94c76..efa9470685 100644 --- a/src/corelib/text/qregularexpression.h +++ b/src/corelib/text/qregularexpression.h @@ -60,6 +60,8 @@ class QRegularExpressionMatchIterator; struct QRegularExpressionPrivate; class QRegularExpression; +QT_DECLARE_QESDP_SPECIALIZATION_DTOR_WITH_EXPORT(QRegularExpressionPrivate, Q_CORE_EXPORT) + Q_CORE_EXPORT size_t qHash(const QRegularExpression &key, size_t seed = 0) noexcept; class Q_CORE_EXPORT QRegularExpression @@ -86,6 +88,7 @@ public: QRegularExpression(); explicit QRegularExpression(const QString &pattern, PatternOptions options = NoPatternOption); QRegularExpression(const QRegularExpression &re); + QRegularExpression(QRegularExpression &&re) = default; ~QRegularExpression(); QRegularExpression &operator=(const QRegularExpression &re); QT_MOVE_ASSIGNMENT_OPERATOR_IMPL_VIA_PURE_SWAP(QRegularExpression) @@ -199,6 +202,7 @@ Q_CORE_EXPORT QDebug operator<<(QDebug debug, QRegularExpression::PatternOptions #endif struct QRegularExpressionMatchPrivate; +QT_DECLARE_QSDP_SPECIALIZATION_DTOR_WITH_EXPORT(QRegularExpressionMatchPrivate, Q_CORE_EXPORT) class Q_CORE_EXPORT QRegularExpressionMatch { @@ -206,6 +210,7 @@ public: QRegularExpressionMatch(); ~QRegularExpressionMatch(); QRegularExpressionMatch(const QRegularExpressionMatch &match); + QRegularExpressionMatch(QRegularExpressionMatch &&match) = default; QRegularExpressionMatch &operator=(const QRegularExpressionMatch &match); QRegularExpressionMatch &operator=(QRegularExpressionMatch &&match) noexcept { d.swap(match.d); return *this; } @@ -273,6 +278,7 @@ class QRegularExpressionMatchIteratorRangeBasedForIteratorSentinel {}; } struct QRegularExpressionMatchIteratorPrivate; +QT_DECLARE_QSDP_SPECIALIZATION_DTOR_WITH_EXPORT(QRegularExpressionMatchIteratorPrivate, Q_CORE_EXPORT) class Q_CORE_EXPORT QRegularExpressionMatchIterator { @@ -280,6 +286,7 @@ public: QRegularExpressionMatchIterator(); ~QRegularExpressionMatchIterator(); QRegularExpressionMatchIterator(const QRegularExpressionMatchIterator &iterator); + QRegularExpressionMatchIterator(QRegularExpressionMatchIterator &&iterator) = default; QRegularExpressionMatchIterator &operator=(const QRegularExpressionMatchIterator &iterator); QRegularExpressionMatchIterator &operator=(QRegularExpressionMatchIterator &&iterator) noexcept { d.swap(iterator.d); return *this; } |