aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/common/utils.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/utils.h
parentfeda8a7db8d1d7c5439aa8f8feef7cc0dd2b59a0 (diff)
New upstream version 3.3.3+dfsg1.upstream/3.3.3+dfsg1
Diffstat (limited to 'SQLiteStudio3/coreSQLiteStudio/common/utils.h')
-rw-r--r--SQLiteStudio3/coreSQLiteStudio/common/utils.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/SQLiteStudio3/coreSQLiteStudio/common/utils.h b/SQLiteStudio3/coreSQLiteStudio/common/utils.h
index 24ea150..f7317e2 100644
--- a/SQLiteStudio3/coreSQLiteStudio/common/utils.h
+++ b/SQLiteStudio3/coreSQLiteStudio/common/utils.h
@@ -140,6 +140,33 @@ QList<T> concat(const QList<QList<T>>& list)
return result;
}
+template <class T, typename R = QList<T>>
+R concat(const QList<QSet<T>>& list)
+{
+ R result;
+ for (const QSet<T>& itemSet : list)
+ for (const T& subitem : itemSet)
+ result << subitem;
+
+ return result;
+}
+
+template <class T>
+QSet<T> concatSet(const QList<QSet<T>>& list)
+{
+ return concat<T, QSet<T>>(list);
+}
+
+template <class T>
+QSet<T> concat(const QSet<QSet<T>>& list)
+{
+ QSet<T> result;
+ for (const QSet<T>& item : list)
+ result.unite(item);
+
+ return result;
+}
+
API_EXPORT QStringList concat(const QList<QStringList>& list);
/**
@@ -293,6 +320,8 @@ void removeDuplicates(QList<T>& list)
}
}
+API_EXPORT uint qHash(const QVariant& var);
+
API_EXPORT QByteArray serializeToBytes(const QVariant& value);
API_EXPORT QVariant deserializeFromBytes(const QByteArray& bytes);