Schema { sources: { 1: SourceFile { path: "built_in.graphql", source_text: include_str!("built_in.graphql"), }, 12: SourceFile { path: "0010_operation_with_defined_fields.graphql", source_text: "query getProduct {\n size\n topProducts {\n name\n inStock\n }\n}\n\ntype Query {\n topProducts: Product\n name: String\n size: Int\n}\n\ntype Product {\n inStock: Boolean @join__field(graph: INVENTORY)\n name: String @join__field(graph: PRODUCTS)\n price: Int\n shippingEstimate: Int\n upc: String!\n weight: Int\n}\n\ndirective @join__field(graph: join__Graph) on FIELD_DEFINITION\nenum join__Graph {\n INVENTORY,\n PRODUCTS,\n}\n", }, }, schema_definition: SchemaDefinition { description: None, directives: [], query: Some( ComponentName { origin: Definition, name: "Query", }, ), mutation: None, subscription: None, }, directive_definitions: { "skip": built_in_directive!("skip"), "include": built_in_directive!("include"), "deprecated": built_in_directive!("deprecated"), "specifiedBy": built_in_directive!("specifiedBy"), "join__field": 315..377 @12 DirectiveDefinition { description: None, name: "join__field", arguments: [ 338..356 @12 InputValueDefinition { description: None, name: "graph", ty: 345..356 @12 Named( "join__Graph", ), default_value: None, directives: [], }, ], repeatable: false, locations: [ "FIELD_DEFINITION", ], }, }, types: { "__Schema": built_in_type!("__Schema"), "__Type": built_in_type!("__Type"), "__TypeKind": built_in_type!("__TypeKind"), "__Field": built_in_type!("__Field"), "__InputValue": built_in_type!("__InputValue"), "__EnumValue": built_in_type!("__EnumValue"), "__Directive": built_in_type!("__Directive"), "__DirectiveLocation": built_in_type!("__DirectiveLocation"), "Int": built_in_type!("Int"), "String": built_in_type!("String"), "Boolean": built_in_type!("Boolean"), "Query": Object( 70..134 @12 ObjectType { description: None, name: "Query", implements_interfaces: {}, directives: [], fields: { "topProducts": Component { origin: Definition, node: 85..105 @12 FieldDefinition { description: None, name: "topProducts", arguments: [], ty: Named( "Product", ), directives: [], }, }, "name": Component { origin: Definition, node: 108..120 @12 FieldDefinition { description: None, name: "name", arguments: [], ty: Named( "String", ), directives: [], }, }, "size": Component { origin: Definition, node: 123..132 @12 FieldDefinition { description: None, name: "size", arguments: [], ty: Named( "Int", ), directives: [], }, }, }, }, ), "Product": Object( 136..313 @12 ObjectType { description: None, name: "Product", implements_interfaces: {}, directives: [], fields: { "inStock": Component { origin: Definition, node: 153..200 @12 FieldDefinition { description: None, name: "inStock", arguments: [], ty: Named( "Boolean", ), directives: [ 170..200 @12 Directive { name: "join__field", arguments: [ 183..199 @12 Argument { name: "graph", value: 190..199 @12 Enum( "INVENTORY", ), }, ], }, ], }, }, "name": Component { origin: Definition, node: 203..245 @12 FieldDefinition { description: None, name: "name", arguments: [], ty: Named( "String", ), directives: [ 216..245 @12 Directive { name: "join__field", arguments: [ 229..244 @12 Argument { name: "graph", value: 236..244 @12 Enum( "PRODUCTS", ), }, ], }, ], }, }, "price": Component { origin: Definition, node: 248..258 @12 FieldDefinition { description: None, name: "price", arguments: [], ty: Named( "Int", ), directives: [], }, }, "shippingEstimate": Component { origin: Definition, node: 261..282 @12 FieldDefinition { description: None, name: "shippingEstimate", arguments: [], ty: Named( "Int", ), directives: [], }, }, "upc": Component { origin: Definition, node: 285..297 @12 FieldDefinition { description: None, name: "upc", arguments: [], ty: NonNullNamed( "String", ), directives: [], }, }, "weight": Component { origin: Definition, node: 300..311 @12 FieldDefinition { description: None, name: "weight", arguments: [], ty: Named( "Int", ), directives: [], }, }, }, }, ), "join__Graph": Enum( 378..423 @12 EnumType { description: None, name: "join__Graph", directives: [], values: { "INVENTORY": Component { origin: Definition, node: 399..408 @12 EnumValueDefinition { description: None, value: "INVENTORY", directives: [], }, }, "PRODUCTS": Component { origin: Definition, node: 412..420 @12 EnumValueDefinition { description: None, value: "PRODUCTS", directives: [], }, }, }, }, ), }, } ExecutableDocument { sources: { 1: SourceFile { path: "built_in.graphql", source_text: include_str!("built_in.graphql"), }, 12: SourceFile { path: "0010_operation_with_defined_fields.graphql", source_text: "query getProduct {\n size\n topProducts {\n name\n inStock\n }\n}\n\ntype Query {\n topProducts: Product\n name: String\n size: Int\n}\n\ntype Product {\n inStock: Boolean @join__field(graph: INVENTORY)\n name: String @join__field(graph: PRODUCTS)\n price: Int\n shippingEstimate: Int\n upc: String!\n weight: Int\n}\n\ndirective @join__field(graph: join__Graph) on FIELD_DEFINITION\nenum join__Graph {\n INVENTORY,\n PRODUCTS,\n}\n", }, }, operations: OperationMap { anonymous: None, named: { "getProduct": 0..68 @12 Operation { operation_type: Query, name: Some( "getProduct", ), variables: [], directives: [], selection_set: SelectionSet { ty: "Query", selections: [ Field( 21..25 @12 Field { definition: 123..132 @12 FieldDefinition { description: None, name: "size", arguments: [], ty: Named( "Int", ), directives: [], }, alias: None, name: "size", arguments: [], directives: [], selection_set: SelectionSet { ty: "Int", selections: [], }, }, ), Field( 28..66 @12 Field { definition: 85..105 @12 FieldDefinition { description: None, name: "topProducts", arguments: [], ty: Named( "Product", ), directives: [], }, alias: None, name: "topProducts", arguments: [], directives: [], selection_set: SelectionSet { ty: "Product", selections: [ Field( 46..50 @12 Field { definition: 203..245 @12 FieldDefinition { description: None, name: "name", arguments: [], ty: Named( "String", ), directives: [ 216..245 @12 Directive { name: "join__field", arguments: [ 229..244 @12 Argument { name: "graph", value: 236..244 @12 Enum( "PRODUCTS", ), }, ], }, ], }, alias: None, name: "name", arguments: [], directives: [], selection_set: SelectionSet { ty: "String", selections: [], }, }, ), Field( 55..62 @12 Field { definition: 153..200 @12 FieldDefinition { description: None, name: "inStock", arguments: [], ty: Named( "Boolean", ), directives: [ 170..200 @12 Directive { name: "join__field", arguments: [ 183..199 @12 Argument { name: "graph", value: 190..199 @12 Enum( "INVENTORY", ), }, ], }, ], }, alias: None, name: "inStock", arguments: [], directives: [], selection_set: SelectionSet { ty: "Boolean", selections: [], }, }, ), ], }, }, ), ], }, }, }, }, fragments: {}, }