diff options
author | Thiago Macieira <thiago.macieira@intel.com> | 2022-07-22 16:43:52 -0700 |
---|---|---|
committer | Thiago Macieira <thiago.macieira@intel.com> | 2022-07-27 14:51:14 -0700 |
commit | 2f0a625fd4036b71286dfa7de4c9d795025164e7 (patch) | |
tree | 135e28efbee178571d5fce063b8d7899cc26c522 /src/corelib/kernel | |
parent | de7894ce3c60154cd3c44640c1734c6988d2afea (diff) |
QVariant: add noexcept to Qt types with noexcept copy constructors
QHash, QString, QByteArray, and QDateTime are explicitly noexcept, while
QList, QMap, and QModelIndex are implicitly noexcept because all their
members are explicitly nothrow-copyable.
There are a couple more Qt types that ought to be nothrow-copyable too,
like QBitArray and QUrl.
Change-Id: I3859764fed084846bcb0fffd17044b5ebb046ee9
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/corelib/kernel')
-rw-r--r-- | src/corelib/kernel/qvariant.cpp | 32 | ||||
-rw-r--r-- | src/corelib/kernel/qvariant.h | 16 |
2 files changed, 24 insertions, 24 deletions
diff --git a/src/corelib/kernel/qvariant.cpp b/src/corelib/kernel/qvariant.cpp index 4628bd7d6f..61ea0dd8e7 100644 --- a/src/corelib/kernel/qvariant.cpp +++ b/src/corelib/kernel/qvariant.cpp @@ -580,7 +580,7 @@ QVariant::QVariant(const QVariant &p) } /*! - \fn QVariant::QVariant(const QString &val) + \fn QVariant::QVariant(const QString &val) noexcept Constructs a new variant with a string value, \a val. */ @@ -607,19 +607,19 @@ QVariant::QVariant(const QVariant &p) */ /*! - \fn QVariant::QVariant(const QStringList &val) + \fn QVariant::QVariant(const QStringList &val) noexcept Constructs a new variant with a string list value, \a val. */ /*! - \fn QVariant::QVariant(const QMap<QString, QVariant> &val) + \fn QVariant::QVariant(const QMap<QString, QVariant> &val) noexcept Constructs a new variant with a map of \l {QVariant}s, \a val. */ /*! - \fn QVariant::QVariant(const QHash<QString, QVariant> &val) + \fn QVariant::QVariant(const QHash<QString, QVariant> &val) noexcept Constructs a new variant with a hash of \l {QVariant}s, \a val. */ @@ -637,7 +637,7 @@ QVariant::QVariant(const QVariant &p) */ /*! - \fn QVariant::QVariant(const QDateTime &val) + \fn QVariant::QVariant(const QDateTime &val) noexcept Constructs a new variant with a date/time value, \a val. */ @@ -658,7 +658,7 @@ QVariant::QVariant(const QVariant &p) /*! \since 5.0 - \fn QVariant::QVariant(const QModelIndex &val) + \fn QVariant::QVariant(const QModelIndex &val) noexcept Constructs a new variant with a QModelIndex value, \a val. */ @@ -699,7 +699,7 @@ QVariant::QVariant(const QVariant &p) */ /*! - \fn QVariant::QVariant(const QByteArray &val) + \fn QVariant::QVariant(const QByteArray &val) noexcept Constructs a new variant with a bytearray value, \a val. */ @@ -809,7 +809,7 @@ QVariant::QVariant(const QVariant &p) */ /*! - \fn QVariant::QVariant(const QList<QVariant> &val) + \fn QVariant::QVariant(const QList<QVariant> &val) noexcept Constructs a new variant with a list value, \a val. */ @@ -875,19 +875,19 @@ QVariant::QVariant(bool val) noexcept : d(std::piecewise_construct_t{}, val) {} QVariant::QVariant(double val) noexcept : d(std::piecewise_construct_t{}, val) {} QVariant::QVariant(float val) noexcept : d(std::piecewise_construct_t{}, val) {} -QVariant::QVariant(const QByteArray &val) : d(std::piecewise_construct_t{}, val) {} +QVariant::QVariant(const QByteArray &val) noexcept : d(std::piecewise_construct_t{}, val) {} QVariant::QVariant(const QBitArray &val) : d(std::piecewise_construct_t{}, val) {} -QVariant::QVariant(const QString &val) : d(std::piecewise_construct_t{}, val) {} +QVariant::QVariant(const QString &val) noexcept : d(std::piecewise_construct_t{}, val) {} QVariant::QVariant(QChar val) noexcept : d(std::piecewise_construct_t{}, val) {} -QVariant::QVariant(const QStringList &val) : d(std::piecewise_construct_t{}, val) {} +QVariant::QVariant(const QStringList &val) noexcept : d(std::piecewise_construct_t{}, val) {} QVariant::QVariant(QDate val) noexcept : d(std::piecewise_construct_t{}, val) {} QVariant::QVariant(QTime val) noexcept : d(std::piecewise_construct_t{}, val) {} -QVariant::QVariant(const QDateTime &val) : d(std::piecewise_construct_t{}, val) {} +QVariant::QVariant(const QDateTime &val) noexcept : d(std::piecewise_construct_t{}, val) {} -QVariant::QVariant(const QList<QVariant> &list) : d(std::piecewise_construct_t{}, list) {} -QVariant::QVariant(const QMap<QString, QVariant> &map) : d(std::piecewise_construct_t{}, map) {} -QVariant::QVariant(const QHash<QString, QVariant> &hash) : d(std::piecewise_construct_t{}, hash) {} +QVariant::QVariant(const QList<QVariant> &list) noexcept : d(std::piecewise_construct_t{}, list) {} +QVariant::QVariant(const QMap<QString, QVariant> &map) noexcept : d(std::piecewise_construct_t{}, map) {} +QVariant::QVariant(const QHash<QString, QVariant> &hash) noexcept : d(std::piecewise_construct_t{}, hash) {} QVariant::QVariant(QLatin1StringView val) : QVariant(QString(val)) {} @@ -921,7 +921,7 @@ QVariant::QVariant(const QJsonArray &jsonArray) : d(std::piecewise_construct_t{} QVariant::QVariant(const QJsonDocument &jsonDocument) : d(std::piecewise_construct_t{}, jsonDocument) {} #endif // QT_BOOTSTRAPPED #if QT_CONFIG(itemmodel) -QVariant::QVariant(const QModelIndex &modelIndex) : d(std::piecewise_construct_t{}, modelIndex) {} +QVariant::QVariant(const QModelIndex &modelIndex) noexcept : d(std::piecewise_construct_t{}, modelIndex) {} QVariant::QVariant(const QPersistentModelIndex &modelIndex) : d(std::piecewise_construct_t{}, modelIndex) {} #endif diff --git a/src/corelib/kernel/qvariant.h b/src/corelib/kernel/qvariant.h index 7074c69e93..73b7e97792 100644 --- a/src/corelib/kernel/qvariant.h +++ b/src/corelib/kernel/qvariant.h @@ -209,18 +209,18 @@ public: {} #endif - QVariant(const QByteArray &bytearray); + QVariant(const QByteArray &bytearray) noexcept; QVariant(const QBitArray &bitarray); - QVariant(const QString &string); + QVariant(const QString &string) noexcept; QVariant(QLatin1StringView string); - QVariant(const QStringList &stringlist); + QVariant(const QStringList &stringlist) noexcept; QVariant(QChar qchar) noexcept; QVariant(QDate date) noexcept; QVariant(QTime time) noexcept; - QVariant(const QDateTime &datetime); - QVariant(const QList<QVariant> &list); - QVariant(const QMap<QString, QVariant> &map); - QVariant(const QHash<QString, QVariant> &hash); + QVariant(const QDateTime &datetime) noexcept; + QVariant(const QList<QVariant> &list) noexcept; + QVariant(const QMap<QString, QVariant> &map) noexcept; + QVariant(const QHash<QString, QVariant> &hash) noexcept; #ifndef QT_NO_GEOM_VARIANT QVariant(QSize size) noexcept; QVariant(QSizeF size) noexcept; @@ -247,7 +247,7 @@ public: QVariant(const QJsonDocument &jsonDocument); #endif // QT_BOOTSTRAPPED #if QT_CONFIG(itemmodel) - QVariant(const QModelIndex &modelIndex); + QVariant(const QModelIndex &modelIndex) noexcept; QVariant(const QPersistentModelIndex &modelIndex); #endif #if !defined(Q_CC_GHS) |