diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2020-05-02 23:03:39 +0200 |
---|---|---|
committer | Marc Mutz <marc.mutz@kdab.com> | 2020-05-05 18:58:35 +0200 |
commit | 6da4ff824e5ea8581370e774edcad265d83e3562 (patch) | |
tree | 08225e81751d28e2b002e5ad38210b9be620ee8f /src/tools | |
parent | 4ab2abf37981e7dcdfaa92a2b6a788495d7ce5a4 (diff) |
Port two more local QSets to QDuplicateTrackers
Apart from a more fitting, minimal, API, QDuplicateTracker also
transparently uses C++17 pmr::monotonic_buffer_resource to avoid, or
at least reduce, memory allocations.
Change-Id: Ia9e837ebba88aeb1916da041fc8460a0692a03e4
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/tools')
-rw-r--r-- | src/tools/moc/moc.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/tools/moc/moc.cpp b/src/tools/moc/moc.cpp index 949a2e075a..dbe75ebe51 100644 --- a/src/tools/moc/moc.cpp +++ b/src/tools/moc/moc.cpp @@ -39,6 +39,7 @@ // for normalizeTypeInternal #include <private/qmetaobject_moc_p.h> +#include <private/qduplicatetracker_p.h> QT_BEGIN_NAMESPACE @@ -1868,14 +1869,13 @@ void Moc::checkProperties(ClassDef *cdef) // specify get function, for compatibiliy we accept functions // returning pointers, or const char * for QByteArray. // - QSet<QByteArray> definedProperties; + QDuplicateTracker<QByteArray> definedProperties; for (int i = 0; i < cdef->propertyList.count(); ++i) { PropertyDef &p = cdef->propertyList[i]; - if (definedProperties.contains(p.name)) { + if (definedProperties.hasSeen(p.name)) { QByteArray msg = "The property '" + p.name + "' is defined multiple times in class " + cdef->classname + "."; warning(msg.constData()); } - definedProperties.insert(p.name); if (p.read.isEmpty() && p.member.isEmpty()) { if (!cdef->qPropertyMembers.contains(p.name) && !p.isQProperty) { |