QDuplicateTracker: add rvalue overload

We have at least one user that only ever passes rvalues.

Change-Id: I3f190b8d074e40a23c52e791635c9a1c45ba00ab
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
bb10
Marc Mutz 2020-05-05 07:41:51 +02:00
parent 900e8b023b
commit 4ab2abf379
1 changed files with 12 additions and 0 deletions

View File

@ -84,6 +84,18 @@ public:
set.insert(s);
const int n = set.size();
inserted = qExchange(setSize, n) != n;
#endif
return !inserted;
}
Q_REQUIRED_RESULT bool hasSeen(T &&s)
{
bool inserted;
#ifdef __cpp_lib_memory_resource
inserted = set.insert(std::move(s)).second;
#else
set.insert(std::move(s));
const int n = set.size();
inserted = qExchange(setSize, n) != n;
#endif
return !inserted;
}