mirror of
https://github.com/OpenAPITools/openapi-generator.git
synced 2025-06-29 12:10:54 +00:00
added QSet as datatype for unique items (#8830)
This commit is contained in:
parent
83a5c3db1e
commit
950bb3d18f
@ -105,6 +105,7 @@ public class CppQt5AbstractCodegen extends AbstractCppCodegen implements Codegen
|
||||
typeMapping.put("number", "double");
|
||||
typeMapping.put("array", "QList");
|
||||
typeMapping.put("map", "QMap");
|
||||
typeMapping.put("set", "QSet");
|
||||
typeMapping.put("object", PREFIX + "Object");
|
||||
// mapped as "file" type for OAS 3.0
|
||||
typeMapping.put("ByteArray", "QByteArray");
|
||||
@ -122,6 +123,7 @@ public class CppQt5AbstractCodegen extends AbstractCppCodegen implements Codegen
|
||||
systemIncludes.add("QString");
|
||||
systemIncludes.add("QList");
|
||||
systemIncludes.add("QMap");
|
||||
systemIncludes.add("QSet");
|
||||
systemIncludes.add("QDate");
|
||||
systemIncludes.add("QDateTime");
|
||||
systemIncludes.add("QByteArray");
|
||||
|
@ -25,21 +25,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);
|
||||
|
||||
@ -68,6 +80,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);
|
||||
@ -90,6 +114,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;
|
||||
@ -123,6 +156,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);
|
||||
@ -162,6 +206,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;
|
||||
|
@ -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;
|
||||
|
Loading…
x
Reference in New Issue
Block a user