summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVolker Hilsheimer <volker.hilsheimer@qt.io>2020-10-22 16:33:41 +0200
committerVolker Hilsheimer <volker.hilsheimer@qt.io>2020-10-23 10:25:42 +0200
commitaa38ab8f689b315061b3277422e0e9261512b0bf (patch)
treeef6344160a95332586f502a1ea5d7cfc29da8d80
parentcbefd42e39d28d478373b9191cc9b3340481390b (diff)
Make Q(Multi)Map equality operators documentation-friendly
Change-Id: I1a84c437bb19dd3c667596c59e1404bbbf39978e Reviewed-by: Paul Wicking <paul.wicking@qt.io>
-rw-r--r--src/corelib/tools/qmap.h15
-rw-r--r--src/corelib/tools/qmap.qdoc4
2 files changed, 16 insertions, 3 deletions
diff --git a/src/corelib/tools/qmap.h b/src/corelib/tools/qmap.h
index 7292617904..0030c076ad 100644
--- a/src/corelib/tools/qmap.h
+++ b/src/corelib/tools/qmap.h
@@ -272,12 +272,18 @@ public:
return {};
}
+#ifdef Q_QDOC
+ template <typename AKey, typename AT>
+ friend bool operator==(const QMap<AKey, AT> &lhs, const QMap<AKey, AT> &rhs);
+ template <typename AKey, typename AT>
+ friend bool operator!=(const QMap<AKey, AT> &lhs, const QMap<AKey, AT> &rhs);
+#else
// CHANGE: non-member equality comparison
template <typename AKey, typename AT>
friend QTypeTraits::compare_eq_result<AKey, AT> operator==(const QMap<AKey, AT> &lhs, const QMap<AKey, AT> &rhs);
template <typename AKey, typename AT>
friend QTypeTraits::compare_eq_result<AKey, AT> operator!=(const QMap<AKey, AT> &lhs, const QMap<AKey, AT> &rhs);
-
+#endif
// TODO: add the other comparison operators; std::map has them.
size_type size() const { return d ? size_type(d->m.size()) : size_type(0); }
@@ -842,11 +848,18 @@ public:
return {};
}
+#ifdef Q_QDOC
+ template <typename AKey, typename AT>
+ friend bool operator==(const QMultiMap<AKey, AT> &lhs, const QMultiMap<AKey, AT> &rhs);
+ template <typename AKey, typename AT>
+ friend bool operator!=(const QMultiMap<AKey, AT> &lhs, const QMultiMap<AKey, AT> &rhs);
+#else
// CHANGE: non-member equality comparison
template <typename AKey, typename AT>
friend QTypeTraits::compare_eq_result<AKey, AT> operator==(const QMultiMap<AKey, AT> &lhs, const QMultiMap<AKey, AT> &rhs);
template <typename AKey, typename AT>
friend QTypeTraits::compare_eq_result<AKey, AT> operator!=(const QMultiMap<AKey, AT> &lhs, const QMultiMap<AKey, AT> &rhs);
+#endif
// TODO: add the other comparison operators; std::multimap has them.
diff --git a/src/corelib/tools/qmap.qdoc b/src/corelib/tools/qmap.qdoc
index b2ec6e15e4..79b3cc155d 100644
--- a/src/corelib/tools/qmap.qdoc
+++ b/src/corelib/tools/qmap.qdoc
@@ -249,7 +249,7 @@
Returns an STL map equivalent to this QMap.
*/
-/*! \fn template <class Key, class T> bool operator==(const QMap<Key, T> &lhs, const QMap<Key, T> &rhs) const
+/*! \fn template <class Key, class T> bool operator==(const QMap<Key, T> &lhs, const QMap<Key, T> &rhs)
\relates QMap
Returns \c true if \a lhs is equal to \a rhs; otherwise returns
@@ -264,7 +264,7 @@
\sa operator!=()
*/
-/*! \fn template <class Key, class T> bool operator!=(const QMap<Key, T> &lhs, const QMap<Key, T> &rhs) const
+/*! \fn template <class Key, class T> bool operator!=(const QMap<Key, T> &lhs, const QMap<Key, T> &rhs)
\relates QMap
Returns \c true if \a lhs is not equal to \a rhs; otherwise returns