diff options
author | Olivier Goffart <olivier.goffart@nokia.com> | 2011-07-18 12:12:57 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-07-19 16:49:02 +0200 |
commit | 55d68a16aafb93aa15bcdbd78892006777b6067a (patch) | |
tree | 7be961d11a1a5027bf0370035b06e211ab54fcbb /src/corelib/plugin | |
parent | d5bdbd70b3579f8da12be1edae48fdbb24b340fb (diff) |
Add a qHash for QUuid
Change-Id: Ib0d9a765b8db3b34aa20d510de501c72a54cacbe
Reviewed-on: http://codereview.qt.nokia.com/1743
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Xizhi Zhu <xizhi.zhu@nokia.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Diffstat (limited to 'src/corelib/plugin')
-rw-r--r-- | src/corelib/plugin/quuid.cpp | 11 | ||||
-rw-r--r-- | src/corelib/plugin/quuid.h | 2 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/corelib/plugin/quuid.cpp b/src/corelib/plugin/quuid.cpp index ad182eb9bf..6fca1b6709 100644 --- a/src/corelib/plugin/quuid.cpp +++ b/src/corelib/plugin/quuid.cpp @@ -927,4 +927,15 @@ QUuid QUuid::createUuid() guid; otherwise returns false. */ +/** + Returns a hash of the QUuid + */ +uint qHash(const QUuid &uuid) +{ + return uuid.data1 ^ uuid.data2 ^ (uuid.data3 << 16) + ^ ((uuid.data4[0] << 24) | (uuid.data4[1] << 16) | (uuid.data4[2] << 8) | uuid.data4[3]) + ^ ((uuid.data4[4] << 24) | (uuid.data4[5] << 16) | (uuid.data4[6] << 8) | uuid.data4[7]); +} + + QT_END_NAMESPACE diff --git a/src/corelib/plugin/quuid.h b/src/corelib/plugin/quuid.h index 28feff13d2..b941079df0 100644 --- a/src/corelib/plugin/quuid.h +++ b/src/corelib/plugin/quuid.h @@ -189,6 +189,8 @@ Q_CORE_EXPORT QDataStream &operator<<(QDataStream &, const QUuid &); Q_CORE_EXPORT QDataStream &operator>>(QDataStream &, QUuid &); #endif +Q_CORE_EXPORT uint qHash(const QUuid &uuid); + QT_END_NAMESPACE QT_END_HEADER |