@@ -88,6 +88,17 @@ const std::string& GetRequestText() noexcept
88
88
# Try a field with a C++ keyword
89
89
default
90
90
}
91
+
92
+ mutation CompleteTaskMutation($input: CompleteTaskInput = {id: "ZmFrZVRhc2tJZA==", isComplete: true, clientMutationId: "Hi There!"}, $skipClientMutationId: Boolean!) {
93
+ completedTask: completeTask(input: $input) {
94
+ completedTask: task {
95
+ completedTaskId: id
96
+ title
97
+ isComplete
98
+ }
99
+ clientMutationId @skip(if: $skipClientMutationId)
100
+ }
101
+ }
91
102
)gql" s;
92
103
93
104
return s_request;
@@ -573,4 +584,134 @@ Response parseResponse(response::Value&& response)
573
584
}
574
585
575
586
} // namespace query::Miscellaneous
587
+
588
+ template <>
589
+ constexpr bool isInputType<CompleteTaskInput>() noexcept
590
+ {
591
+ return true ;
592
+ }
593
+
594
+ template <>
595
+ response::Value ModifiedVariable<TaskState>::serialize(TaskState&& value)
596
+ {
597
+ response::Value result { response::Type::EnumValue };
598
+
599
+ result.set <std::string>(std::string { s_namesTaskState[static_cast <size_t >(value)] });
600
+
601
+ return result;
602
+ }
603
+
604
+ template <>
605
+ response::Value ModifiedVariable<CompleteTaskInput>::serialize(CompleteTaskInput&& inputValue)
606
+ {
607
+ response::Value result { response::Type::Map };
608
+
609
+ result.emplace_back (R"js( id)js" s, ModifiedVariable<response::IdType>::serialize (std::move (inputValue.id )));
610
+ result.emplace_back (R"js( testTaskState)js" s, ModifiedVariable<TaskState>::serialize<TypeModifier::Nullable>(std::move (inputValue.testTaskState )));
611
+ result.emplace_back (R"js( isComplete)js" s, ModifiedVariable<bool >::serialize<TypeModifier::Nullable>(std::move (inputValue.isComplete )));
612
+ result.emplace_back (R"js( clientMutationId)js" s, ModifiedVariable<std::string>::serialize<TypeModifier::Nullable>(std::move (inputValue.clientMutationId )));
613
+
614
+ return result;
615
+ }
616
+
617
+ template <>
618
+ mutation::CompleteTaskMutation::Response::completedTask_CompleteTaskPayload::completedTask_Task ModifiedResponse<mutation::CompleteTaskMutation::Response::completedTask_CompleteTaskPayload::completedTask_Task>::parse(response::Value&& response)
619
+ {
620
+ mutation::CompleteTaskMutation::Response::completedTask_CompleteTaskPayload::completedTask_Task result;
621
+
622
+ if (response.type () == response::Type::Map)
623
+ {
624
+ auto members = response.release <response::MapType>();
625
+
626
+ for (auto & member : members)
627
+ {
628
+ if (member.first == R"js( completedTaskId)js" sv)
629
+ {
630
+ result.completedTaskId = ModifiedResponse<response::IdType>::parse (std::move (member.second ));
631
+ continue ;
632
+ }
633
+ if (member.first == R"js( title)js" sv)
634
+ {
635
+ result.title = ModifiedResponse<std::string>::parse<TypeModifier::Nullable>(std::move (member.second ));
636
+ continue ;
637
+ }
638
+ if (member.first == R"js( isComplete)js" sv)
639
+ {
640
+ result.isComplete = ModifiedResponse<bool >::parse (std::move (member.second ));
641
+ continue ;
642
+ }
643
+ }
644
+ }
645
+
646
+ return result;
647
+ }
648
+
649
+ template <>
650
+ mutation::CompleteTaskMutation::Response::completedTask_CompleteTaskPayload ModifiedResponse<mutation::CompleteTaskMutation::Response::completedTask_CompleteTaskPayload>::parse(response::Value&& response)
651
+ {
652
+ mutation::CompleteTaskMutation::Response::completedTask_CompleteTaskPayload result;
653
+
654
+ if (response.type () == response::Type::Map)
655
+ {
656
+ auto members = response.release <response::MapType>();
657
+
658
+ for (auto & member : members)
659
+ {
660
+ if (member.first == R"js( completedTask)js" sv)
661
+ {
662
+ result.completedTask = ModifiedResponse<mutation::CompleteTaskMutation::Response::completedTask_CompleteTaskPayload::completedTask_Task>::parse<TypeModifier::Nullable>(std::move (member.second ));
663
+ continue ;
664
+ }
665
+ if (member.first == R"js( clientMutationId)js" sv)
666
+ {
667
+ result.clientMutationId = ModifiedResponse<std::string>::parse<TypeModifier::Nullable>(std::move (member.second ));
668
+ continue ;
669
+ }
670
+ }
671
+ }
672
+
673
+ return result;
674
+ }
675
+
676
+ namespace mutation ::CompleteTaskMutation {
677
+
678
+ const std::string& GetOperationName () noexcept
679
+ {
680
+ static const auto s_name = R"gql( CompleteTaskMutation)gql" s;
681
+
682
+ return s_name;
683
+ }
684
+
685
+ response::Value serializeVariables (Variables&& variables)
686
+ {
687
+ response::Value result { response::Type::Map };
688
+
689
+ result.emplace_back (R"js( input)js" s, ModifiedVariable<CompleteTaskInput>::serialize<TypeModifier::Nullable>(std::move (variables.input )));
690
+ result.emplace_back (R"js( skipClientMutationId)js" s, ModifiedVariable<bool >::serialize (std::move (variables.skipClientMutationId )));
691
+
692
+ return result;
693
+ }
694
+
695
+ Response parseResponse (response::Value&& response)
696
+ {
697
+ Response result;
698
+
699
+ if (response.type () == response::Type::Map)
700
+ {
701
+ auto members = response.release <response::MapType>();
702
+
703
+ for (auto & member : members)
704
+ {
705
+ if (member.first == R"js( completedTask)js" sv)
706
+ {
707
+ result.completedTask = ModifiedResponse<mutation::CompleteTaskMutation::Response::completedTask_CompleteTaskPayload>::parse (std::move (member.second ));
708
+ continue ;
709
+ }
710
+ }
711
+ }
712
+
713
+ return result;
714
+ }
715
+
716
+ } // namespace mutation::CompleteTaskMutation
576
717
} // namespace graphql::client
0 commit comments