summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@kdab.com>2014-03-28 08:40:20 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-04-11 22:55:10 +0200
commit0b2bd6be6c1c4a97209078e22cac68b61bedd9f5 (patch)
treecd0dc032622bdb368a4a19e2e059ea34e2d9dc69
parentd5b7b4e41cb9fa6cd14129336ce853a0564a7fea (diff)
QStringList: add move ctor from QList<QString>
Change-Id: I93fe4656c1a608ccc828bd9db528d4597a22f070 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
-rw-r--r--src/corelib/tools/qstringlist.cpp10
-rw-r--r--src/corelib/tools/qstringlist.h3
2 files changed, 13 insertions, 0 deletions
diff --git a/src/corelib/tools/qstringlist.cpp b/src/corelib/tools/qstringlist.cpp
index c735fbcc42..0d37b6ea58 100644
--- a/src/corelib/tools/qstringlist.cpp
+++ b/src/corelib/tools/qstringlist.cpp
@@ -204,6 +204,16 @@ QT_BEGIN_NAMESPACE
*/
/*!
+ \fn QStringList::QStringList(QList<QString> &&other)
+ \overload
+ \since 5.4
+
+ Move-constructs from QList<QString>.
+
+ After a successful construction, \a other will be empty.
+*/
+
+/*!
\fn QStringList &QStringList::operator=(const QList<QString> &other)
\since 5.4
diff --git a/src/corelib/tools/qstringlist.h b/src/corelib/tools/qstringlist.h
index 271599b9d7..7f06be3ca0 100644
--- a/src/corelib/tools/qstringlist.h
+++ b/src/corelib/tools/qstringlist.h
@@ -64,6 +64,9 @@ public:
inline QStringList() { }
inline explicit QStringList(const QString &i) { append(i); }
inline QStringList(const QList<QString> &l) : QList<QString>(l) { }
+#ifdef Q_COMPILER_RVALUE_REFS
+ inline QStringList(QList<QString> &&l) : QList<QString>(std::move(l)) { }
+#endif
#ifdef Q_COMPILER_INITIALIZER_LISTS
inline QStringList(std::initializer_list<QString> args) : QList<QString>(args) { }
#endif