1 package ast 2 3 type Operation string 4 5 const ( 6 Query Operation = "query" 7 Mutation Operation = "mutation" 8 Subscription Operation = "subscription" 9 ) 10 11 type OperationDefinition struct { 12 Operation Operation 13 Name string 14 VariableDefinitions VariableDefinitionList 15 Directives DirectiveList 16 SelectionSet SelectionSet 17 Position *Position `dump:"-"` 18 } 19 20 type VariableDefinition struct { 21 Variable string 22 Type *Type 23 DefaultValue *Value 24 Position *Position `dump:"-"` 25 26 // Requires validation 27 Definition *Definition 28 Used bool `dump:"-"` 29 } 30