Work in progress.
You can parse any string/file using the .parse
function.
It returns a DocumentNode with al the definitions that were parsed, in a tree structure.
import luizfonseca.graphql
import os
fn main() {
// For files
file := os.read_file('path-to-file.graphql')
// For string inputs
// input := 'query {
// myQuery(id: 1) {
// name
// age
// }
//}'
// max_tokens: number of tokens to parse.
// Increasing this means supporting longer queries/schema definitions
doc := graphql.parse(file, graphql.ParserOptions{ max_tokens: 25_000 })
dump(doc.token_count)
dump(doc.definitions)
}