diff options
author | Konstantin Ritt <ritt.ks@gmail.com> | 2012-05-23 04:10:55 +0300 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-06-01 03:16:17 +0200 |
commit | cd95bcd7dbc5a4df8950bbc4bec3a6a02c71f00b (patch) | |
tree | f21f7ef9b589628df4cce87d9f6e3abd7a24263a /src/corelib/tools/qstring.h | |
parent | f19fbcf4e3c531cdbaf82ea32da2210bea64cb1c (diff) |
Allow compare QLatin1String to QLatin1String
even if QT_NO_CAST_FROM_ASCII is defined.
Change-Id: I8c4deceedb6f3e3cd5bdf72d6e9d189c509c9ff3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/tools/qstring.h')
-rw-r--r-- | src/corelib/tools/qstring.h | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/src/corelib/tools/qstring.h b/src/corelib/tools/qstring.h index b5633834eb..77bfacc6a4 100644 --- a/src/corelib/tools/qstring.h +++ b/src/corelib/tools/qstring.h @@ -982,6 +982,23 @@ inline bool operator!=(QString::Null, QString::Null) { return false; } inline bool operator!=(QString::Null, const QString &s) { return !s.isNull(); } inline bool operator!=(const QString &s, QString::Null) { return !s.isNull(); } +inline bool operator==(QLatin1String s1, QLatin1String s2) +{ return (s1.size() == s2.size() && !memcmp(s1.latin1(), s2.latin1(), s1.size())); } +inline bool operator!=(QLatin1String s1, QLatin1String s2) +{ return (s1.size() != s2.size() || memcmp(s1.latin1(), s2.latin1(), s1.size())); } +inline bool operator<(QLatin1String s1, QLatin1String s2) +{ int r = memcmp(s1.latin1(), s2.latin1(), qMin(s1.size(), s2.size())); + return (r < 0) || (r == 0 && s1.size() < s2.size()); } +inline bool operator<=(QLatin1String s1, QLatin1String s2) +{ int r = memcmp(s1.latin1(), s2.latin1(), qMin(s1.size(), s2.size())); + return (r < 0) || (r == 0 && s1.size() <= s2.size()); } +inline bool operator>(QLatin1String s1, QLatin1String s2) +{ int r = memcmp(s1.latin1(), s2.latin1(), qMin(s1.size(), s2.size())); + return (r > 0) || (r == 0 && s1.size() > s2.size()); } +inline bool operator>=(QLatin1String s1, QLatin1String s2) +{ int r = memcmp(s1.latin1(), s2.latin1(), qMin(s1.size(), s2.size())); + return (r > 0) || (r == 0 && s1.size() >= s2.size()); } + inline bool QLatin1String::operator==(const QString &s) const { return s == *this; } inline bool QLatin1String::operator!=(const QString &s) const @@ -1035,23 +1052,6 @@ inline QT_ASCII_CAST_WARN bool operator<=(const char *s1, QLatin1String s2) inline QT_ASCII_CAST_WARN bool operator>=(const char *s1, QLatin1String s2) { return (QString::fromUtf8(s1) >= s2); } -inline bool operator==(QLatin1String s1, QLatin1String s2) -{ return (s1.size() == s2.size() && !memcmp(s1.latin1(), s2.latin1(), s1.size())); } -inline bool operator!=(QLatin1String s1, QLatin1String s2) -{ return (s1.size() != s2.size() || memcmp(s1.latin1(), s2.latin1(), s1.size())); } -inline bool operator<(QLatin1String s1, QLatin1String s2) -{ int r = memcmp(s1.latin1(), s2.latin1(), qMin(s1.size(), s2.size())); - return (r < 0) || (r == 0 && s1.size() < s2.size()); } -inline bool operator<=(QLatin1String s1, QLatin1String s2) -{ int r = memcmp(s1.latin1(), s2.latin1(), qMin(s1.size(), s2.size())); - return (r < 0) || (r == 0 && s1.size() <= s2.size()); } -inline bool operator>(QLatin1String s1, QLatin1String s2) -{ int r = memcmp(s1.latin1(), s2.latin1(), qMin(s1.size(), s2.size())); - return (r > 0) || (r == 0 && s1.size() > s2.size()); } -inline bool operator>=(QLatin1String s1, QLatin1String s2) -{ int r = memcmp(s1.latin1(), s2.latin1(), qMin(s1.size(), s2.size())); - return (r > 0) || (r == 0 && s1.size() >= s2.size()); } - inline QT_ASCII_CAST_WARN bool QLatin1String::operator==(const char *s) const { return QString::fromUtf8(s) == *this; } inline QT_ASCII_CAST_WARN bool QLatin1String::operator!=(const char *s) const |