From 23a7f9b71982b473a661a3805f80403184ce6629 Mon Sep 17 00:00:00 2001 From: Mathew Sutcliffe Date: Sun, 20 Mar 2016 00:42:46 +0000 Subject: [PATCH] refs #624 CLogPattern can use Mixin::HashByTuple because QSet is hashable since Qt 5.5. --- src/blackmisc/logpattern.h | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/src/blackmisc/logpattern.h b/src/blackmisc/logpattern.h index 7303bf2cc..940697df0 100644 --- a/src/blackmisc/logpattern.h +++ b/src/blackmisc/logpattern.h @@ -27,6 +27,7 @@ namespace BlackMisc */ class BLACKMISC_EXPORT CLogPattern : public Mixin::MetaType, + public Mixin::HashByTuple, public Mixin::EqualsByTuple, public Mixin::DBusOperators, public Mixin::Index, @@ -92,15 +93,6 @@ namespace BlackMisc //! \copydoc BlackMisc::Mixin::DBusByTuple::unmarshallFromDbus() void unmarshallFromDbus(const QDBusArgument &argument); - //! \copydoc CValueObject::qHash - //! \todo Use Mixin::HashByTuple when Qt 5.5 is baseline (qHash(QSet) was added in Qt 5.5). - friend uint qHash(const CLogPattern &p, uint seed = 0) - { - seed = std::accumulate(p.m_severities.begin(), p.m_severities.end(), seed, [](uint i, CStatusMessage::StatusSeverity s) { return i + (1 << static_cast(s)); }); - seed ^= std::accumulate(p.m_strings.begin(), p.m_strings.end(), 0, [](uint i, const QString &s) { return i + qHash(s); }); - return qHash(static_cast(p.m_strategy), seed); - } - private: bool checkInvariants() const;