Custom async_graphql integration
Sudograph is built on the bedrock of async_graphql. async_graphql
is the library providing most of the fundamental GraphQL functionality, includes resolving queries and mutations. Sudograph is mostly tasked with transforming your provided schema into the Rust data structures that async_graphql
expects. Though Sudograph is designed to provide a lot of functionality for you automatically, you may find the need to dig deeper and integrate with async_graphql
more directly.
The automatically generated graphql_query
and graphql_mutation
functions create an async_graphql
schema data structure. These functions also accept queries and mutations and execute them against that schema. You can always generate your own functions (see Sudograph Settings) and use async_graphql
directly if you wish. You can see how Sudograph creates an async_graphql
schema here (look for the graphql_query
and graphql_mutation
functions).
You can write your own async_graphql
types as well. Basically, if you understand how Sudograph is simply generating async_graphql
Rust data structures, including queries and mutations, you will be able to figure out how to augment the schema yourself. This could be very useful if you are waiting on Sudograph to implement a feature for you, as you might be able to implement it yourself right away with minimal effort.