...
1directive @goModel(
2 model: String
3 models: [String!]
4) on OBJECT | INPUT_OBJECT | SCALAR | ENUM | INTERFACE | UNION
5directive @goField(
6 forceResolver: Boolean
7 name: String
8 omittable: Boolean
9) on INPUT_FIELD_DEFINITION | FIELD_DEFINITION
10directive @defer(
11 if: Boolean = true
12 label: String
13) on FRAGMENT_SPREAD | INLINE_FRAGMENT
14
15type Query {
16 invalidIdentifier: InvalidIdentifier
17 collision: It
18 mapInput(input: Changes): Boolean
19 recursive(input: RecursiveInputSlice): Boolean
20 nestedInputs(input: [[OuterInput]] = [[{ inner: { id: 1 } }]]): Boolean
21 nestedOutputs: [[OuterObject]]
22 modelMethods: ModelMethods
23 user(id: Int!): User!
24 nullableArg(arg: Int = 123): String
25 inputSlice(arg: [String!]!): Boolean!
26 inputNullableSlice(arg: [String!]): Boolean!
27 inputOmittable(arg: OmittableInput!): String!
28 shapeUnion: ShapeUnion!
29 autobind: Autobind
30 deprecatedField: String! @deprecated(reason: "test deprecated directive")
31}
32
33type Subscription {
34 updated: String!
35 initPayload: String!
36}
37
38type Pet {
39 id: Int!
40 friends(limit: Int): [Pet!] @goField(forceResolver: true)
41}
42
43type User {
44 id: Int!
45 friends: [User!]! @goField(forceResolver: true)
46 created: Time!
47 updated: Time
48 pets(limit: Int): [Pet!] @goField(forceResolver: true)
49}
50
51type Autobind {
52 int: Int!
53 int32: Int!
54 int64: Int!
55
56 idStr: ID!
57 idInt: ID!
58}
59
60type ModelMethods {
61 resolverField: Boolean!
62 noContext: Boolean!
63 withContext: Boolean!
64}
65
66type InvalidIdentifier {
67 id: Int!
68}
69
70type It {
71 id: ID!
72}
73
74input Changes @goModel(model: "map[string]interface{}") {
75 a: Int
76 b: Int
77}
78
79input RecursiveInputSlice {
80 self: [RecursiveInputSlice!]
81}
82
83input InnerInput {
84 id: Int!
85}
86
87input OuterInput {
88 inner: InnerInput!
89}
90
91input OmittableInput {
92 id: ID @goField(omittable: true)
93 bool: Boolean @goField(omittable: true)
94 str: String @goField(omittable: true)
95 int: Int @goField(omittable: true)
96 time: Time @goField(omittable: true)
97 enum: Status @goField(omittable: true)
98 scalar: ThirdParty @goField(omittable: true)
99 object: OuterInput @goField(omittable: true)
100}
101
102scalar ThirdParty @goModel(model:"followschema.ThirdParty")
103
104type OuterObject {
105 inner: InnerObject!
106}
107
108type InnerObject {
109 id: Int!
110}
111
112type ForcedResolver {
113 field: Circle @goField(forceResolver: true)
114}
115
116type EmbeddedPointer @goModel(model:"followschema.EmbeddedPointerModel") {
117 ID: String
118 Title: String
119}
120
121scalar UUID
122
123enum Status {
124 OK
125 ERROR
126}
127
128scalar Time
View as plain text