diff options
author | Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> | 2023-10-04 13:24:31 +0200 |
---|---|---|
committer | Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> | 2023-10-05 02:40:02 +0200 |
commit | 7d18ad49a37440835bb38bd77bc4e0991387ada0 (patch) | |
tree | b2ae980850fdc7ffe832f2722ad2235fd395d39e /src/corelib/text/qstring.h | |
parent | 2c6b7ff501f0f7e13bb0ec6583fc9b9c3865b76e (diff) |
QStringView: simplify the constructor from QString
We have to single QString out because of the isNull/isEmpty distinction.
Still, we can avoid having a constructor template on it constrained on
the argument being precisely QString. This is a historic remnant; in Qt
5 the constructor also worked with QStringRef.
Change-Id: I5457a83d5b77887f57ea9910a826f729ec276d28
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/text/qstring.h')
-rw-r--r-- | src/corelib/text/qstring.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/corelib/text/qstring.h b/src/corelib/text/qstring.h index 06c6f668c4..31d19f7fe6 100644 --- a/src/corelib/text/qstring.h +++ b/src/corelib/text/qstring.h @@ -1437,6 +1437,13 @@ inline QString &&asString(QString &&s) { return std::move(s); } #endif // +// QStringView::QStringView(const QString &) implementation +// + +inline QStringView::QStringView(const QString &str) noexcept + : QStringView(str.isNull() ? nullptr : str.data(), qsizetype(str.size())) {} + +// // QStringView::arg() implementation // |