From 0495970631fc4904c485f42460a30373d32d4c25 Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Wed, 8 Apr 2015 19:44:48 +0200 Subject: Add qHash(QMimeType) QMimeTypes can be compared for equality, so qHash should be overloaded, too. [ChangeLog][QtCore][QMimeType] Added qHash(QMimeType). Change-Id: I32608760cb7ef5e47f49192d0205cdca3d4e1765 Reviewed-by: David Faure --- src/corelib/mimetypes/qmimetype.cpp | 13 +++++++++++++ src/corelib/mimetypes/qmimetype.h | 4 ++++ 2 files changed, 17 insertions(+) (limited to 'src/corelib/mimetypes') diff --git a/src/corelib/mimetypes/qmimetype.cpp b/src/corelib/mimetypes/qmimetype.cpp index 70df9868b6..ed856a538c 100644 --- a/src/corelib/mimetypes/qmimetype.cpp +++ b/src/corelib/mimetypes/qmimetype.cpp @@ -43,6 +43,7 @@ #include #include +#include #include @@ -180,6 +181,18 @@ bool QMimeType::operator==(const QMimeType &other) const return d == other.d || d->name == other.d->name; } +/*! + \since 5.6 + \relates QMimeType + + Returns the hash value for \a key, using + \a seed to seed the calculation. + */ +uint qHash(const QMimeType &key, uint seed) Q_DECL_NOTHROW +{ + return qHash(key.d->name, seed); +} + /*! \fn bool QMimeType::operator!=(const QMimeType &other) const; Returns \c true if \a other does not equal this QMimeType object, otherwise returns \c false. diff --git a/src/corelib/mimetypes/qmimetype.h b/src/corelib/mimetypes/qmimetype.h index 4ba3c53470..5693b703ee 100644 --- a/src/corelib/mimetypes/qmimetype.h +++ b/src/corelib/mimetypes/qmimetype.h @@ -46,6 +46,9 @@ QT_BEGIN_NAMESPACE class QMimeTypePrivate; class QFileinfo; class QStringList; +class QMimeType; + +Q_CORE_EXPORT uint qHash(const QMimeType &key, uint seed = 0) Q_DECL_NOTHROW; class Q_CORE_EXPORT QMimeType { @@ -100,6 +103,7 @@ protected: friend class QMimeXMLProvider; friend class QMimeBinaryProvider; friend class QMimeTypePrivate; + friend Q_CORE_EXPORT uint qHash(const QMimeType &key, uint seed) Q_DECL_NOTHROW; QExplicitlySharedDataPointer d; }; -- cgit v1.2.3