GraphQL document is parsed:
- Lexer: https://github.com/absinthe-graphql/absinthe/blob/master/lib/absinthe/lexer.ex
- Parser (Yecc): https://github.com/absinthe-graphql/absinthe/blob/master/src/absinthe_parser.yrl
This returns a tree of Absinthe.Language nodes (structs), effectively the AST:
This tree is converted to a tree of Absinthe.Blueprint nodes (structs):