diff options
author | Marc Mutz <marc.mutz@qt.io> | 2022-05-16 17:59:23 +0200 |
---|---|---|
committer | Marc Mutz <marc.mutz@qt.io> | 2022-06-07 06:46:04 +0000 |
commit | d6575f37179aef80490f4ec03a61ab6f5033bd3d (patch) | |
tree | cc9f6ff4aab3d021c87976c0f6b7c5aaaa4da2af /src/corelib/text | |
parent | 36c1a7ba23eab079683a344dc34094c28a9f56e2 (diff) |
QByteArray: de-inline to/fromStdString()
Removes another owning container manipulation that made the top entry
in Clang -ftime-trace's most-expensive template instantiations in a
QtWidgets build.
Pick-to: 6.4
Task-number: QTBUG-97601
Change-Id: I8c765ea2e6c46da5188b70c9503dd87e63f6b328
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/corelib/text')
-rw-r--r-- | src/corelib/text/qbytearray.cpp | 8 | ||||
-rw-r--r-- | src/corelib/text/qbytearray.h | 10 |
2 files changed, 10 insertions, 8 deletions
diff --git a/src/corelib/text/qbytearray.cpp b/src/corelib/text/qbytearray.cpp index 573a36d9a0..1219b3d86d 100644 --- a/src/corelib/text/qbytearray.cpp +++ b/src/corelib/text/qbytearray.cpp @@ -4561,6 +4561,10 @@ QByteArray QByteArray::fromPercentEncoding(const QByteArray &input, char percent \sa toStdString(), QString::fromStdString() */ +QByteArray QByteArray::fromStdString(const std::string &s) +{ + return QByteArray(s.data(), qsizetype(s.size())); +} /*! \fn std::string QByteArray::toStdString() const @@ -4574,6 +4578,10 @@ QByteArray QByteArray::fromPercentEncoding(const QByteArray &input, char percent \sa fromStdString(), QString::toStdString() */ +std::string QByteArray::toStdString() const +{ + return std::string(data(), size_t(size())); +} /*! \since 4.4 diff --git a/src/corelib/text/qbytearray.h b/src/corelib/text/qbytearray.h index 4ee6c34baa..a43a1a4128 100644 --- a/src/corelib/text/qbytearray.h +++ b/src/corelib/text/qbytearray.h @@ -430,8 +430,8 @@ public: void shrink_to_fit() { squeeze(); } iterator erase(const_iterator first, const_iterator last); - static inline QByteArray fromStdString(const std::string &s); - inline std::string toStdString() const; + static QByteArray fromStdString(const std::string &s); + std::string toStdString() const; inline qsizetype size() const noexcept { return d->size; } #if QT_DEPRECATED_SINCE(6, 4) @@ -567,12 +567,6 @@ inline QByteArray &QByteArray::setNum(ulong n, int base) inline QByteArray &QByteArray::setNum(float n, char format, int precision) { return setNum(double(n), format, precision); } -inline std::string QByteArray::toStdString() const -{ return std::string(constData(), length()); } - -inline QByteArray QByteArray::fromStdString(const std::string &s) -{ return QByteArray(s.data(), qsizetype(s.size())); } - #if !defined(QT_NO_DATASTREAM) || defined(QT_BOOTSTRAPPED) Q_CORE_EXPORT QDataStream &operator<<(QDataStream &, const QByteArray &); Q_CORE_EXPORT QDataStream &operator>>(QDataStream &, QByteArray &); |