github.com/HaswinVidanage/gqlgen@v0.8.1-0.20220609041233-69528c1bf712/codegen/testdata/schema.graphql (about) 1 type Query { 2 invalidIdentifier: InvalidIdentifier 3 collision: It 4 mapInput(input: Changes): Boolean 5 recursive(input: RecursiveInputSlice): Boolean 6 nestedInputs(input: [[OuterInput]] = [[{inner: {id: 1}}]]): Boolean 7 nestedOutputs: [[OuterObject]] 8 keywords(input: Keywords): Boolean! 9 shapes: [Shape] 10 errorBubble: Error 11 modelMethods: ModelMethods 12 valid: String! 13 user(id: Int!): User! 14 nullableArg(arg: Int = 123): String 15 directiveArg(arg: String! @length(min:1, max: 255, message: "invalid length")): String 16 directiveNullableArg(arg: Int @range(min:0), arg2: Int @range): String 17 directiveInputNullable(arg: InputDirectives): String 18 directiveInput(arg: InputDirectives!): String 19 } 20 21 type Subscription { 22 updated: String! 23 initPayload: String! 24 } 25 26 type User { 27 id: Int! 28 friends: [User!]! 29 } 30 31 type Error { 32 id: ID! 33 errorOnNonRequiredField: String 34 errorOnRequiredField: String! 35 nilOnRequiredField: String! 36 } 37 38 type ModelMethods { 39 resolverField: Boolean! 40 noContext: Boolean! 41 withContext: Boolean! 42 } 43 44 type InvalidIdentifier { 45 id: Int! 46 } 47 48 type It { 49 id: ID! 50 } 51 52 input Changes { 53 a: Int 54 b: Int 55 } 56 57 input RecursiveInputSlice { 58 self: [RecursiveInputSlice!] 59 } 60 61 input InnerInput { 62 id:Int! 63 } 64 65 input OuterInput { 66 inner: InnerInput! 67 } 68 69 input InputDirectives { 70 text: String! @length(min: 0, max: 7, message: "not valid") 71 inner: InnerDirectives! 72 innerNullable: InnerDirectives 73 } 74 75 input InnerDirectives { 76 message: String! @length(min: 1, message: "not valid") 77 } 78 79 type OuterObject { 80 inner: InnerObject! 81 } 82 83 type InnerObject { 84 id: Int! 85 } 86 87 input Keywords { 88 break: String! 89 default: String! 90 func: String! 91 interface: String! 92 select: String! 93 case: String! 94 defer: String! 95 go: String! 96 map: String! 97 struct: String! 98 chan: String! 99 else: String! 100 goto: String! 101 package: String! 102 switch: String! 103 const: String! 104 fallthrough: String! 105 if: String! 106 range: String! 107 type: String! 108 continue: String! 109 for: String! 110 import: String! 111 return: String! 112 var: String! 113 } 114 115 extend type Query { 116 keywordArgs( 117 break: String!, 118 default: String!, 119 func: String!, 120 interface: String!, 121 select: String!, 122 case: String!, 123 defer: String!, 124 go: String!, 125 map: String!, 126 struct: String!, 127 chan: String!, 128 else: String!, 129 goto: String!, 130 package: String!, 131 switch: String!, 132 const: String!, 133 fallthrough: String!, 134 if: String!, 135 range: String!, 136 type: String!, 137 continue: String!, 138 for: String!, 139 import: String!, 140 return: String!, 141 var: String!, 142 ): Boolean! 143 } 144 145 interface Shape { 146 area: Float 147 } 148 type Circle implements Shape { 149 radius: Float 150 area: Float 151 } 152 type Rectangle implements Shape { 153 length: Float 154 width: Float 155 area: Float 156 } 157 union ShapeUnion = Circle | Rectangle 158 159 type ForcedResolver { 160 field: Circle 161 } 162 163 type EmbeddedPointer { 164 ID: String 165 Title: String 166 } 167 168 directive @length(min: Int!, max: Int, message: String!) on ARGUMENT_DEFINITION | INPUT_FIELD_DEFINITION 169 directive @range(min: Int = 0, max: Int, message: String) on ARGUMENT_DEFINITION 170 171 enum Status { 172 OK 173 ERROR 174 }