@@ -47,14 +47,14 @@ response::Value ModifiedVariable<Variables::CompleteTaskInput>::serialize(Variab
4747 return result;
4848}
4949
50- TaskState parseTaskState ( const response::Value& value)
50+ TaskState ModifiedResponse<TaskState>::parse( response::Value& & value)
5151{
5252 if (!value.maybe_enum ())
5353 {
5454 throw std::logic_error { " not a valid TaskState value" };
5555 }
5656
57- const auto itr = std::find (s_namesTaskState.cbegin (), s_namesTaskState.cend (), value.get <response::StringType>());
57+ const auto itr = std::find (s_namesTaskState.cbegin (), s_namesTaskState.cend (), value.release <response::StringType>());
5858
5959 if (itr == s_namesTaskState.cend ())
6060 {
@@ -64,6 +64,63 @@ TaskState parseTaskState(const response::Value& value)
6464 return static_cast <TaskState>(itr - s_namesTaskState.cbegin ());
6565}
6666
67+ Response::completedTask_CompleteTaskPayload::completedTask_Task ModifiedResponse<Response::completedTask_CompleteTaskPayload::completedTask_Task>::parse(response::Value&& response)
68+ {
69+ Response::completedTask_CompleteTaskPayload::completedTask_Task result;
70+
71+ if (response.type () == response::Type::Map)
72+ {
73+ auto members = response.release <response::MapType>();
74+
75+ for (auto & member : members)
76+ {
77+ if (member.first == R"js( completedTaskId)js" sv)
78+ {
79+ result.completedTaskId = ModifiedResponse<response::IdType>::parse (std::move (member.second ));
80+ continue ;
81+ }
82+ if (member.first == R"js( title)js" sv)
83+ {
84+ result.title = ModifiedResponse<response::StringType>::parse<TypeModifier::Nullable>(std::move (member.second ));
85+ continue ;
86+ }
87+ if (member.first == R"js( isComplete)js" sv)
88+ {
89+ result.isComplete = ModifiedResponse<response::BooleanType>::parse (std::move (member.second ));
90+ continue ;
91+ }
92+ }
93+ }
94+
95+ return result;
96+ }
97+
98+ Response::completedTask_CompleteTaskPayload ModifiedResponse<Response::completedTask_CompleteTaskPayload>::parse(response::Value&& response)
99+ {
100+ Response::completedTask_CompleteTaskPayload result;
101+
102+ if (response.type () == response::Type::Map)
103+ {
104+ auto members = response.release <response::MapType>();
105+
106+ for (auto & member : members)
107+ {
108+ if (member.first == R"js( completedTask)js" sv)
109+ {
110+ result.completedTask = ModifiedResponse<Response::completedTask_CompleteTaskPayload::completedTask_Task>::parse<TypeModifier::Nullable>(std::move (member.second ));
111+ continue ;
112+ }
113+ if (member.first == R"js( clientMutationId)js" sv)
114+ {
115+ result.clientMutationId = ModifiedResponse<response::StringType>::parse<TypeModifier::Nullable>(std::move (member.second ));
116+ continue ;
117+ }
118+ }
119+ }
120+
121+ return result;
122+ }
123+
67124namespace mutation ::CompleteTaskMutation {
68125
69126const std::string& GetRequestText () noexcept
@@ -114,7 +171,19 @@ Response parseResponse(response::Value&& response)
114171{
115172 Response result;
116173
117- // completedTask_CompleteTaskPayload completedTask;
174+ if (response.type () == response::Type::Map)
175+ {
176+ auto members = response.release <response::MapType>();
177+
178+ for (auto & member : members)
179+ {
180+ if (member.first == R"js( completedTask)js" sv)
181+ {
182+ result.completedTask = ModifiedResponse<Response::completedTask_CompleteTaskPayload>::parse (std::move (member.second ));
183+ continue ;
184+ }
185+ }
186+ }
118187
119188 return result;
120189}
0 commit comments