diff options
author | Sona Kurazyan <sona.kurazyan@qt.io> | 2020-06-07 18:41:41 +0200 |
---|---|---|
committer | Sona Kurazyan <sona.kurazyan@qt.io> | 2020-07-08 08:45:49 +0200 |
commit | 631127126cc14e7c01cc611532b3256b58785670 (patch) | |
tree | a89608313761f045129f6579d5c96d781d64ff31 /src/corelib/tools/qhash.cpp | |
parent | a55e938fb41dfb781cdef6a4e24961a272d2dbab (diff) |
Introduce QByteArrayView
Created a QByteArrayView in symmetry with QStringView.
Added the basic tests symmetrical to QStringView tests.
Moved the implementations of non-modifying methods of QByteArray to
namespace QtPrivate, to be reused inline from both QByteArray and
QByteArrayView. Changed QByteArray's counterparts of those methods to
take QByteArrayView as argument instead of QByteArray. Removed
QByteArray's operator QNoImplicitBoolCast(), because it was causing
ambiguity when calling those methods with QByteArray argument (it was
there to perevnt if(!ba)/if(ba) from compiling, but currently that would
be ambiguous and won't compile anyway).
[ChangeLog][QtCore][QByteArrayView] New class.
Task-number: QTBUG-84321
Change-Id: I05f92e654cf65c95f2bb31b9c9018746ac110426
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/corelib/tools/qhash.cpp')
-rw-r--r-- | src/corelib/tools/qhash.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/corelib/tools/qhash.cpp b/src/corelib/tools/qhash.cpp index f52d46a9e8..0f46e7f113 100644 --- a/src/corelib/tools/qhash.cpp +++ b/src/corelib/tools/qhash.cpp @@ -400,6 +400,11 @@ size_t qHash(const QByteArray &key, size_t seed) noexcept return qHashBits(key.constData(), size_t(key.size()), seed); } +size_t qHash(const QByteArrayView &key, size_t seed) noexcept +{ + return qHashBits(key.constData(), size_t(key.size()), seed); +} + size_t qHash(QStringView key, size_t seed) noexcept { return qHashBits(key.data(), key.size()*sizeof(QChar), seed); @@ -886,6 +891,13 @@ size_t qHash(long double key, size_t seed) noexcept Returns the hash value for the \a key, using \a seed to seed the calculation. */ +/*! \fn size_t qHash(const QByteArrayView &key, size_t seed = 0) + \relates QHash + \since 6.0 + + Returns the hash value for the \a key, using \a seed to seed the calculation. +*/ + /*! \fn size_t qHash(const QBitArray &key, size_t seed = 0) \relates QHash \since 5.0 |