Schema { sources: { 1: SourceFile { path: "built_in.graphql", source_text: include_str!("built_in.graphql"), }, 9: SourceFile { path: "0007_schema_with_interface_definition.graphql", source_text: "type Query implements Node {\n id: ID!\n}\n\ninterface Node {\n id: ID!\n}\n\ninterface Resource implements Node {\n id: ID!\n width: Int\n height: Int\n}\n\ninterface Image implements Resource & Node {\n id: ID!\n width: Int\n height: Int\n thumbnail: String\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"), }, 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"), "ID": built_in_type!("ID"), "Query": Object( 0..42 @9 ObjectType { description: None, name: "Query", implements_interfaces: { ComponentName { origin: Definition, name: "Node", }, }, directives: [], fields: { "id": Component { origin: Definition, node: 33..40 @9 FieldDefinition { description: None, name: "id", arguments: [], ty: NonNullNamed( "ID", ), directives: [], }, }, }, }, ), "Node": Interface( 44..72 @9 InterfaceType { description: None, name: "Node", implements_interfaces: {}, directives: [], fields: { "id": Component { origin: Definition, node: 63..70 @9 FieldDefinition { description: None, name: "id", arguments: [], ty: NonNullNamed( "ID", ), directives: [], }, }, }, }, ), "Resource": Interface( 74..149 @9 InterfaceType { description: None, name: "Resource", implements_interfaces: { ComponentName { origin: Definition, name: "Node", }, }, directives: [], fields: { "id": Component { origin: Definition, node: 113..120 @9 FieldDefinition { description: None, name: "id", arguments: [], ty: NonNullNamed( "ID", ), directives: [], }, }, "width": Component { origin: Definition, node: 123..133 @9 FieldDefinition { description: None, name: "width", arguments: [], ty: Named( "Int", ), directives: [], }, }, "height": Component { origin: Definition, node: 136..147 @9 FieldDefinition { description: None, name: "height", arguments: [], ty: Named( "Int", ), directives: [], }, }, }, }, ), "Image": Interface( 151..254 @9 InterfaceType { description: None, name: "Image", implements_interfaces: { ComponentName { origin: Definition, name: "Resource", }, ComponentName { origin: Definition, name: "Node", }, }, directives: [], fields: { "id": Component { origin: Definition, node: 198..205 @9 FieldDefinition { description: None, name: "id", arguments: [], ty: NonNullNamed( "ID", ), directives: [], }, }, "width": Component { origin: Definition, node: 208..218 @9 FieldDefinition { description: None, name: "width", arguments: [], ty: Named( "Int", ), directives: [], }, }, "height": Component { origin: Definition, node: 221..232 @9 FieldDefinition { description: None, name: "height", arguments: [], ty: Named( "Int", ), directives: [], }, }, "thumbnail": Component { origin: Definition, node: 235..252 @9 FieldDefinition { description: None, name: "thumbnail", arguments: [], ty: Named( "String", ), directives: [], }, }, }, }, ), }, } ExecutableDocument { sources: { 1: SourceFile { path: "built_in.graphql", source_text: include_str!("built_in.graphql"), }, 9: SourceFile { path: "0007_schema_with_interface_definition.graphql", source_text: "type Query implements Node {\n id: ID!\n}\n\ninterface Node {\n id: ID!\n}\n\ninterface Resource implements Node {\n id: ID!\n width: Int\n height: Int\n}\n\ninterface Image implements Resource & Node {\n id: ID!\n width: Int\n height: Int\n thumbnail: String\n}", }, }, operations: OperationMap { anonymous: None, named: {}, }, fragments: {}, }