summaryrefslogtreecommitdiffstats
path: root/src/gui/text/qfontengine_p.h
diff options
context:
space:
mode:
authorGiuseppe D'Angelo <giuseppe.dangelo@kdab.com>2020-02-14 16:16:56 +0100
committerGiuseppe D'Angelo <giuseppe.dangelo@kdab.com>2020-05-12 01:51:20 +0200
commit707129fd5a7c6390fbdf4270119226df2a427fcd (patch)
tree3394b456eae374078330684d0523b7874ac630de /src/gui/text/qfontengine_p.h
parent2844631aa977fb1619ec3910090d1bdd4c7459c2 (diff)
Long live qHashMulti(Commutative)
Add a helper function so that we have a shortcut. Instead of writing: QHashCombine hash; seed = hash(seed, fieldA); seed = hash(seed, fieldB); // etc. return seed; one can now simply write: return qHashMulti(seed, fieldA, fieldB, fieldC); Port a few usages inside qtbase as a demonstration. [ChangeLog][QtCore][QHash] Added the qHashMulti and qHashMultiCommutative functions as convenience helpers to calculate a hash from multiple variables (typically, data members of a class). Change-Id: I881a9ad41168df20ceecc6588a94abe7ddc6a532 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Diffstat (limited to 'src/gui/text/qfontengine_p.h')
-rw-r--r--src/gui/text/qfontengine_p.h7
1 files changed, 1 insertions, 6 deletions
diff --git a/src/gui/text/qfontengine_p.h b/src/gui/text/qfontengine_p.h
index cbfc985eec..7a0ccca6a0 100644
--- a/src/gui/text/qfontengine_p.h
+++ b/src/gui/text/qfontengine_p.h
@@ -410,12 +410,7 @@ inline bool operator ==(const QFontEngine::FaceId &f1, const QFontEngine::FaceId
inline size_t qHash(const QFontEngine::FaceId &f, size_t seed = 0)
noexcept(noexcept(qHash(f.filename)))
{
- QtPrivate::QHashCombine hash;
- seed = hash(seed, f.filename);
- seed = hash(seed, f.uuid);
- seed = hash(seed, f.index);
- seed = hash(seed, f.encoding);
- return seed;
+ return qHashMulti(seed, f.filename, f.uuid, f.index, f.encoding);
}