Inline QCollator's QString methods via QStringView

Can't be done before Qt 7 unless we do it now, as it'd be BiC.

Task-number: QTBUG-86400
Change-Id: Ib7b2e7b20b4a80b53dfc6535efe90d1674f38e81
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
(cherry picked from commit 53a1e015fdb4082900f306b5e2cca7bd5df77d03)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Edward Welbourne 2020-11-27 18:18:07 +01:00 committed by Qt Cherry-pick Bot
parent 491f67dfa8
commit d2e0bfad94
2 changed files with 6 additions and 10 deletions

View File

@ -314,6 +314,7 @@ bool QCollator::ignorePunctuation() const
*/ */
/*! /*!
\fn int QCollator::compare(const QString &s1, const QString &s2) const
\overload \overload
Compares \a s1 with \a s2. Compares \a s1 with \a s2.
@ -321,12 +322,9 @@ bool QCollator::ignorePunctuation() const
Returns an integer less than, equal to, or greater than zero depending on Returns an integer less than, equal to, or greater than zero depending on
whether \a s1 sorts before, with or after \a s2. whether \a s1 sorts before, with or after \a s2.
*/ */
int QCollator::compare(const QString &s1, const QString &s2) const
{
return compare(QStringView(s1), QStringView(s2));
}
/*! /*!
\fn int QCollator::compare(const QChar *s1, int len1, const QChar *s2, int len2) const
\overload \overload
Compares \a s1 with \a s2. \a len1 and \a len2 specify the lengths of the Compares \a s1 with \a s2. \a len1 and \a len2 specify the lengths of the
@ -335,10 +333,6 @@ int QCollator::compare(const QString &s1, const QString &s2) const
Returns an integer less than, equal to, or greater than zero depending on Returns an integer less than, equal to, or greater than zero depending on
whether \a s1 sorts before, with or after \a s2. whether \a s1 sorts before, with or after \a s2.
*/ */
int QCollator::compare(const QChar *s1, int len1, const QChar *s2, int len2) const
{
return compare(QStringView(s1, len1), QStringView(s2, len2));
}
#endif // QT_STRINGVIEW_LEVEL < 2 #endif // QT_STRINGVIEW_LEVEL < 2
/*! /*!

View File

@ -105,8 +105,10 @@ public:
bool ignorePunctuation() const; bool ignorePunctuation() const;
#if QT_STRINGVIEW_LEVEL < 2 #if QT_STRINGVIEW_LEVEL < 2
int compare(const QString &s1, const QString &s2) const; int compare(const QString &s1, const QString &s2) const
int compare(const QChar *s1, int len1, const QChar *s2, int len2) const; { return compare(QStringView(s1), QStringView(s2)); }
int compare(const QChar *s1, int len1, const QChar *s2, int len2) const
{ return compare(QStringView(s1, len1), QStringView(s2, len2)); }
bool operator()(const QString &s1, const QString &s2) const bool operator()(const QString &s1, const QString &s2) const
{ return compare(s1, s2) < 0; } { return compare(s1, s2) < 0; }