mirror of
https://github.com/OpenAPITools/openapi-generator.git
synced 2025-12-08 05:36:12 +00:00
added QSet as datatype for unique items (#8830)
This commit is contained in:
@@ -33,21 +33,33 @@ bool setDateTimeFormat(const QString&);
|
||||
template <typename T>
|
||||
QString toStringValue(const QList<T> &val);
|
||||
|
||||
template <typename T>
|
||||
QString toStringValue(const QSet<T> &val);
|
||||
|
||||
template <typename T>
|
||||
bool fromStringValue(const QList<QString> &inStr, QList<T> &val);
|
||||
|
||||
template <typename T>
|
||||
bool fromStringValue(const QSet<QString> &inStr, QList<T> &val);
|
||||
|
||||
template <typename T>
|
||||
bool fromStringValue(const QMap<QString, QString> &inStr, QMap<QString, T> &val);
|
||||
|
||||
template <typename T>
|
||||
QJsonValue toJsonValue(const QList<T> &val);
|
||||
|
||||
template <typename T>
|
||||
QJsonValue toJsonValue(const QSet<T> &val);
|
||||
|
||||
template <typename T>
|
||||
QJsonValue toJsonValue(const QMap<QString, T> &val);
|
||||
|
||||
template <typename T>
|
||||
bool fromJsonValue(QList<T> &val, const QJsonValue &jval);
|
||||
|
||||
template <typename T>
|
||||
bool fromJsonValue(QSet<T> &val, const QJsonValue &jval);
|
||||
|
||||
template <typename T>
|
||||
bool fromJsonValue(QMap<QString, T> &val, const QJsonValue &jval);
|
||||
|
||||
@@ -76,6 +88,18 @@ QString toStringValue(const QList<T> &val) {
|
||||
return strArray;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
QString toStringValue(const QSet<T> &val) {
|
||||
QString strArray;
|
||||
for (const auto &item : val) {
|
||||
strArray.append(toStringValue(item) + ",");
|
||||
}
|
||||
if (val.count() > 0) {
|
||||
strArray.chop(1);
|
||||
}
|
||||
return strArray;
|
||||
}
|
||||
|
||||
QJsonValue toJsonValue(const QString &value);
|
||||
QJsonValue toJsonValue(const QDateTime &value);
|
||||
QJsonValue toJsonValue(const QByteArray &value);
|
||||
@@ -98,6 +122,15 @@ QJsonValue toJsonValue(const QList<T> &val) {
|
||||
return jArray;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
QJsonValue toJsonValue(const QSet<T> &val) {
|
||||
QJsonArray jArray;
|
||||
for (const auto &item : val) {
|
||||
jArray.append(toJsonValue(item));
|
||||
}
|
||||
return jArray;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
QJsonValue toJsonValue(const QMap<QString, T> &val) {
|
||||
QJsonObject jObject;
|
||||
@@ -131,6 +164,17 @@ bool fromStringValue(const QList<QString> &inStr, QList<T> &val) {
|
||||
return ok;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
bool fromStringValue(const QSet<QString> &inStr, QList<T> &val) {
|
||||
bool ok = (inStr.count() > 0);
|
||||
for (const auto &item : inStr) {
|
||||
T itemVal;
|
||||
ok &= fromStringValue(item, itemVal);
|
||||
val.push_back(itemVal);
|
||||
}
|
||||
return ok;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
bool fromStringValue(const QMap<QString, QString> &inStr, QMap<QString, T> &val) {
|
||||
bool ok = (inStr.count() > 0);
|
||||
@@ -170,6 +214,21 @@ bool fromJsonValue(QList<T> &val, const QJsonValue &jval) {
|
||||
return ok;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
bool fromJsonValue(QSet<T> &val, const QJsonValue &jval) {
|
||||
bool ok = true;
|
||||
if (jval.isArray()) {
|
||||
for (const auto jitem : jval.toArray()) {
|
||||
T item;
|
||||
ok &= fromJsonValue(item, jitem);
|
||||
val.insert(item);
|
||||
}
|
||||
} else {
|
||||
ok = false;
|
||||
}
|
||||
return ok;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
bool fromJsonValue(QMap<QString, T> &val, const QJsonValue &jval) {
|
||||
bool ok = true;
|
||||
|
||||
Reference in New Issue
Block a user