From 0dd491fbd189baaabadcab2344a05e3cf3898287 Mon Sep 17 00:00:00 2001 From: Kitsune Ral Date: Sat, 2 Jun 2018 13:32:47 +0900 Subject: csapi: Use Omittable<> container instead of intrusive 'omitted' field Also: use the latest feature of GTAD, +set/+on, to make gtad.yaml more compact. --- lib/csapi/{{base}}.cpp.mustache | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) (limited to 'lib/csapi/{{base}}.cpp.mustache') diff --git a/lib/csapi/{{base}}.cpp.mustache b/lib/csapi/{{base}}.cpp.mustache index c6504f42..4abe38eb 100644 --- a/lib/csapi/{{base}}.cpp.mustache +++ b/lib/csapi/{{base}}.cpp.mustache @@ -10,10 +10,7 @@ using namespace QMatrixClient; {{#models.model}}{{#in?}} QJsonObject QMatrixClient::toJson(const {{qualifiedName}}& pod) { - QJsonObject _json; - if (pod.omitted) - return _json; -{{#vars}} + QJsonObject _json;{{#vars}} addToJson<{{^required?}}IfNotEmpty{{/required?}}>(_json, "{{baseName}}", pod.{{nameCamelCase}});{{/vars}} return _json; } @@ -36,10 +33,7 @@ namespace QMatrixClient {{#model}}{{#in?}} QJsonObject toJson(const {{qualifiedName}}& pod) { - QJsonObject _json; - if (pod.omitted) - return _json; -{{#vars}} + QJsonObject _json;{{#vars}} addToJson<{{^required?}}IfNotEmpty{{/required?}}>(_json, "{{baseName}}", pod.{{nameCamelCase}});{{/vars}} return _json; } @@ -61,7 +55,7 @@ namespace QMatrixClient class {{camelCaseOperationId}}Job::Private { public:{{#allProperties}} - {{dataType.name}} {{paramName}};{{/allProperties}} + {{>maybeOmittableType}} {{paramName}};{{/allProperties}} }; {{/ allProperties?}}{{/normalResponse?}}{{/responses}}{{#queryParams?}} BaseJob::Query queryTo{{camelCaseOperationId}}({{#queryParams}}{{>joinedParamDef}}{{/queryParams}}) -- cgit v1.2.3