github.com/sdvpn/gqlgen@v0.7.2/integration/generated.go (about) 1 // Code generated by github.com/99designs/gqlgen, DO NOT EDIT. 2 3 package integration 4 5 import ( 6 "bytes" 7 "context" 8 "errors" 9 "remote_api" 10 "strconv" 11 "sync" 12 13 "github.com/99designs/gqlgen/graphql" 14 "github.com/99designs/gqlgen/graphql/introspection" 15 "github.com/99designs/gqlgen/integration/models-go" 16 "github.com/vektah/gqlparser" 17 "github.com/vektah/gqlparser/ast" 18 ) 19 20 // NewExecutableSchema creates an ExecutableSchema from the ResolverRoot interface. 21 func NewExecutableSchema(cfg Config) graphql.ExecutableSchema { 22 return &executableSchema{ 23 resolvers: cfg.Resolvers, 24 directives: cfg.Directives, 25 complexity: cfg.Complexity, 26 } 27 } 28 29 type Config struct { 30 Resolvers ResolverRoot 31 Directives DirectiveRoot 32 Complexity ComplexityRoot 33 } 34 35 type ResolverRoot interface { 36 Element() ElementResolver 37 Query() QueryResolver 38 User() UserResolver 39 } 40 41 type DirectiveRoot struct { 42 Magic func(ctx context.Context, obj interface{}, next graphql.Resolver, kind *int) (res interface{}, err error) 43 } 44 45 type ComplexityRoot struct { 46 Element struct { 47 Child func(childComplexity int) int 48 Error func(childComplexity int) int 49 Mismatched func(childComplexity int) int 50 } 51 52 Query struct { 53 Path func(childComplexity int) int 54 Date func(childComplexity int, filter models.DateFilter) int 55 Viewer func(childComplexity int) int 56 JsonEncoding func(childComplexity int) int 57 Error func(childComplexity int, typeArg *models.ErrorType) int 58 } 59 60 User struct { 61 Name func(childComplexity int) int 62 Likes func(childComplexity int) int 63 } 64 65 Viewer struct { 66 User func(childComplexity int) int 67 } 68 } 69 70 type ElementResolver interface { 71 Child(ctx context.Context, obj *models.Element) (models.Element, error) 72 Error(ctx context.Context, obj *models.Element) (bool, error) 73 Mismatched(ctx context.Context, obj *models.Element) ([]bool, error) 74 } 75 type QueryResolver interface { 76 Path(ctx context.Context) ([]*models.Element, error) 77 Date(ctx context.Context, filter models.DateFilter) (bool, error) 78 Viewer(ctx context.Context) (*models.Viewer, error) 79 JSONEncoding(ctx context.Context) (string, error) 80 Error(ctx context.Context, typeArg *models.ErrorType) (bool, error) 81 } 82 type UserResolver interface { 83 Likes(ctx context.Context, obj *remote_api.User) ([]string, error) 84 } 85 86 func field_Query_date_args(rawArgs map[string]interface{}) (map[string]interface{}, error) { 87 args := map[string]interface{}{} 88 var arg0 models.DateFilter 89 if tmp, ok := rawArgs["filter"]; ok { 90 var err error 91 arg0, err = UnmarshalDateFilter(tmp) 92 if err != nil { 93 return nil, err 94 } 95 } 96 args["filter"] = arg0 97 return args, nil 98 99 } 100 101 func field_Query_error_args(rawArgs map[string]interface{}) (map[string]interface{}, error) { 102 args := map[string]interface{}{} 103 var arg0 *models.ErrorType 104 if tmp, ok := rawArgs["type"]; ok { 105 var err error 106 var ptr1 models.ErrorType 107 if tmp != nil { 108 err = (&ptr1).UnmarshalGQL(tmp) 109 arg0 = &ptr1 110 } 111 112 if err != nil { 113 return nil, err 114 } 115 } 116 args["type"] = arg0 117 return args, nil 118 119 } 120 121 func field_Query___type_args(rawArgs map[string]interface{}) (map[string]interface{}, error) { 122 args := map[string]interface{}{} 123 var arg0 string 124 if tmp, ok := rawArgs["name"]; ok { 125 var err error 126 arg0, err = graphql.UnmarshalString(tmp) 127 if err != nil { 128 return nil, err 129 } 130 } 131 args["name"] = arg0 132 return args, nil 133 134 } 135 136 func field___Type_fields_args(rawArgs map[string]interface{}) (map[string]interface{}, error) { 137 args := map[string]interface{}{} 138 var arg0 bool 139 if tmp, ok := rawArgs["includeDeprecated"]; ok { 140 var err error 141 arg0, err = graphql.UnmarshalBoolean(tmp) 142 if err != nil { 143 return nil, err 144 } 145 } 146 args["includeDeprecated"] = arg0 147 return args, nil 148 149 } 150 151 func field___Type_enumValues_args(rawArgs map[string]interface{}) (map[string]interface{}, error) { 152 args := map[string]interface{}{} 153 var arg0 bool 154 if tmp, ok := rawArgs["includeDeprecated"]; ok { 155 var err error 156 arg0, err = graphql.UnmarshalBoolean(tmp) 157 if err != nil { 158 return nil, err 159 } 160 } 161 args["includeDeprecated"] = arg0 162 return args, nil 163 164 } 165 166 func dir_magic_args(rawArgs map[string]interface{}) (map[string]interface{}, error) { 167 args := map[string]interface{}{} 168 var arg0 *int 169 if tmp, ok := rawArgs["kind"]; ok { 170 var err error 171 var ptr1 int 172 if tmp != nil { 173 ptr1, err = graphql.UnmarshalInt(tmp) 174 arg0 = &ptr1 175 } 176 177 if err != nil { 178 return nil, err 179 } 180 } 181 args["kind"] = arg0 182 return args, nil 183 184 } 185 186 type executableSchema struct { 187 resolvers ResolverRoot 188 directives DirectiveRoot 189 complexity ComplexityRoot 190 } 191 192 func (e *executableSchema) Schema() *ast.Schema { 193 return parsedSchema 194 } 195 196 func (e *executableSchema) Complexity(typeName, field string, childComplexity int, rawArgs map[string]interface{}) (int, bool) { 197 switch typeName + "." + field { 198 199 case "Element.child": 200 if e.complexity.Element.Child == nil { 201 break 202 } 203 204 return e.complexity.Element.Child(childComplexity), true 205 206 case "Element.error": 207 if e.complexity.Element.Error == nil { 208 break 209 } 210 211 return e.complexity.Element.Error(childComplexity), true 212 213 case "Element.mismatched": 214 if e.complexity.Element.Mismatched == nil { 215 break 216 } 217 218 return e.complexity.Element.Mismatched(childComplexity), true 219 220 case "Query.path": 221 if e.complexity.Query.Path == nil { 222 break 223 } 224 225 return e.complexity.Query.Path(childComplexity), true 226 227 case "Query.date": 228 if e.complexity.Query.Date == nil { 229 break 230 } 231 232 args, err := field_Query_date_args(rawArgs) 233 if err != nil { 234 return 0, false 235 } 236 237 return e.complexity.Query.Date(childComplexity, args["filter"].(models.DateFilter)), true 238 239 case "Query.viewer": 240 if e.complexity.Query.Viewer == nil { 241 break 242 } 243 244 return e.complexity.Query.Viewer(childComplexity), true 245 246 case "Query.jsonEncoding": 247 if e.complexity.Query.JsonEncoding == nil { 248 break 249 } 250 251 return e.complexity.Query.JsonEncoding(childComplexity), true 252 253 case "Query.error": 254 if e.complexity.Query.Error == nil { 255 break 256 } 257 258 args, err := field_Query_error_args(rawArgs) 259 if err != nil { 260 return 0, false 261 } 262 263 return e.complexity.Query.Error(childComplexity, args["type"].(*models.ErrorType)), true 264 265 case "User.name": 266 if e.complexity.User.Name == nil { 267 break 268 } 269 270 return e.complexity.User.Name(childComplexity), true 271 272 case "User.likes": 273 if e.complexity.User.Likes == nil { 274 break 275 } 276 277 return e.complexity.User.Likes(childComplexity), true 278 279 case "Viewer.user": 280 if e.complexity.Viewer.User == nil { 281 break 282 } 283 284 return e.complexity.Viewer.User(childComplexity), true 285 286 } 287 return 0, false 288 } 289 290 func (e *executableSchema) Query(ctx context.Context, op *ast.OperationDefinition) *graphql.Response { 291 ec := executionContext{graphql.GetRequestContext(ctx), e} 292 293 buf := ec.RequestMiddleware(ctx, func(ctx context.Context) []byte { 294 data := ec._Query(ctx, op.SelectionSet) 295 var buf bytes.Buffer 296 data.MarshalGQL(&buf) 297 return buf.Bytes() 298 }) 299 300 return &graphql.Response{ 301 Data: buf, 302 Errors: ec.Errors, 303 Extensions: ec.Extensions} 304 } 305 306 func (e *executableSchema) Mutation(ctx context.Context, op *ast.OperationDefinition) *graphql.Response { 307 return graphql.ErrorResponse(ctx, "mutations are not supported") 308 } 309 310 func (e *executableSchema) Subscription(ctx context.Context, op *ast.OperationDefinition) func() *graphql.Response { 311 return graphql.OneShot(graphql.ErrorResponse(ctx, "subscriptions are not supported")) 312 } 313 314 type executionContext struct { 315 *graphql.RequestContext 316 *executableSchema 317 } 318 319 var elementImplementors = []string{"Element"} 320 321 // nolint: gocyclo, errcheck, gas, goconst 322 func (ec *executionContext) _Element(ctx context.Context, sel ast.SelectionSet, obj *models.Element) graphql.Marshaler { 323 fields := graphql.CollectFields(ctx, sel, elementImplementors) 324 325 var wg sync.WaitGroup 326 out := graphql.NewOrderedMap(len(fields)) 327 invalid := false 328 for i, field := range fields { 329 out.Keys[i] = field.Alias 330 331 switch field.Name { 332 case "__typename": 333 out.Values[i] = graphql.MarshalString("Element") 334 case "child": 335 wg.Add(1) 336 go func(i int, field graphql.CollectedField) { 337 out.Values[i] = ec._Element_child(ctx, field, obj) 338 if out.Values[i] == graphql.Null { 339 invalid = true 340 } 341 wg.Done() 342 }(i, field) 343 case "error": 344 wg.Add(1) 345 go func(i int, field graphql.CollectedField) { 346 out.Values[i] = ec._Element_error(ctx, field, obj) 347 if out.Values[i] == graphql.Null { 348 invalid = true 349 } 350 wg.Done() 351 }(i, field) 352 case "mismatched": 353 wg.Add(1) 354 go func(i int, field graphql.CollectedField) { 355 out.Values[i] = ec._Element_mismatched(ctx, field, obj) 356 wg.Done() 357 }(i, field) 358 default: 359 panic("unknown field " + strconv.Quote(field.Name)) 360 } 361 } 362 wg.Wait() 363 if invalid { 364 return graphql.Null 365 } 366 return out 367 } 368 369 // nolint: vetshadow 370 func (ec *executionContext) _Element_child(ctx context.Context, field graphql.CollectedField, obj *models.Element) graphql.Marshaler { 371 ctx = ec.Tracer.StartFieldExecution(ctx, field) 372 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 373 rctx := &graphql.ResolverContext{ 374 Object: "Element", 375 Args: nil, 376 Field: field, 377 } 378 ctx = graphql.WithResolverContext(ctx, rctx) 379 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 380 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 381 ctx = rctx // use context from middleware stack in children 382 return ec.resolvers.Element().Child(rctx, obj) 383 }) 384 if resTmp == nil { 385 if !ec.HasError(rctx) { 386 ec.Errorf(ctx, "must not be null") 387 } 388 return graphql.Null 389 } 390 res := resTmp.(models.Element) 391 rctx.Result = res 392 ctx = ec.Tracer.StartFieldChildExecution(ctx) 393 394 return ec._Element(ctx, field.Selections, &res) 395 } 396 397 // nolint: vetshadow 398 func (ec *executionContext) _Element_error(ctx context.Context, field graphql.CollectedField, obj *models.Element) graphql.Marshaler { 399 ctx = ec.Tracer.StartFieldExecution(ctx, field) 400 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 401 rctx := &graphql.ResolverContext{ 402 Object: "Element", 403 Args: nil, 404 Field: field, 405 } 406 ctx = graphql.WithResolverContext(ctx, rctx) 407 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 408 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 409 ctx = rctx // use context from middleware stack in children 410 return ec.resolvers.Element().Error(rctx, obj) 411 }) 412 if resTmp == nil { 413 if !ec.HasError(rctx) { 414 ec.Errorf(ctx, "must not be null") 415 } 416 return graphql.Null 417 } 418 res := resTmp.(bool) 419 rctx.Result = res 420 ctx = ec.Tracer.StartFieldChildExecution(ctx) 421 return graphql.MarshalBoolean(res) 422 } 423 424 // nolint: vetshadow 425 func (ec *executionContext) _Element_mismatched(ctx context.Context, field graphql.CollectedField, obj *models.Element) graphql.Marshaler { 426 ctx = ec.Tracer.StartFieldExecution(ctx, field) 427 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 428 rctx := &graphql.ResolverContext{ 429 Object: "Element", 430 Args: nil, 431 Field: field, 432 } 433 ctx = graphql.WithResolverContext(ctx, rctx) 434 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 435 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 436 ctx = rctx // use context from middleware stack in children 437 return ec.resolvers.Element().Mismatched(rctx, obj) 438 }) 439 if resTmp == nil { 440 return graphql.Null 441 } 442 res := resTmp.([]bool) 443 rctx.Result = res 444 ctx = ec.Tracer.StartFieldChildExecution(ctx) 445 446 arr1 := make(graphql.Array, len(res)) 447 448 for idx1 := range res { 449 arr1[idx1] = func() graphql.Marshaler { 450 return graphql.MarshalBoolean(res[idx1]) 451 }() 452 } 453 454 return arr1 455 } 456 457 var queryImplementors = []string{"Query"} 458 459 // nolint: gocyclo, errcheck, gas, goconst 460 func (ec *executionContext) _Query(ctx context.Context, sel ast.SelectionSet) graphql.Marshaler { 461 fields := graphql.CollectFields(ctx, sel, queryImplementors) 462 463 ctx = graphql.WithResolverContext(ctx, &graphql.ResolverContext{ 464 Object: "Query", 465 }) 466 467 var wg sync.WaitGroup 468 out := graphql.NewOrderedMap(len(fields)) 469 invalid := false 470 for i, field := range fields { 471 out.Keys[i] = field.Alias 472 473 switch field.Name { 474 case "__typename": 475 out.Values[i] = graphql.MarshalString("Query") 476 case "path": 477 wg.Add(1) 478 go func(i int, field graphql.CollectedField) { 479 out.Values[i] = ec._Query_path(ctx, field) 480 wg.Done() 481 }(i, field) 482 case "date": 483 wg.Add(1) 484 go func(i int, field graphql.CollectedField) { 485 out.Values[i] = ec._Query_date(ctx, field) 486 if out.Values[i] == graphql.Null { 487 invalid = true 488 } 489 wg.Done() 490 }(i, field) 491 case "viewer": 492 wg.Add(1) 493 go func(i int, field graphql.CollectedField) { 494 out.Values[i] = ec._Query_viewer(ctx, field) 495 wg.Done() 496 }(i, field) 497 case "jsonEncoding": 498 wg.Add(1) 499 go func(i int, field graphql.CollectedField) { 500 out.Values[i] = ec._Query_jsonEncoding(ctx, field) 501 if out.Values[i] == graphql.Null { 502 invalid = true 503 } 504 wg.Done() 505 }(i, field) 506 case "error": 507 wg.Add(1) 508 go func(i int, field graphql.CollectedField) { 509 out.Values[i] = ec._Query_error(ctx, field) 510 if out.Values[i] == graphql.Null { 511 invalid = true 512 } 513 wg.Done() 514 }(i, field) 515 case "__type": 516 out.Values[i] = ec._Query___type(ctx, field) 517 case "__schema": 518 out.Values[i] = ec._Query___schema(ctx, field) 519 default: 520 panic("unknown field " + strconv.Quote(field.Name)) 521 } 522 } 523 wg.Wait() 524 if invalid { 525 return graphql.Null 526 } 527 return out 528 } 529 530 // nolint: vetshadow 531 func (ec *executionContext) _Query_path(ctx context.Context, field graphql.CollectedField) graphql.Marshaler { 532 ctx = ec.Tracer.StartFieldExecution(ctx, field) 533 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 534 rctx := &graphql.ResolverContext{ 535 Object: "Query", 536 Args: nil, 537 Field: field, 538 } 539 ctx = graphql.WithResolverContext(ctx, rctx) 540 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 541 resTmp := ec.FieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) { 542 ctx = rctx // use context from middleware stack in children 543 return ec.resolvers.Query().Path(rctx) 544 }) 545 if resTmp == nil { 546 return graphql.Null 547 } 548 res := resTmp.([]*models.Element) 549 rctx.Result = res 550 ctx = ec.Tracer.StartFieldChildExecution(ctx) 551 552 arr1 := make(graphql.Array, len(res)) 553 var wg sync.WaitGroup 554 555 isLen1 := len(res) == 1 556 if !isLen1 { 557 wg.Add(len(res)) 558 } 559 560 for idx1 := range res { 561 idx1 := idx1 562 rctx := &graphql.ResolverContext{ 563 Index: &idx1, 564 Result: res[idx1], 565 } 566 ctx := graphql.WithResolverContext(ctx, rctx) 567 f := func(idx1 int) { 568 if !isLen1 { 569 defer wg.Done() 570 } 571 arr1[idx1] = func() graphql.Marshaler { 572 573 if res[idx1] == nil { 574 return graphql.Null 575 } 576 577 return ec._Element(ctx, field.Selections, res[idx1]) 578 }() 579 } 580 if isLen1 { 581 f(idx1) 582 } else { 583 go f(idx1) 584 } 585 586 } 587 wg.Wait() 588 return arr1 589 } 590 591 // nolint: vetshadow 592 func (ec *executionContext) _Query_date(ctx context.Context, field graphql.CollectedField) graphql.Marshaler { 593 ctx = ec.Tracer.StartFieldExecution(ctx, field) 594 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 595 rawArgs := field.ArgumentMap(ec.Variables) 596 args, err := field_Query_date_args(rawArgs) 597 if err != nil { 598 ec.Error(ctx, err) 599 return graphql.Null 600 } 601 rctx := &graphql.ResolverContext{ 602 Object: "Query", 603 Args: args, 604 Field: field, 605 } 606 ctx = graphql.WithResolverContext(ctx, rctx) 607 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 608 resTmp := ec.FieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) { 609 ctx = rctx // use context from middleware stack in children 610 return ec.resolvers.Query().Date(rctx, args["filter"].(models.DateFilter)) 611 }) 612 if resTmp == nil { 613 if !ec.HasError(rctx) { 614 ec.Errorf(ctx, "must not be null") 615 } 616 return graphql.Null 617 } 618 res := resTmp.(bool) 619 rctx.Result = res 620 ctx = ec.Tracer.StartFieldChildExecution(ctx) 621 return graphql.MarshalBoolean(res) 622 } 623 624 // nolint: vetshadow 625 func (ec *executionContext) _Query_viewer(ctx context.Context, field graphql.CollectedField) graphql.Marshaler { 626 ctx = ec.Tracer.StartFieldExecution(ctx, field) 627 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 628 rctx := &graphql.ResolverContext{ 629 Object: "Query", 630 Args: nil, 631 Field: field, 632 } 633 ctx = graphql.WithResolverContext(ctx, rctx) 634 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 635 resTmp := ec.FieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) { 636 ctx = rctx // use context from middleware stack in children 637 return ec.resolvers.Query().Viewer(rctx) 638 }) 639 if resTmp == nil { 640 return graphql.Null 641 } 642 res := resTmp.(*models.Viewer) 643 rctx.Result = res 644 ctx = ec.Tracer.StartFieldChildExecution(ctx) 645 646 if res == nil { 647 return graphql.Null 648 } 649 650 return ec._Viewer(ctx, field.Selections, res) 651 } 652 653 // nolint: vetshadow 654 func (ec *executionContext) _Query_jsonEncoding(ctx context.Context, field graphql.CollectedField) graphql.Marshaler { 655 ctx = ec.Tracer.StartFieldExecution(ctx, field) 656 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 657 rctx := &graphql.ResolverContext{ 658 Object: "Query", 659 Args: nil, 660 Field: field, 661 } 662 ctx = graphql.WithResolverContext(ctx, rctx) 663 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 664 resTmp := ec.FieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) { 665 ctx = rctx // use context from middleware stack in children 666 return ec.resolvers.Query().JSONEncoding(rctx) 667 }) 668 if resTmp == nil { 669 if !ec.HasError(rctx) { 670 ec.Errorf(ctx, "must not be null") 671 } 672 return graphql.Null 673 } 674 res := resTmp.(string) 675 rctx.Result = res 676 ctx = ec.Tracer.StartFieldChildExecution(ctx) 677 return graphql.MarshalString(res) 678 } 679 680 // nolint: vetshadow 681 func (ec *executionContext) _Query_error(ctx context.Context, field graphql.CollectedField) graphql.Marshaler { 682 ctx = ec.Tracer.StartFieldExecution(ctx, field) 683 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 684 rawArgs := field.ArgumentMap(ec.Variables) 685 args, err := field_Query_error_args(rawArgs) 686 if err != nil { 687 ec.Error(ctx, err) 688 return graphql.Null 689 } 690 rctx := &graphql.ResolverContext{ 691 Object: "Query", 692 Args: args, 693 Field: field, 694 } 695 ctx = graphql.WithResolverContext(ctx, rctx) 696 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 697 resTmp := ec.FieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) { 698 ctx = rctx // use context from middleware stack in children 699 return ec.resolvers.Query().Error(rctx, args["type"].(*models.ErrorType)) 700 }) 701 if resTmp == nil { 702 if !ec.HasError(rctx) { 703 ec.Errorf(ctx, "must not be null") 704 } 705 return graphql.Null 706 } 707 res := resTmp.(bool) 708 rctx.Result = res 709 ctx = ec.Tracer.StartFieldChildExecution(ctx) 710 return graphql.MarshalBoolean(res) 711 } 712 713 // nolint: vetshadow 714 func (ec *executionContext) _Query___type(ctx context.Context, field graphql.CollectedField) graphql.Marshaler { 715 ctx = ec.Tracer.StartFieldExecution(ctx, field) 716 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 717 rawArgs := field.ArgumentMap(ec.Variables) 718 args, err := field_Query___type_args(rawArgs) 719 if err != nil { 720 ec.Error(ctx, err) 721 return graphql.Null 722 } 723 rctx := &graphql.ResolverContext{ 724 Object: "Query", 725 Args: args, 726 Field: field, 727 } 728 ctx = graphql.WithResolverContext(ctx, rctx) 729 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 730 resTmp := ec.FieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) { 731 ctx = rctx // use context from middleware stack in children 732 return ec.introspectType(args["name"].(string)) 733 }) 734 if resTmp == nil { 735 return graphql.Null 736 } 737 res := resTmp.(*introspection.Type) 738 rctx.Result = res 739 ctx = ec.Tracer.StartFieldChildExecution(ctx) 740 741 if res == nil { 742 return graphql.Null 743 } 744 745 return ec.___Type(ctx, field.Selections, res) 746 } 747 748 // nolint: vetshadow 749 func (ec *executionContext) _Query___schema(ctx context.Context, field graphql.CollectedField) graphql.Marshaler { 750 ctx = ec.Tracer.StartFieldExecution(ctx, field) 751 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 752 rctx := &graphql.ResolverContext{ 753 Object: "Query", 754 Args: nil, 755 Field: field, 756 } 757 ctx = graphql.WithResolverContext(ctx, rctx) 758 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 759 resTmp := ec.FieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) { 760 ctx = rctx // use context from middleware stack in children 761 return ec.introspectSchema() 762 }) 763 if resTmp == nil { 764 return graphql.Null 765 } 766 res := resTmp.(*introspection.Schema) 767 rctx.Result = res 768 ctx = ec.Tracer.StartFieldChildExecution(ctx) 769 770 if res == nil { 771 return graphql.Null 772 } 773 774 return ec.___Schema(ctx, field.Selections, res) 775 } 776 777 var userImplementors = []string{"User"} 778 779 // nolint: gocyclo, errcheck, gas, goconst 780 func (ec *executionContext) _User(ctx context.Context, sel ast.SelectionSet, obj *remote_api.User) graphql.Marshaler { 781 fields := graphql.CollectFields(ctx, sel, userImplementors) 782 783 var wg sync.WaitGroup 784 out := graphql.NewOrderedMap(len(fields)) 785 invalid := false 786 for i, field := range fields { 787 out.Keys[i] = field.Alias 788 789 switch field.Name { 790 case "__typename": 791 out.Values[i] = graphql.MarshalString("User") 792 case "name": 793 out.Values[i] = ec._User_name(ctx, field, obj) 794 if out.Values[i] == graphql.Null { 795 invalid = true 796 } 797 case "likes": 798 wg.Add(1) 799 go func(i int, field graphql.CollectedField) { 800 out.Values[i] = ec._User_likes(ctx, field, obj) 801 if out.Values[i] == graphql.Null { 802 invalid = true 803 } 804 wg.Done() 805 }(i, field) 806 default: 807 panic("unknown field " + strconv.Quote(field.Name)) 808 } 809 } 810 wg.Wait() 811 if invalid { 812 return graphql.Null 813 } 814 return out 815 } 816 817 // nolint: vetshadow 818 func (ec *executionContext) _User_name(ctx context.Context, field graphql.CollectedField, obj *remote_api.User) graphql.Marshaler { 819 ctx = ec.Tracer.StartFieldExecution(ctx, field) 820 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 821 rctx := &graphql.ResolverContext{ 822 Object: "User", 823 Args: nil, 824 Field: field, 825 } 826 ctx = graphql.WithResolverContext(ctx, rctx) 827 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 828 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 829 ctx = rctx // use context from middleware stack in children 830 return obj.Name, nil 831 }) 832 if resTmp == nil { 833 if !ec.HasError(rctx) { 834 ec.Errorf(ctx, "must not be null") 835 } 836 return graphql.Null 837 } 838 res := resTmp.(string) 839 rctx.Result = res 840 ctx = ec.Tracer.StartFieldChildExecution(ctx) 841 return graphql.MarshalString(res) 842 } 843 844 // nolint: vetshadow 845 func (ec *executionContext) _User_likes(ctx context.Context, field graphql.CollectedField, obj *remote_api.User) graphql.Marshaler { 846 ctx = ec.Tracer.StartFieldExecution(ctx, field) 847 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 848 rctx := &graphql.ResolverContext{ 849 Object: "User", 850 Args: nil, 851 Field: field, 852 } 853 ctx = graphql.WithResolverContext(ctx, rctx) 854 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 855 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 856 ctx = rctx // use context from middleware stack in children 857 return ec.resolvers.User().Likes(rctx, obj) 858 }) 859 if resTmp == nil { 860 if !ec.HasError(rctx) { 861 ec.Errorf(ctx, "must not be null") 862 } 863 return graphql.Null 864 } 865 res := resTmp.([]string) 866 rctx.Result = res 867 ctx = ec.Tracer.StartFieldChildExecution(ctx) 868 869 arr1 := make(graphql.Array, len(res)) 870 871 for idx1 := range res { 872 arr1[idx1] = func() graphql.Marshaler { 873 return graphql.MarshalString(res[idx1]) 874 }() 875 } 876 877 return arr1 878 } 879 880 var viewerImplementors = []string{"Viewer"} 881 882 // nolint: gocyclo, errcheck, gas, goconst 883 func (ec *executionContext) _Viewer(ctx context.Context, sel ast.SelectionSet, obj *models.Viewer) graphql.Marshaler { 884 fields := graphql.CollectFields(ctx, sel, viewerImplementors) 885 886 out := graphql.NewOrderedMap(len(fields)) 887 invalid := false 888 for i, field := range fields { 889 out.Keys[i] = field.Alias 890 891 switch field.Name { 892 case "__typename": 893 out.Values[i] = graphql.MarshalString("Viewer") 894 case "user": 895 out.Values[i] = ec._Viewer_user(ctx, field, obj) 896 default: 897 panic("unknown field " + strconv.Quote(field.Name)) 898 } 899 } 900 901 if invalid { 902 return graphql.Null 903 } 904 return out 905 } 906 907 // nolint: vetshadow 908 func (ec *executionContext) _Viewer_user(ctx context.Context, field graphql.CollectedField, obj *models.Viewer) graphql.Marshaler { 909 ctx = ec.Tracer.StartFieldExecution(ctx, field) 910 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 911 rctx := &graphql.ResolverContext{ 912 Object: "Viewer", 913 Args: nil, 914 Field: field, 915 } 916 ctx = graphql.WithResolverContext(ctx, rctx) 917 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 918 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 919 ctx = rctx // use context from middleware stack in children 920 return obj.User, nil 921 }) 922 if resTmp == nil { 923 return graphql.Null 924 } 925 res := resTmp.(*remote_api.User) 926 rctx.Result = res 927 ctx = ec.Tracer.StartFieldChildExecution(ctx) 928 929 if res == nil { 930 return graphql.Null 931 } 932 933 return ec._User(ctx, field.Selections, res) 934 } 935 936 var __DirectiveImplementors = []string{"__Directive"} 937 938 // nolint: gocyclo, errcheck, gas, goconst 939 func (ec *executionContext) ___Directive(ctx context.Context, sel ast.SelectionSet, obj *introspection.Directive) graphql.Marshaler { 940 fields := graphql.CollectFields(ctx, sel, __DirectiveImplementors) 941 942 out := graphql.NewOrderedMap(len(fields)) 943 invalid := false 944 for i, field := range fields { 945 out.Keys[i] = field.Alias 946 947 switch field.Name { 948 case "__typename": 949 out.Values[i] = graphql.MarshalString("__Directive") 950 case "name": 951 out.Values[i] = ec.___Directive_name(ctx, field, obj) 952 if out.Values[i] == graphql.Null { 953 invalid = true 954 } 955 case "description": 956 out.Values[i] = ec.___Directive_description(ctx, field, obj) 957 case "locations": 958 out.Values[i] = ec.___Directive_locations(ctx, field, obj) 959 if out.Values[i] == graphql.Null { 960 invalid = true 961 } 962 case "args": 963 out.Values[i] = ec.___Directive_args(ctx, field, obj) 964 if out.Values[i] == graphql.Null { 965 invalid = true 966 } 967 default: 968 panic("unknown field " + strconv.Quote(field.Name)) 969 } 970 } 971 972 if invalid { 973 return graphql.Null 974 } 975 return out 976 } 977 978 // nolint: vetshadow 979 func (ec *executionContext) ___Directive_name(ctx context.Context, field graphql.CollectedField, obj *introspection.Directive) graphql.Marshaler { 980 ctx = ec.Tracer.StartFieldExecution(ctx, field) 981 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 982 rctx := &graphql.ResolverContext{ 983 Object: "__Directive", 984 Args: nil, 985 Field: field, 986 } 987 ctx = graphql.WithResolverContext(ctx, rctx) 988 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 989 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 990 ctx = rctx // use context from middleware stack in children 991 return obj.Name, nil 992 }) 993 if resTmp == nil { 994 if !ec.HasError(rctx) { 995 ec.Errorf(ctx, "must not be null") 996 } 997 return graphql.Null 998 } 999 res := resTmp.(string) 1000 rctx.Result = res 1001 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1002 return graphql.MarshalString(res) 1003 } 1004 1005 // nolint: vetshadow 1006 func (ec *executionContext) ___Directive_description(ctx context.Context, field graphql.CollectedField, obj *introspection.Directive) graphql.Marshaler { 1007 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1008 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1009 rctx := &graphql.ResolverContext{ 1010 Object: "__Directive", 1011 Args: nil, 1012 Field: field, 1013 } 1014 ctx = graphql.WithResolverContext(ctx, rctx) 1015 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1016 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1017 ctx = rctx // use context from middleware stack in children 1018 return obj.Description, nil 1019 }) 1020 if resTmp == nil { 1021 return graphql.Null 1022 } 1023 res := resTmp.(string) 1024 rctx.Result = res 1025 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1026 return graphql.MarshalString(res) 1027 } 1028 1029 // nolint: vetshadow 1030 func (ec *executionContext) ___Directive_locations(ctx context.Context, field graphql.CollectedField, obj *introspection.Directive) graphql.Marshaler { 1031 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1032 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1033 rctx := &graphql.ResolverContext{ 1034 Object: "__Directive", 1035 Args: nil, 1036 Field: field, 1037 } 1038 ctx = graphql.WithResolverContext(ctx, rctx) 1039 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1040 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1041 ctx = rctx // use context from middleware stack in children 1042 return obj.Locations, nil 1043 }) 1044 if resTmp == nil { 1045 if !ec.HasError(rctx) { 1046 ec.Errorf(ctx, "must not be null") 1047 } 1048 return graphql.Null 1049 } 1050 res := resTmp.([]string) 1051 rctx.Result = res 1052 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1053 1054 arr1 := make(graphql.Array, len(res)) 1055 1056 for idx1 := range res { 1057 arr1[idx1] = func() graphql.Marshaler { 1058 return graphql.MarshalString(res[idx1]) 1059 }() 1060 } 1061 1062 return arr1 1063 } 1064 1065 // nolint: vetshadow 1066 func (ec *executionContext) ___Directive_args(ctx context.Context, field graphql.CollectedField, obj *introspection.Directive) graphql.Marshaler { 1067 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1068 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1069 rctx := &graphql.ResolverContext{ 1070 Object: "__Directive", 1071 Args: nil, 1072 Field: field, 1073 } 1074 ctx = graphql.WithResolverContext(ctx, rctx) 1075 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1076 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1077 ctx = rctx // use context from middleware stack in children 1078 return obj.Args, nil 1079 }) 1080 if resTmp == nil { 1081 if !ec.HasError(rctx) { 1082 ec.Errorf(ctx, "must not be null") 1083 } 1084 return graphql.Null 1085 } 1086 res := resTmp.([]introspection.InputValue) 1087 rctx.Result = res 1088 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1089 1090 arr1 := make(graphql.Array, len(res)) 1091 var wg sync.WaitGroup 1092 1093 isLen1 := len(res) == 1 1094 if !isLen1 { 1095 wg.Add(len(res)) 1096 } 1097 1098 for idx1 := range res { 1099 idx1 := idx1 1100 rctx := &graphql.ResolverContext{ 1101 Index: &idx1, 1102 Result: &res[idx1], 1103 } 1104 ctx := graphql.WithResolverContext(ctx, rctx) 1105 f := func(idx1 int) { 1106 if !isLen1 { 1107 defer wg.Done() 1108 } 1109 arr1[idx1] = func() graphql.Marshaler { 1110 1111 return ec.___InputValue(ctx, field.Selections, &res[idx1]) 1112 }() 1113 } 1114 if isLen1 { 1115 f(idx1) 1116 } else { 1117 go f(idx1) 1118 } 1119 1120 } 1121 wg.Wait() 1122 return arr1 1123 } 1124 1125 var __EnumValueImplementors = []string{"__EnumValue"} 1126 1127 // nolint: gocyclo, errcheck, gas, goconst 1128 func (ec *executionContext) ___EnumValue(ctx context.Context, sel ast.SelectionSet, obj *introspection.EnumValue) graphql.Marshaler { 1129 fields := graphql.CollectFields(ctx, sel, __EnumValueImplementors) 1130 1131 out := graphql.NewOrderedMap(len(fields)) 1132 invalid := false 1133 for i, field := range fields { 1134 out.Keys[i] = field.Alias 1135 1136 switch field.Name { 1137 case "__typename": 1138 out.Values[i] = graphql.MarshalString("__EnumValue") 1139 case "name": 1140 out.Values[i] = ec.___EnumValue_name(ctx, field, obj) 1141 if out.Values[i] == graphql.Null { 1142 invalid = true 1143 } 1144 case "description": 1145 out.Values[i] = ec.___EnumValue_description(ctx, field, obj) 1146 case "isDeprecated": 1147 out.Values[i] = ec.___EnumValue_isDeprecated(ctx, field, obj) 1148 if out.Values[i] == graphql.Null { 1149 invalid = true 1150 } 1151 case "deprecationReason": 1152 out.Values[i] = ec.___EnumValue_deprecationReason(ctx, field, obj) 1153 default: 1154 panic("unknown field " + strconv.Quote(field.Name)) 1155 } 1156 } 1157 1158 if invalid { 1159 return graphql.Null 1160 } 1161 return out 1162 } 1163 1164 // nolint: vetshadow 1165 func (ec *executionContext) ___EnumValue_name(ctx context.Context, field graphql.CollectedField, obj *introspection.EnumValue) graphql.Marshaler { 1166 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1167 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1168 rctx := &graphql.ResolverContext{ 1169 Object: "__EnumValue", 1170 Args: nil, 1171 Field: field, 1172 } 1173 ctx = graphql.WithResolverContext(ctx, rctx) 1174 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1175 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1176 ctx = rctx // use context from middleware stack in children 1177 return obj.Name, nil 1178 }) 1179 if resTmp == nil { 1180 if !ec.HasError(rctx) { 1181 ec.Errorf(ctx, "must not be null") 1182 } 1183 return graphql.Null 1184 } 1185 res := resTmp.(string) 1186 rctx.Result = res 1187 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1188 return graphql.MarshalString(res) 1189 } 1190 1191 // nolint: vetshadow 1192 func (ec *executionContext) ___EnumValue_description(ctx context.Context, field graphql.CollectedField, obj *introspection.EnumValue) graphql.Marshaler { 1193 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1194 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1195 rctx := &graphql.ResolverContext{ 1196 Object: "__EnumValue", 1197 Args: nil, 1198 Field: field, 1199 } 1200 ctx = graphql.WithResolverContext(ctx, rctx) 1201 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1202 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1203 ctx = rctx // use context from middleware stack in children 1204 return obj.Description, nil 1205 }) 1206 if resTmp == nil { 1207 return graphql.Null 1208 } 1209 res := resTmp.(string) 1210 rctx.Result = res 1211 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1212 return graphql.MarshalString(res) 1213 } 1214 1215 // nolint: vetshadow 1216 func (ec *executionContext) ___EnumValue_isDeprecated(ctx context.Context, field graphql.CollectedField, obj *introspection.EnumValue) graphql.Marshaler { 1217 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1218 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1219 rctx := &graphql.ResolverContext{ 1220 Object: "__EnumValue", 1221 Args: nil, 1222 Field: field, 1223 } 1224 ctx = graphql.WithResolverContext(ctx, rctx) 1225 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1226 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1227 ctx = rctx // use context from middleware stack in children 1228 return obj.IsDeprecated(), nil 1229 }) 1230 if resTmp == nil { 1231 if !ec.HasError(rctx) { 1232 ec.Errorf(ctx, "must not be null") 1233 } 1234 return graphql.Null 1235 } 1236 res := resTmp.(bool) 1237 rctx.Result = res 1238 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1239 return graphql.MarshalBoolean(res) 1240 } 1241 1242 // nolint: vetshadow 1243 func (ec *executionContext) ___EnumValue_deprecationReason(ctx context.Context, field graphql.CollectedField, obj *introspection.EnumValue) graphql.Marshaler { 1244 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1245 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1246 rctx := &graphql.ResolverContext{ 1247 Object: "__EnumValue", 1248 Args: nil, 1249 Field: field, 1250 } 1251 ctx = graphql.WithResolverContext(ctx, rctx) 1252 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1253 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1254 ctx = rctx // use context from middleware stack in children 1255 return obj.DeprecationReason(), nil 1256 }) 1257 if resTmp == nil { 1258 return graphql.Null 1259 } 1260 res := resTmp.(*string) 1261 rctx.Result = res 1262 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1263 1264 if res == nil { 1265 return graphql.Null 1266 } 1267 return graphql.MarshalString(*res) 1268 } 1269 1270 var __FieldImplementors = []string{"__Field"} 1271 1272 // nolint: gocyclo, errcheck, gas, goconst 1273 func (ec *executionContext) ___Field(ctx context.Context, sel ast.SelectionSet, obj *introspection.Field) graphql.Marshaler { 1274 fields := graphql.CollectFields(ctx, sel, __FieldImplementors) 1275 1276 out := graphql.NewOrderedMap(len(fields)) 1277 invalid := false 1278 for i, field := range fields { 1279 out.Keys[i] = field.Alias 1280 1281 switch field.Name { 1282 case "__typename": 1283 out.Values[i] = graphql.MarshalString("__Field") 1284 case "name": 1285 out.Values[i] = ec.___Field_name(ctx, field, obj) 1286 if out.Values[i] == graphql.Null { 1287 invalid = true 1288 } 1289 case "description": 1290 out.Values[i] = ec.___Field_description(ctx, field, obj) 1291 case "args": 1292 out.Values[i] = ec.___Field_args(ctx, field, obj) 1293 if out.Values[i] == graphql.Null { 1294 invalid = true 1295 } 1296 case "type": 1297 out.Values[i] = ec.___Field_type(ctx, field, obj) 1298 if out.Values[i] == graphql.Null { 1299 invalid = true 1300 } 1301 case "isDeprecated": 1302 out.Values[i] = ec.___Field_isDeprecated(ctx, field, obj) 1303 if out.Values[i] == graphql.Null { 1304 invalid = true 1305 } 1306 case "deprecationReason": 1307 out.Values[i] = ec.___Field_deprecationReason(ctx, field, obj) 1308 default: 1309 panic("unknown field " + strconv.Quote(field.Name)) 1310 } 1311 } 1312 1313 if invalid { 1314 return graphql.Null 1315 } 1316 return out 1317 } 1318 1319 // nolint: vetshadow 1320 func (ec *executionContext) ___Field_name(ctx context.Context, field graphql.CollectedField, obj *introspection.Field) graphql.Marshaler { 1321 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1322 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1323 rctx := &graphql.ResolverContext{ 1324 Object: "__Field", 1325 Args: nil, 1326 Field: field, 1327 } 1328 ctx = graphql.WithResolverContext(ctx, rctx) 1329 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1330 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1331 ctx = rctx // use context from middleware stack in children 1332 return obj.Name, nil 1333 }) 1334 if resTmp == nil { 1335 if !ec.HasError(rctx) { 1336 ec.Errorf(ctx, "must not be null") 1337 } 1338 return graphql.Null 1339 } 1340 res := resTmp.(string) 1341 rctx.Result = res 1342 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1343 return graphql.MarshalString(res) 1344 } 1345 1346 // nolint: vetshadow 1347 func (ec *executionContext) ___Field_description(ctx context.Context, field graphql.CollectedField, obj *introspection.Field) graphql.Marshaler { 1348 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1349 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1350 rctx := &graphql.ResolverContext{ 1351 Object: "__Field", 1352 Args: nil, 1353 Field: field, 1354 } 1355 ctx = graphql.WithResolverContext(ctx, rctx) 1356 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1357 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1358 ctx = rctx // use context from middleware stack in children 1359 return obj.Description, nil 1360 }) 1361 if resTmp == nil { 1362 return graphql.Null 1363 } 1364 res := resTmp.(string) 1365 rctx.Result = res 1366 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1367 return graphql.MarshalString(res) 1368 } 1369 1370 // nolint: vetshadow 1371 func (ec *executionContext) ___Field_args(ctx context.Context, field graphql.CollectedField, obj *introspection.Field) graphql.Marshaler { 1372 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1373 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1374 rctx := &graphql.ResolverContext{ 1375 Object: "__Field", 1376 Args: nil, 1377 Field: field, 1378 } 1379 ctx = graphql.WithResolverContext(ctx, rctx) 1380 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1381 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1382 ctx = rctx // use context from middleware stack in children 1383 return obj.Args, nil 1384 }) 1385 if resTmp == nil { 1386 if !ec.HasError(rctx) { 1387 ec.Errorf(ctx, "must not be null") 1388 } 1389 return graphql.Null 1390 } 1391 res := resTmp.([]introspection.InputValue) 1392 rctx.Result = res 1393 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1394 1395 arr1 := make(graphql.Array, len(res)) 1396 var wg sync.WaitGroup 1397 1398 isLen1 := len(res) == 1 1399 if !isLen1 { 1400 wg.Add(len(res)) 1401 } 1402 1403 for idx1 := range res { 1404 idx1 := idx1 1405 rctx := &graphql.ResolverContext{ 1406 Index: &idx1, 1407 Result: &res[idx1], 1408 } 1409 ctx := graphql.WithResolverContext(ctx, rctx) 1410 f := func(idx1 int) { 1411 if !isLen1 { 1412 defer wg.Done() 1413 } 1414 arr1[idx1] = func() graphql.Marshaler { 1415 1416 return ec.___InputValue(ctx, field.Selections, &res[idx1]) 1417 }() 1418 } 1419 if isLen1 { 1420 f(idx1) 1421 } else { 1422 go f(idx1) 1423 } 1424 1425 } 1426 wg.Wait() 1427 return arr1 1428 } 1429 1430 // nolint: vetshadow 1431 func (ec *executionContext) ___Field_type(ctx context.Context, field graphql.CollectedField, obj *introspection.Field) graphql.Marshaler { 1432 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1433 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1434 rctx := &graphql.ResolverContext{ 1435 Object: "__Field", 1436 Args: nil, 1437 Field: field, 1438 } 1439 ctx = graphql.WithResolverContext(ctx, rctx) 1440 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1441 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1442 ctx = rctx // use context from middleware stack in children 1443 return obj.Type, nil 1444 }) 1445 if resTmp == nil { 1446 if !ec.HasError(rctx) { 1447 ec.Errorf(ctx, "must not be null") 1448 } 1449 return graphql.Null 1450 } 1451 res := resTmp.(*introspection.Type) 1452 rctx.Result = res 1453 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1454 1455 if res == nil { 1456 if !ec.HasError(rctx) { 1457 ec.Errorf(ctx, "must not be null") 1458 } 1459 return graphql.Null 1460 } 1461 1462 return ec.___Type(ctx, field.Selections, res) 1463 } 1464 1465 // nolint: vetshadow 1466 func (ec *executionContext) ___Field_isDeprecated(ctx context.Context, field graphql.CollectedField, obj *introspection.Field) graphql.Marshaler { 1467 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1468 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1469 rctx := &graphql.ResolverContext{ 1470 Object: "__Field", 1471 Args: nil, 1472 Field: field, 1473 } 1474 ctx = graphql.WithResolverContext(ctx, rctx) 1475 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1476 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1477 ctx = rctx // use context from middleware stack in children 1478 return obj.IsDeprecated(), nil 1479 }) 1480 if resTmp == nil { 1481 if !ec.HasError(rctx) { 1482 ec.Errorf(ctx, "must not be null") 1483 } 1484 return graphql.Null 1485 } 1486 res := resTmp.(bool) 1487 rctx.Result = res 1488 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1489 return graphql.MarshalBoolean(res) 1490 } 1491 1492 // nolint: vetshadow 1493 func (ec *executionContext) ___Field_deprecationReason(ctx context.Context, field graphql.CollectedField, obj *introspection.Field) graphql.Marshaler { 1494 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1495 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1496 rctx := &graphql.ResolverContext{ 1497 Object: "__Field", 1498 Args: nil, 1499 Field: field, 1500 } 1501 ctx = graphql.WithResolverContext(ctx, rctx) 1502 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1503 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1504 ctx = rctx // use context from middleware stack in children 1505 return obj.DeprecationReason(), nil 1506 }) 1507 if resTmp == nil { 1508 return graphql.Null 1509 } 1510 res := resTmp.(*string) 1511 rctx.Result = res 1512 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1513 1514 if res == nil { 1515 return graphql.Null 1516 } 1517 return graphql.MarshalString(*res) 1518 } 1519 1520 var __InputValueImplementors = []string{"__InputValue"} 1521 1522 // nolint: gocyclo, errcheck, gas, goconst 1523 func (ec *executionContext) ___InputValue(ctx context.Context, sel ast.SelectionSet, obj *introspection.InputValue) graphql.Marshaler { 1524 fields := graphql.CollectFields(ctx, sel, __InputValueImplementors) 1525 1526 out := graphql.NewOrderedMap(len(fields)) 1527 invalid := false 1528 for i, field := range fields { 1529 out.Keys[i] = field.Alias 1530 1531 switch field.Name { 1532 case "__typename": 1533 out.Values[i] = graphql.MarshalString("__InputValue") 1534 case "name": 1535 out.Values[i] = ec.___InputValue_name(ctx, field, obj) 1536 if out.Values[i] == graphql.Null { 1537 invalid = true 1538 } 1539 case "description": 1540 out.Values[i] = ec.___InputValue_description(ctx, field, obj) 1541 case "type": 1542 out.Values[i] = ec.___InputValue_type(ctx, field, obj) 1543 if out.Values[i] == graphql.Null { 1544 invalid = true 1545 } 1546 case "defaultValue": 1547 out.Values[i] = ec.___InputValue_defaultValue(ctx, field, obj) 1548 default: 1549 panic("unknown field " + strconv.Quote(field.Name)) 1550 } 1551 } 1552 1553 if invalid { 1554 return graphql.Null 1555 } 1556 return out 1557 } 1558 1559 // nolint: vetshadow 1560 func (ec *executionContext) ___InputValue_name(ctx context.Context, field graphql.CollectedField, obj *introspection.InputValue) graphql.Marshaler { 1561 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1562 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1563 rctx := &graphql.ResolverContext{ 1564 Object: "__InputValue", 1565 Args: nil, 1566 Field: field, 1567 } 1568 ctx = graphql.WithResolverContext(ctx, rctx) 1569 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1570 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1571 ctx = rctx // use context from middleware stack in children 1572 return obj.Name, nil 1573 }) 1574 if resTmp == nil { 1575 if !ec.HasError(rctx) { 1576 ec.Errorf(ctx, "must not be null") 1577 } 1578 return graphql.Null 1579 } 1580 res := resTmp.(string) 1581 rctx.Result = res 1582 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1583 return graphql.MarshalString(res) 1584 } 1585 1586 // nolint: vetshadow 1587 func (ec *executionContext) ___InputValue_description(ctx context.Context, field graphql.CollectedField, obj *introspection.InputValue) graphql.Marshaler { 1588 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1589 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1590 rctx := &graphql.ResolverContext{ 1591 Object: "__InputValue", 1592 Args: nil, 1593 Field: field, 1594 } 1595 ctx = graphql.WithResolverContext(ctx, rctx) 1596 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1597 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1598 ctx = rctx // use context from middleware stack in children 1599 return obj.Description, nil 1600 }) 1601 if resTmp == nil { 1602 return graphql.Null 1603 } 1604 res := resTmp.(string) 1605 rctx.Result = res 1606 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1607 return graphql.MarshalString(res) 1608 } 1609 1610 // nolint: vetshadow 1611 func (ec *executionContext) ___InputValue_type(ctx context.Context, field graphql.CollectedField, obj *introspection.InputValue) graphql.Marshaler { 1612 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1613 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1614 rctx := &graphql.ResolverContext{ 1615 Object: "__InputValue", 1616 Args: nil, 1617 Field: field, 1618 } 1619 ctx = graphql.WithResolverContext(ctx, rctx) 1620 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1621 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1622 ctx = rctx // use context from middleware stack in children 1623 return obj.Type, nil 1624 }) 1625 if resTmp == nil { 1626 if !ec.HasError(rctx) { 1627 ec.Errorf(ctx, "must not be null") 1628 } 1629 return graphql.Null 1630 } 1631 res := resTmp.(*introspection.Type) 1632 rctx.Result = res 1633 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1634 1635 if res == nil { 1636 if !ec.HasError(rctx) { 1637 ec.Errorf(ctx, "must not be null") 1638 } 1639 return graphql.Null 1640 } 1641 1642 return ec.___Type(ctx, field.Selections, res) 1643 } 1644 1645 // nolint: vetshadow 1646 func (ec *executionContext) ___InputValue_defaultValue(ctx context.Context, field graphql.CollectedField, obj *introspection.InputValue) graphql.Marshaler { 1647 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1648 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1649 rctx := &graphql.ResolverContext{ 1650 Object: "__InputValue", 1651 Args: nil, 1652 Field: field, 1653 } 1654 ctx = graphql.WithResolverContext(ctx, rctx) 1655 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1656 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1657 ctx = rctx // use context from middleware stack in children 1658 return obj.DefaultValue, nil 1659 }) 1660 if resTmp == nil { 1661 return graphql.Null 1662 } 1663 res := resTmp.(*string) 1664 rctx.Result = res 1665 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1666 1667 if res == nil { 1668 return graphql.Null 1669 } 1670 return graphql.MarshalString(*res) 1671 } 1672 1673 var __SchemaImplementors = []string{"__Schema"} 1674 1675 // nolint: gocyclo, errcheck, gas, goconst 1676 func (ec *executionContext) ___Schema(ctx context.Context, sel ast.SelectionSet, obj *introspection.Schema) graphql.Marshaler { 1677 fields := graphql.CollectFields(ctx, sel, __SchemaImplementors) 1678 1679 out := graphql.NewOrderedMap(len(fields)) 1680 invalid := false 1681 for i, field := range fields { 1682 out.Keys[i] = field.Alias 1683 1684 switch field.Name { 1685 case "__typename": 1686 out.Values[i] = graphql.MarshalString("__Schema") 1687 case "types": 1688 out.Values[i] = ec.___Schema_types(ctx, field, obj) 1689 if out.Values[i] == graphql.Null { 1690 invalid = true 1691 } 1692 case "queryType": 1693 out.Values[i] = ec.___Schema_queryType(ctx, field, obj) 1694 if out.Values[i] == graphql.Null { 1695 invalid = true 1696 } 1697 case "mutationType": 1698 out.Values[i] = ec.___Schema_mutationType(ctx, field, obj) 1699 case "subscriptionType": 1700 out.Values[i] = ec.___Schema_subscriptionType(ctx, field, obj) 1701 case "directives": 1702 out.Values[i] = ec.___Schema_directives(ctx, field, obj) 1703 if out.Values[i] == graphql.Null { 1704 invalid = true 1705 } 1706 default: 1707 panic("unknown field " + strconv.Quote(field.Name)) 1708 } 1709 } 1710 1711 if invalid { 1712 return graphql.Null 1713 } 1714 return out 1715 } 1716 1717 // nolint: vetshadow 1718 func (ec *executionContext) ___Schema_types(ctx context.Context, field graphql.CollectedField, obj *introspection.Schema) graphql.Marshaler { 1719 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1720 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1721 rctx := &graphql.ResolverContext{ 1722 Object: "__Schema", 1723 Args: nil, 1724 Field: field, 1725 } 1726 ctx = graphql.WithResolverContext(ctx, rctx) 1727 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1728 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1729 ctx = rctx // use context from middleware stack in children 1730 return obj.Types(), nil 1731 }) 1732 if resTmp == nil { 1733 if !ec.HasError(rctx) { 1734 ec.Errorf(ctx, "must not be null") 1735 } 1736 return graphql.Null 1737 } 1738 res := resTmp.([]introspection.Type) 1739 rctx.Result = res 1740 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1741 1742 arr1 := make(graphql.Array, len(res)) 1743 var wg sync.WaitGroup 1744 1745 isLen1 := len(res) == 1 1746 if !isLen1 { 1747 wg.Add(len(res)) 1748 } 1749 1750 for idx1 := range res { 1751 idx1 := idx1 1752 rctx := &graphql.ResolverContext{ 1753 Index: &idx1, 1754 Result: &res[idx1], 1755 } 1756 ctx := graphql.WithResolverContext(ctx, rctx) 1757 f := func(idx1 int) { 1758 if !isLen1 { 1759 defer wg.Done() 1760 } 1761 arr1[idx1] = func() graphql.Marshaler { 1762 1763 return ec.___Type(ctx, field.Selections, &res[idx1]) 1764 }() 1765 } 1766 if isLen1 { 1767 f(idx1) 1768 } else { 1769 go f(idx1) 1770 } 1771 1772 } 1773 wg.Wait() 1774 return arr1 1775 } 1776 1777 // nolint: vetshadow 1778 func (ec *executionContext) ___Schema_queryType(ctx context.Context, field graphql.CollectedField, obj *introspection.Schema) graphql.Marshaler { 1779 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1780 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1781 rctx := &graphql.ResolverContext{ 1782 Object: "__Schema", 1783 Args: nil, 1784 Field: field, 1785 } 1786 ctx = graphql.WithResolverContext(ctx, rctx) 1787 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1788 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1789 ctx = rctx // use context from middleware stack in children 1790 return obj.QueryType(), nil 1791 }) 1792 if resTmp == nil { 1793 if !ec.HasError(rctx) { 1794 ec.Errorf(ctx, "must not be null") 1795 } 1796 return graphql.Null 1797 } 1798 res := resTmp.(*introspection.Type) 1799 rctx.Result = res 1800 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1801 1802 if res == nil { 1803 if !ec.HasError(rctx) { 1804 ec.Errorf(ctx, "must not be null") 1805 } 1806 return graphql.Null 1807 } 1808 1809 return ec.___Type(ctx, field.Selections, res) 1810 } 1811 1812 // nolint: vetshadow 1813 func (ec *executionContext) ___Schema_mutationType(ctx context.Context, field graphql.CollectedField, obj *introspection.Schema) graphql.Marshaler { 1814 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1815 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1816 rctx := &graphql.ResolverContext{ 1817 Object: "__Schema", 1818 Args: nil, 1819 Field: field, 1820 } 1821 ctx = graphql.WithResolverContext(ctx, rctx) 1822 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1823 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1824 ctx = rctx // use context from middleware stack in children 1825 return obj.MutationType(), nil 1826 }) 1827 if resTmp == nil { 1828 return graphql.Null 1829 } 1830 res := resTmp.(*introspection.Type) 1831 rctx.Result = res 1832 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1833 1834 if res == nil { 1835 return graphql.Null 1836 } 1837 1838 return ec.___Type(ctx, field.Selections, res) 1839 } 1840 1841 // nolint: vetshadow 1842 func (ec *executionContext) ___Schema_subscriptionType(ctx context.Context, field graphql.CollectedField, obj *introspection.Schema) graphql.Marshaler { 1843 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1844 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1845 rctx := &graphql.ResolverContext{ 1846 Object: "__Schema", 1847 Args: nil, 1848 Field: field, 1849 } 1850 ctx = graphql.WithResolverContext(ctx, rctx) 1851 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1852 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1853 ctx = rctx // use context from middleware stack in children 1854 return obj.SubscriptionType(), nil 1855 }) 1856 if resTmp == nil { 1857 return graphql.Null 1858 } 1859 res := resTmp.(*introspection.Type) 1860 rctx.Result = res 1861 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1862 1863 if res == nil { 1864 return graphql.Null 1865 } 1866 1867 return ec.___Type(ctx, field.Selections, res) 1868 } 1869 1870 // nolint: vetshadow 1871 func (ec *executionContext) ___Schema_directives(ctx context.Context, field graphql.CollectedField, obj *introspection.Schema) graphql.Marshaler { 1872 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1873 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1874 rctx := &graphql.ResolverContext{ 1875 Object: "__Schema", 1876 Args: nil, 1877 Field: field, 1878 } 1879 ctx = graphql.WithResolverContext(ctx, rctx) 1880 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1881 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1882 ctx = rctx // use context from middleware stack in children 1883 return obj.Directives(), nil 1884 }) 1885 if resTmp == nil { 1886 if !ec.HasError(rctx) { 1887 ec.Errorf(ctx, "must not be null") 1888 } 1889 return graphql.Null 1890 } 1891 res := resTmp.([]introspection.Directive) 1892 rctx.Result = res 1893 ctx = ec.Tracer.StartFieldChildExecution(ctx) 1894 1895 arr1 := make(graphql.Array, len(res)) 1896 var wg sync.WaitGroup 1897 1898 isLen1 := len(res) == 1 1899 if !isLen1 { 1900 wg.Add(len(res)) 1901 } 1902 1903 for idx1 := range res { 1904 idx1 := idx1 1905 rctx := &graphql.ResolverContext{ 1906 Index: &idx1, 1907 Result: &res[idx1], 1908 } 1909 ctx := graphql.WithResolverContext(ctx, rctx) 1910 f := func(idx1 int) { 1911 if !isLen1 { 1912 defer wg.Done() 1913 } 1914 arr1[idx1] = func() graphql.Marshaler { 1915 1916 return ec.___Directive(ctx, field.Selections, &res[idx1]) 1917 }() 1918 } 1919 if isLen1 { 1920 f(idx1) 1921 } else { 1922 go f(idx1) 1923 } 1924 1925 } 1926 wg.Wait() 1927 return arr1 1928 } 1929 1930 var __TypeImplementors = []string{"__Type"} 1931 1932 // nolint: gocyclo, errcheck, gas, goconst 1933 func (ec *executionContext) ___Type(ctx context.Context, sel ast.SelectionSet, obj *introspection.Type) graphql.Marshaler { 1934 fields := graphql.CollectFields(ctx, sel, __TypeImplementors) 1935 1936 out := graphql.NewOrderedMap(len(fields)) 1937 invalid := false 1938 for i, field := range fields { 1939 out.Keys[i] = field.Alias 1940 1941 switch field.Name { 1942 case "__typename": 1943 out.Values[i] = graphql.MarshalString("__Type") 1944 case "kind": 1945 out.Values[i] = ec.___Type_kind(ctx, field, obj) 1946 if out.Values[i] == graphql.Null { 1947 invalid = true 1948 } 1949 case "name": 1950 out.Values[i] = ec.___Type_name(ctx, field, obj) 1951 case "description": 1952 out.Values[i] = ec.___Type_description(ctx, field, obj) 1953 case "fields": 1954 out.Values[i] = ec.___Type_fields(ctx, field, obj) 1955 case "interfaces": 1956 out.Values[i] = ec.___Type_interfaces(ctx, field, obj) 1957 case "possibleTypes": 1958 out.Values[i] = ec.___Type_possibleTypes(ctx, field, obj) 1959 case "enumValues": 1960 out.Values[i] = ec.___Type_enumValues(ctx, field, obj) 1961 case "inputFields": 1962 out.Values[i] = ec.___Type_inputFields(ctx, field, obj) 1963 case "ofType": 1964 out.Values[i] = ec.___Type_ofType(ctx, field, obj) 1965 default: 1966 panic("unknown field " + strconv.Quote(field.Name)) 1967 } 1968 } 1969 1970 if invalid { 1971 return graphql.Null 1972 } 1973 return out 1974 } 1975 1976 // nolint: vetshadow 1977 func (ec *executionContext) ___Type_kind(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) graphql.Marshaler { 1978 ctx = ec.Tracer.StartFieldExecution(ctx, field) 1979 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 1980 rctx := &graphql.ResolverContext{ 1981 Object: "__Type", 1982 Args: nil, 1983 Field: field, 1984 } 1985 ctx = graphql.WithResolverContext(ctx, rctx) 1986 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 1987 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 1988 ctx = rctx // use context from middleware stack in children 1989 return obj.Kind(), nil 1990 }) 1991 if resTmp == nil { 1992 if !ec.HasError(rctx) { 1993 ec.Errorf(ctx, "must not be null") 1994 } 1995 return graphql.Null 1996 } 1997 res := resTmp.(string) 1998 rctx.Result = res 1999 ctx = ec.Tracer.StartFieldChildExecution(ctx) 2000 return graphql.MarshalString(res) 2001 } 2002 2003 // nolint: vetshadow 2004 func (ec *executionContext) ___Type_name(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) graphql.Marshaler { 2005 ctx = ec.Tracer.StartFieldExecution(ctx, field) 2006 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 2007 rctx := &graphql.ResolverContext{ 2008 Object: "__Type", 2009 Args: nil, 2010 Field: field, 2011 } 2012 ctx = graphql.WithResolverContext(ctx, rctx) 2013 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 2014 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 2015 ctx = rctx // use context from middleware stack in children 2016 return obj.Name(), nil 2017 }) 2018 if resTmp == nil { 2019 return graphql.Null 2020 } 2021 res := resTmp.(*string) 2022 rctx.Result = res 2023 ctx = ec.Tracer.StartFieldChildExecution(ctx) 2024 2025 if res == nil { 2026 return graphql.Null 2027 } 2028 return graphql.MarshalString(*res) 2029 } 2030 2031 // nolint: vetshadow 2032 func (ec *executionContext) ___Type_description(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) graphql.Marshaler { 2033 ctx = ec.Tracer.StartFieldExecution(ctx, field) 2034 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 2035 rctx := &graphql.ResolverContext{ 2036 Object: "__Type", 2037 Args: nil, 2038 Field: field, 2039 } 2040 ctx = graphql.WithResolverContext(ctx, rctx) 2041 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 2042 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 2043 ctx = rctx // use context from middleware stack in children 2044 return obj.Description(), nil 2045 }) 2046 if resTmp == nil { 2047 return graphql.Null 2048 } 2049 res := resTmp.(string) 2050 rctx.Result = res 2051 ctx = ec.Tracer.StartFieldChildExecution(ctx) 2052 return graphql.MarshalString(res) 2053 } 2054 2055 // nolint: vetshadow 2056 func (ec *executionContext) ___Type_fields(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) graphql.Marshaler { 2057 ctx = ec.Tracer.StartFieldExecution(ctx, field) 2058 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 2059 rawArgs := field.ArgumentMap(ec.Variables) 2060 args, err := field___Type_fields_args(rawArgs) 2061 if err != nil { 2062 ec.Error(ctx, err) 2063 return graphql.Null 2064 } 2065 rctx := &graphql.ResolverContext{ 2066 Object: "__Type", 2067 Args: args, 2068 Field: field, 2069 } 2070 ctx = graphql.WithResolverContext(ctx, rctx) 2071 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 2072 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 2073 ctx = rctx // use context from middleware stack in children 2074 return obj.Fields(args["includeDeprecated"].(bool)), nil 2075 }) 2076 if resTmp == nil { 2077 return graphql.Null 2078 } 2079 res := resTmp.([]introspection.Field) 2080 rctx.Result = res 2081 ctx = ec.Tracer.StartFieldChildExecution(ctx) 2082 2083 arr1 := make(graphql.Array, len(res)) 2084 var wg sync.WaitGroup 2085 2086 isLen1 := len(res) == 1 2087 if !isLen1 { 2088 wg.Add(len(res)) 2089 } 2090 2091 for idx1 := range res { 2092 idx1 := idx1 2093 rctx := &graphql.ResolverContext{ 2094 Index: &idx1, 2095 Result: &res[idx1], 2096 } 2097 ctx := graphql.WithResolverContext(ctx, rctx) 2098 f := func(idx1 int) { 2099 if !isLen1 { 2100 defer wg.Done() 2101 } 2102 arr1[idx1] = func() graphql.Marshaler { 2103 2104 return ec.___Field(ctx, field.Selections, &res[idx1]) 2105 }() 2106 } 2107 if isLen1 { 2108 f(idx1) 2109 } else { 2110 go f(idx1) 2111 } 2112 2113 } 2114 wg.Wait() 2115 return arr1 2116 } 2117 2118 // nolint: vetshadow 2119 func (ec *executionContext) ___Type_interfaces(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) graphql.Marshaler { 2120 ctx = ec.Tracer.StartFieldExecution(ctx, field) 2121 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 2122 rctx := &graphql.ResolverContext{ 2123 Object: "__Type", 2124 Args: nil, 2125 Field: field, 2126 } 2127 ctx = graphql.WithResolverContext(ctx, rctx) 2128 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 2129 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 2130 ctx = rctx // use context from middleware stack in children 2131 return obj.Interfaces(), nil 2132 }) 2133 if resTmp == nil { 2134 return graphql.Null 2135 } 2136 res := resTmp.([]introspection.Type) 2137 rctx.Result = res 2138 ctx = ec.Tracer.StartFieldChildExecution(ctx) 2139 2140 arr1 := make(graphql.Array, len(res)) 2141 var wg sync.WaitGroup 2142 2143 isLen1 := len(res) == 1 2144 if !isLen1 { 2145 wg.Add(len(res)) 2146 } 2147 2148 for idx1 := range res { 2149 idx1 := idx1 2150 rctx := &graphql.ResolverContext{ 2151 Index: &idx1, 2152 Result: &res[idx1], 2153 } 2154 ctx := graphql.WithResolverContext(ctx, rctx) 2155 f := func(idx1 int) { 2156 if !isLen1 { 2157 defer wg.Done() 2158 } 2159 arr1[idx1] = func() graphql.Marshaler { 2160 2161 return ec.___Type(ctx, field.Selections, &res[idx1]) 2162 }() 2163 } 2164 if isLen1 { 2165 f(idx1) 2166 } else { 2167 go f(idx1) 2168 } 2169 2170 } 2171 wg.Wait() 2172 return arr1 2173 } 2174 2175 // nolint: vetshadow 2176 func (ec *executionContext) ___Type_possibleTypes(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) graphql.Marshaler { 2177 ctx = ec.Tracer.StartFieldExecution(ctx, field) 2178 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 2179 rctx := &graphql.ResolverContext{ 2180 Object: "__Type", 2181 Args: nil, 2182 Field: field, 2183 } 2184 ctx = graphql.WithResolverContext(ctx, rctx) 2185 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 2186 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 2187 ctx = rctx // use context from middleware stack in children 2188 return obj.PossibleTypes(), nil 2189 }) 2190 if resTmp == nil { 2191 return graphql.Null 2192 } 2193 res := resTmp.([]introspection.Type) 2194 rctx.Result = res 2195 ctx = ec.Tracer.StartFieldChildExecution(ctx) 2196 2197 arr1 := make(graphql.Array, len(res)) 2198 var wg sync.WaitGroup 2199 2200 isLen1 := len(res) == 1 2201 if !isLen1 { 2202 wg.Add(len(res)) 2203 } 2204 2205 for idx1 := range res { 2206 idx1 := idx1 2207 rctx := &graphql.ResolverContext{ 2208 Index: &idx1, 2209 Result: &res[idx1], 2210 } 2211 ctx := graphql.WithResolverContext(ctx, rctx) 2212 f := func(idx1 int) { 2213 if !isLen1 { 2214 defer wg.Done() 2215 } 2216 arr1[idx1] = func() graphql.Marshaler { 2217 2218 return ec.___Type(ctx, field.Selections, &res[idx1]) 2219 }() 2220 } 2221 if isLen1 { 2222 f(idx1) 2223 } else { 2224 go f(idx1) 2225 } 2226 2227 } 2228 wg.Wait() 2229 return arr1 2230 } 2231 2232 // nolint: vetshadow 2233 func (ec *executionContext) ___Type_enumValues(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) graphql.Marshaler { 2234 ctx = ec.Tracer.StartFieldExecution(ctx, field) 2235 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 2236 rawArgs := field.ArgumentMap(ec.Variables) 2237 args, err := field___Type_enumValues_args(rawArgs) 2238 if err != nil { 2239 ec.Error(ctx, err) 2240 return graphql.Null 2241 } 2242 rctx := &graphql.ResolverContext{ 2243 Object: "__Type", 2244 Args: args, 2245 Field: field, 2246 } 2247 ctx = graphql.WithResolverContext(ctx, rctx) 2248 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 2249 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 2250 ctx = rctx // use context from middleware stack in children 2251 return obj.EnumValues(args["includeDeprecated"].(bool)), nil 2252 }) 2253 if resTmp == nil { 2254 return graphql.Null 2255 } 2256 res := resTmp.([]introspection.EnumValue) 2257 rctx.Result = res 2258 ctx = ec.Tracer.StartFieldChildExecution(ctx) 2259 2260 arr1 := make(graphql.Array, len(res)) 2261 var wg sync.WaitGroup 2262 2263 isLen1 := len(res) == 1 2264 if !isLen1 { 2265 wg.Add(len(res)) 2266 } 2267 2268 for idx1 := range res { 2269 idx1 := idx1 2270 rctx := &graphql.ResolverContext{ 2271 Index: &idx1, 2272 Result: &res[idx1], 2273 } 2274 ctx := graphql.WithResolverContext(ctx, rctx) 2275 f := func(idx1 int) { 2276 if !isLen1 { 2277 defer wg.Done() 2278 } 2279 arr1[idx1] = func() graphql.Marshaler { 2280 2281 return ec.___EnumValue(ctx, field.Selections, &res[idx1]) 2282 }() 2283 } 2284 if isLen1 { 2285 f(idx1) 2286 } else { 2287 go f(idx1) 2288 } 2289 2290 } 2291 wg.Wait() 2292 return arr1 2293 } 2294 2295 // nolint: vetshadow 2296 func (ec *executionContext) ___Type_inputFields(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) graphql.Marshaler { 2297 ctx = ec.Tracer.StartFieldExecution(ctx, field) 2298 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 2299 rctx := &graphql.ResolverContext{ 2300 Object: "__Type", 2301 Args: nil, 2302 Field: field, 2303 } 2304 ctx = graphql.WithResolverContext(ctx, rctx) 2305 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 2306 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 2307 ctx = rctx // use context from middleware stack in children 2308 return obj.InputFields(), nil 2309 }) 2310 if resTmp == nil { 2311 return graphql.Null 2312 } 2313 res := resTmp.([]introspection.InputValue) 2314 rctx.Result = res 2315 ctx = ec.Tracer.StartFieldChildExecution(ctx) 2316 2317 arr1 := make(graphql.Array, len(res)) 2318 var wg sync.WaitGroup 2319 2320 isLen1 := len(res) == 1 2321 if !isLen1 { 2322 wg.Add(len(res)) 2323 } 2324 2325 for idx1 := range res { 2326 idx1 := idx1 2327 rctx := &graphql.ResolverContext{ 2328 Index: &idx1, 2329 Result: &res[idx1], 2330 } 2331 ctx := graphql.WithResolverContext(ctx, rctx) 2332 f := func(idx1 int) { 2333 if !isLen1 { 2334 defer wg.Done() 2335 } 2336 arr1[idx1] = func() graphql.Marshaler { 2337 2338 return ec.___InputValue(ctx, field.Selections, &res[idx1]) 2339 }() 2340 } 2341 if isLen1 { 2342 f(idx1) 2343 } else { 2344 go f(idx1) 2345 } 2346 2347 } 2348 wg.Wait() 2349 return arr1 2350 } 2351 2352 // nolint: vetshadow 2353 func (ec *executionContext) ___Type_ofType(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) graphql.Marshaler { 2354 ctx = ec.Tracer.StartFieldExecution(ctx, field) 2355 defer func() { ec.Tracer.EndFieldExecution(ctx) }() 2356 rctx := &graphql.ResolverContext{ 2357 Object: "__Type", 2358 Args: nil, 2359 Field: field, 2360 } 2361 ctx = graphql.WithResolverContext(ctx, rctx) 2362 ctx = ec.Tracer.StartFieldResolverExecution(ctx, rctx) 2363 resTmp := ec.FieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) { 2364 ctx = rctx // use context from middleware stack in children 2365 return obj.OfType(), nil 2366 }) 2367 if resTmp == nil { 2368 return graphql.Null 2369 } 2370 res := resTmp.(*introspection.Type) 2371 rctx.Result = res 2372 ctx = ec.Tracer.StartFieldChildExecution(ctx) 2373 2374 if res == nil { 2375 return graphql.Null 2376 } 2377 2378 return ec.___Type(ctx, field.Selections, res) 2379 } 2380 2381 func UnmarshalDateFilter(v interface{}) (models.DateFilter, error) { 2382 var it models.DateFilter 2383 var asMap = v.(map[string]interface{}) 2384 2385 if _, present := asMap["timezone"]; !present { 2386 asMap["timezone"] = "UTC" 2387 } 2388 if _, present := asMap["op"]; !present { 2389 asMap["op"] = "EQ" 2390 } 2391 2392 for k, v := range asMap { 2393 switch k { 2394 case "value": 2395 var err error 2396 it.Value, err = graphql.UnmarshalString(v) 2397 if err != nil { 2398 return it, err 2399 } 2400 case "timezone": 2401 var err error 2402 var ptr1 string 2403 if v != nil { 2404 ptr1, err = graphql.UnmarshalString(v) 2405 it.Timezone = &ptr1 2406 } 2407 2408 if err != nil { 2409 return it, err 2410 } 2411 case "op": 2412 var err error 2413 var ptr1 models.DateFilterOp 2414 if v != nil { 2415 err = (&ptr1).UnmarshalGQL(v) 2416 it.Op = &ptr1 2417 } 2418 2419 if err != nil { 2420 return it, err 2421 } 2422 } 2423 } 2424 2425 return it, nil 2426 } 2427 2428 func (ec *executionContext) FieldMiddleware(ctx context.Context, obj interface{}, next graphql.Resolver) (ret interface{}) { 2429 defer func() { 2430 if r := recover(); r != nil { 2431 ec.Error(ctx, ec.Recover(ctx, r)) 2432 ret = nil 2433 } 2434 }() 2435 rctx := graphql.GetResolverContext(ctx) 2436 for _, d := range rctx.Field.Definition.Directives { 2437 switch d.Name { 2438 case "magic": 2439 if ec.directives.Magic != nil { 2440 rawArgs := d.ArgumentMap(ec.Variables) 2441 args, err := dir_magic_args(rawArgs) 2442 if err != nil { 2443 ec.Error(ctx, err) 2444 return nil 2445 } 2446 n := next 2447 next = func(ctx context.Context) (interface{}, error) { 2448 return ec.directives.Magic(ctx, obj, n, args["kind"].(*int)) 2449 } 2450 } 2451 } 2452 } 2453 res, err := ec.ResolverMiddleware(ctx, next) 2454 if err != nil { 2455 ec.Error(ctx, err) 2456 return nil 2457 } 2458 return res 2459 } 2460 2461 func (ec *executionContext) introspectSchema() (*introspection.Schema, error) { 2462 if ec.DisableIntrospection { 2463 return nil, errors.New("introspection disabled") 2464 } 2465 return introspection.WrapSchema(parsedSchema), nil 2466 } 2467 2468 func (ec *executionContext) introspectType(name string) (*introspection.Type, error) { 2469 if ec.DisableIntrospection { 2470 return nil, errors.New("introspection disabled") 2471 } 2472 return introspection.WrapTypeFromDef(parsedSchema, parsedSchema.Types[name]), nil 2473 } 2474 2475 var parsedSchema = gqlparser.MustLoadSchema( 2476 &ast.Source{Name: "schema.graphql", Input: `"This directive does magical things" 2477 directive @magic(kind: Int) on FIELD_DEFINITION 2478 2479 type Element { 2480 child: Element! 2481 error: Boolean! 2482 mismatched: [Boolean!] 2483 } 2484 2485 enum DATE_FILTER_OP { 2486 # multi 2487 # line 2488 # comment 2489 EQ 2490 NEQ 2491 GT 2492 GTE 2493 LT 2494 LTE 2495 } 2496 2497 input DateFilter { 2498 value: String! 2499 timezone: String = "UTC" 2500 op: DATE_FILTER_OP = EQ 2501 } 2502 2503 type Viewer { 2504 user: User 2505 } 2506 2507 type Query { 2508 path: [Element] 2509 date(filter: DateFilter!): Boolean! 2510 viewer: Viewer 2511 jsonEncoding: String! 2512 error(type: ErrorType = NORMAL): Boolean! 2513 } 2514 2515 enum ErrorType { 2516 CUSTOM 2517 NORMAL 2518 } 2519 2520 # this is a comment with a ` + "`" + `backtick` + "`" + ` 2521 `}, 2522 &ast.Source{Name: "user.graphql", Input: `type User { 2523 name: String! 2524 likes: [String!]! 2525 } 2526 `}, 2527 )