@@ -48,7 +48,8 @@ using namespace std::literals;
4848
4949namespace graphql ::generator::client {
5050
51- Generator::Generator (SchemaOptions&& schemaOptions, RequestOptions&& requestOptions, GeneratorOptions&& options)
51+ Generator::Generator (
52+ SchemaOptions&& schemaOptions, RequestOptions&& requestOptions, GeneratorOptions&& options)
5253 : _schemaLoader(std::make_optional(std::move(schemaOptions)))
5354 , _requestLoader(std::move(requestOptions), _schemaLoader)
5455 , _options(std::move(options))
@@ -139,9 +140,12 @@ static_assert(graphql::internal::MinorVersion == )cpp"
139140#include <memory>
140141#include <string>
141142#include <vector>
142-
143143)cpp" ;
144144
145+ outputRequestComment (headerFile);
146+
147+ headerFile << std::endl;
148+
145149 NamespaceScope graphqlNamespace { headerFile, " graphql" };
146150 NamespaceScope schemaNamespace { headerFile, _schemaLoader.getSchemaNamespace () };
147151 NamespaceScope objectNamespace { headerFile, " object" , true };
@@ -334,6 +338,19 @@ std::shared_ptr<client::Client> GetClient();
334338 return true ;
335339}
336340
341+ void Generator::outputRequestComment (std::ostream& headerFile) const noexcept
342+ {
343+ headerFile << R"cpp(
344+ /** Operation: )cpp"
345+ << _requestLoader.getOperationName () << R"cpp(
346+
347+ )cpp" << _requestLoader.getRequestText ()
348+ << R"cpp(
349+
350+ **/
351+ )cpp" ;
352+ }
353+
337354void Generator::outputObjectDeclaration (
338355 std::ostream& headerFile, const ObjectType& objectType, bool isQueryType) const
339356{
@@ -413,9 +430,9 @@ std::string Generator::getFieldDeclaration(const OutputField& outputField) const
413430 std::string fieldName { outputField.cppName };
414431
415432 fieldName[0 ] = static_cast <char >(std::toupper (static_cast <unsigned char >(fieldName[0 ])));
416- output << R"cpp( virtual service::FieldResult<)cpp" << _schemaLoader. getOutputCppType (outputField)
417- << R"cpp( > )cpp" << outputField.accessor << fieldName
418- << R"cpp( (service::FieldParams&& params)cpp" ;
433+ output << R"cpp( virtual service::FieldResult<)cpp"
434+ << _schemaLoader. getOutputCppType (outputField) << R"cpp( > )cpp" << outputField.accessor
435+ << fieldName << R"cpp( (service::FieldParams&& params)cpp" ;
419436
420437 for (const auto & argument : outputField.arguments )
421438 {
@@ -839,8 +856,8 @@ void Generator::outputObjectImplementation(
839856 fieldName[0 ] = static_cast <char >(std::toupper (static_cast <unsigned char >(fieldName[0 ])));
840857 sourceFile << R"cpp(
841858service::FieldResult<)cpp"
842- << _schemaLoader.getOutputCppType (outputField) << R"cpp( > )cpp" << objectType. cppType
843- << R"cpp( ::)cpp" << outputField.accessor << fieldName
859+ << _schemaLoader.getOutputCppType (outputField) << R"cpp( > )cpp"
860+ << objectType. cppType << R"cpp( ::)cpp" << outputField.accessor << fieldName
844861 << R"cpp( (service::FieldParams&&)cpp" ;
845862 for (const auto & argument : outputField.arguments )
846863 {
0 commit comments