aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/common/compatibility.h
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2021-12-17 07:06:30 -0500
committerLibravatarUnit 193 <unit193@unit193.net>2021-12-17 07:06:30 -0500
commit1fdc150116cad39aae5c5da407c3312b47a59e3a (patch)
tree123c79a4d7ad2d45781ba03ce939f7539fb428d8 /SQLiteStudio3/coreSQLiteStudio/common/compatibility.h
parentfeda8a7db8d1d7c5439aa8f8feef7cc0dd2b59a0 (diff)
New upstream version 3.3.3+dfsg1.upstream/3.3.3+dfsg1
Diffstat (limited to 'SQLiteStudio3/coreSQLiteStudio/common/compatibility.h')
-rw-r--r--SQLiteStudio3/coreSQLiteStudio/common/compatibility.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/SQLiteStudio3/coreSQLiteStudio/common/compatibility.h b/SQLiteStudio3/coreSQLiteStudio/common/compatibility.h
new file mode 100644
index 0000000..5ed5c8b
--- /dev/null
+++ b/SQLiteStudio3/coreSQLiteStudio/common/compatibility.h
@@ -0,0 +1,40 @@
+#ifndef COMPATIBILITY_H
+#define COMPATIBILITY_H
+
+#include <QList>
+#include <QSet>
+#include <QHash>
+
+template <class T>
+inline QSet<T> toSet(const QList<T>& list)
+{
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0))
+ return QSet<T>(list.begin(), list.end());
+#else
+ return list.toSet();
+#endif
+}
+
+template <class K, class V>
+inline void unite(QHash<K, V>& h1, const QHash<K, V>& h2)
+{
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 15, 0))
+ h1.insert(h2);
+#else
+ h1.unite(h2);
+#endif
+}
+
+template <class T>
+void sSort(T& collection)
+{
+ std::sort(collection.begin(), collection.end());
+}
+
+template <class T, class C>
+void sSort(T& collection, C cmp)
+{
+ std::sort(collection.begin(), collection.end(), cmp);
+}
+
+#endif // COMPATIBILITY_H