github.com/apipluspower/gqlgen@v0.15.2/codegen/testserver/followschema/schema.generated.go (about)

     1  // Code generated by github.com/99designs/gqlgen, DO NOT EDIT.
     2  
     3  package followschema
     4  
     5  import (
     6  	"context"
     7  	"errors"
     8  	"fmt"
     9  	"io"
    10  	"strconv"
    11  	"sync"
    12  	"sync/atomic"
    13  	"time"
    14  
    15  	introspection1 "github.com/apipluspower/gqlgen/codegen/testserver/followschema/introspection"
    16  	invalid_packagename "github.com/apipluspower/gqlgen/codegen/testserver/followschema/invalid-packagename"
    17  	"github.com/apipluspower/gqlgen/codegen/testserver/followschema/otherpkg"
    18  	"github.com/apipluspower/gqlgen/graphql"
    19  	"github.com/apipluspower/gqlgen/graphql/introspection"
    20  	"github.com/vektah/gqlparser/v2/ast"
    21  )
    22  
    23  // region    ************************** generated!.gotpl **************************
    24  
    25  type ForcedResolverResolver interface {
    26  	Field(ctx context.Context, obj *ForcedResolver) (*Circle, error)
    27  }
    28  type ModelMethodsResolver interface {
    29  	ResolverField(ctx context.Context, obj *ModelMethods) (bool, error)
    30  }
    31  type QueryResolver interface {
    32  	InvalidIdentifier(ctx context.Context) (*invalid_packagename.InvalidIdentifier, error)
    33  	Collision(ctx context.Context) (*introspection1.It, error)
    34  	MapInput(ctx context.Context, input map[string]interface{}) (*bool, error)
    35  	Recursive(ctx context.Context, input *RecursiveInputSlice) (*bool, error)
    36  	NestedInputs(ctx context.Context, input [][]*OuterInput) (*bool, error)
    37  	NestedOutputs(ctx context.Context) ([][]*OuterObject, error)
    38  	ModelMethods(ctx context.Context) (*ModelMethods, error)
    39  	User(ctx context.Context, id int) (*User, error)
    40  	NullableArg(ctx context.Context, arg *int) (*string, error)
    41  	InputSlice(ctx context.Context, arg []string) (bool, error)
    42  	InputNullableSlice(ctx context.Context, arg []string) (bool, error)
    43  	ShapeUnion(ctx context.Context) (ShapeUnion, error)
    44  	Autobind(ctx context.Context) (*Autobind, error)
    45  	DeprecatedField(ctx context.Context) (string, error)
    46  	Overlapping(ctx context.Context) (*OverlappingFields, error)
    47  	DefaultParameters(ctx context.Context, falsyBoolean *bool, truthyBoolean *bool) (*DefaultParametersMirror, error)
    48  	DirectiveArg(ctx context.Context, arg string) (*string, error)
    49  	DirectiveNullableArg(ctx context.Context, arg *int, arg2 *int, arg3 *string) (*string, error)
    50  	DirectiveInputNullable(ctx context.Context, arg *InputDirectives) (*string, error)
    51  	DirectiveInput(ctx context.Context, arg InputDirectives) (*string, error)
    52  	DirectiveInputType(ctx context.Context, arg InnerInput) (*string, error)
    53  	DirectiveObject(ctx context.Context) (*ObjectDirectives, error)
    54  	DirectiveObjectWithCustomGoModel(ctx context.Context) (*ObjectDirectivesWithCustomGoModel, error)
    55  	DirectiveFieldDef(ctx context.Context, ret string) (string, error)
    56  	DirectiveField(ctx context.Context) (*string, error)
    57  	DirectiveDouble(ctx context.Context) (*string, error)
    58  	DirectiveUnimplemented(ctx context.Context) (*string, error)
    59  	EmbeddedCase1(ctx context.Context) (*EmbeddedCase1, error)
    60  	EmbeddedCase2(ctx context.Context) (*EmbeddedCase2, error)
    61  	EmbeddedCase3(ctx context.Context) (*EmbeddedCase3, error)
    62  	EnumInInput(ctx context.Context, input *InputWithEnumValue) (EnumTest, error)
    63  	Shapes(ctx context.Context) ([]Shape, error)
    64  	NoShape(ctx context.Context) (Shape, error)
    65  	Node(ctx context.Context) (Node, error)
    66  	NoShapeTypedNil(ctx context.Context) (Shape, error)
    67  	Animal(ctx context.Context) (Animal, error)
    68  	NotAnInterface(ctx context.Context) (BackedByInterface, error)
    69  	Issue896a(ctx context.Context) ([]*CheckIssue896, error)
    70  	MapStringInterface(ctx context.Context, in map[string]interface{}) (map[string]interface{}, error)
    71  	MapNestedStringInterface(ctx context.Context, in *NestedMapInput) (map[string]interface{}, error)
    72  	ErrorBubble(ctx context.Context) (*Error, error)
    73  	ErrorBubbleList(ctx context.Context) ([]*Error, error)
    74  	ErrorList(ctx context.Context) ([]*Error, error)
    75  	Errors(ctx context.Context) (*Errors, error)
    76  	Valid(ctx context.Context) (string, error)
    77  	Panics(ctx context.Context) (*Panics, error)
    78  	PrimitiveObject(ctx context.Context) ([]Primitive, error)
    79  	PrimitiveStringObject(ctx context.Context) ([]PrimitiveString, error)
    80  	PtrToSliceContainer(ctx context.Context) (*PtrToSliceContainer, error)
    81  	Infinity(ctx context.Context) (float64, error)
    82  	StringFromContextInterface(ctx context.Context) (*StringFromContextInterface, error)
    83  	StringFromContextFunction(ctx context.Context) (string, error)
    84  	DefaultScalar(ctx context.Context, arg string) (string, error)
    85  	Slices(ctx context.Context) (*Slices, error)
    86  	ScalarSlice(ctx context.Context) ([]byte, error)
    87  	Fallback(ctx context.Context, arg FallbackToStringEncoding) (FallbackToStringEncoding, error)
    88  	OptionalUnion(ctx context.Context) (TestUnion, error)
    89  	VOkCaseValue(ctx context.Context) (*VOkCaseValue, error)
    90  	VOkCaseNil(ctx context.Context) (*VOkCaseNil, error)
    91  	ValidType(ctx context.Context) (*ValidType, error)
    92  	WrappedStruct(ctx context.Context) (*WrappedStruct, error)
    93  	WrappedScalar(ctx context.Context) (otherpkg.Scalar, error)
    94  	WrappedMap(ctx context.Context) (WrappedMap, error)
    95  	WrappedSlice(ctx context.Context) (WrappedSlice, error)
    96  }
    97  type SubscriptionResolver interface {
    98  	Updated(ctx context.Context) (<-chan string, error)
    99  	InitPayload(ctx context.Context) (<-chan string, error)
   100  	DirectiveArg(ctx context.Context, arg string) (<-chan *string, error)
   101  	DirectiveNullableArg(ctx context.Context, arg *int, arg2 *int, arg3 *string) (<-chan *string, error)
   102  	DirectiveDouble(ctx context.Context) (<-chan *string, error)
   103  	DirectiveUnimplemented(ctx context.Context) (<-chan *string, error)
   104  	Issue896b(ctx context.Context) (<-chan []*CheckIssue896, error)
   105  }
   106  type UserResolver interface {
   107  	Friends(ctx context.Context, obj *User) ([]*User, error)
   108  }
   109  
   110  // endregion ************************** generated!.gotpl **************************
   111  
   112  // region    ***************************** args.gotpl *****************************
   113  
   114  func (ec *executionContext) field_Query___type_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   115  	var err error
   116  	args := map[string]interface{}{}
   117  	var arg0 string
   118  	if tmp, ok := rawArgs["name"]; ok {
   119  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("name"))
   120  		arg0, err = ec.unmarshalNString2string(ctx, tmp)
   121  		if err != nil {
   122  			return nil, err
   123  		}
   124  	}
   125  	args["name"] = arg0
   126  	return args, nil
   127  }
   128  
   129  func (ec *executionContext) field_Query_defaultParameters_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   130  	var err error
   131  	args := map[string]interface{}{}
   132  	var arg0 *bool
   133  	if tmp, ok := rawArgs["falsyBoolean"]; ok {
   134  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("falsyBoolean"))
   135  		arg0, err = ec.unmarshalOBoolean2ᚖbool(ctx, tmp)
   136  		if err != nil {
   137  			return nil, err
   138  		}
   139  	}
   140  	args["falsyBoolean"] = arg0
   141  	var arg1 *bool
   142  	if tmp, ok := rawArgs["truthyBoolean"]; ok {
   143  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("truthyBoolean"))
   144  		arg1, err = ec.unmarshalOBoolean2ᚖbool(ctx, tmp)
   145  		if err != nil {
   146  			return nil, err
   147  		}
   148  	}
   149  	args["truthyBoolean"] = arg1
   150  	return args, nil
   151  }
   152  
   153  func (ec *executionContext) field_Query_defaultScalar_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   154  	var err error
   155  	args := map[string]interface{}{}
   156  	var arg0 string
   157  	if tmp, ok := rawArgs["arg"]; ok {
   158  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg"))
   159  		arg0, err = ec.unmarshalNDefaultScalarImplementation2string(ctx, tmp)
   160  		if err != nil {
   161  			return nil, err
   162  		}
   163  	}
   164  	args["arg"] = arg0
   165  	return args, nil
   166  }
   167  
   168  func (ec *executionContext) field_Query_directiveArg_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   169  	var err error
   170  	args := map[string]interface{}{}
   171  	var arg0 string
   172  	if tmp, ok := rawArgs["arg"]; ok {
   173  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg"))
   174  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalNString2string(ctx, tmp) }
   175  		directive1 := func(ctx context.Context) (interface{}, error) {
   176  			min, err := ec.unmarshalNInt2int(ctx, 1)
   177  			if err != nil {
   178  				return nil, err
   179  			}
   180  			max, err := ec.unmarshalOInt2ᚖint(ctx, 255)
   181  			if err != nil {
   182  				return nil, err
   183  			}
   184  			message, err := ec.unmarshalOString2ᚖstring(ctx, "invalid length")
   185  			if err != nil {
   186  				return nil, err
   187  			}
   188  			if ec.directives.Length == nil {
   189  				return nil, errors.New("directive length is not implemented")
   190  			}
   191  			return ec.directives.Length(ctx, rawArgs, directive0, min, max, message)
   192  		}
   193  
   194  		tmp, err = directive1(ctx)
   195  		if err != nil {
   196  			return nil, graphql.ErrorOnPath(ctx, err)
   197  		}
   198  		if data, ok := tmp.(string); ok {
   199  			arg0 = data
   200  		} else {
   201  			return nil, graphql.ErrorOnPath(ctx, fmt.Errorf(`unexpected type %T from directive, should be string`, tmp))
   202  		}
   203  	}
   204  	args["arg"] = arg0
   205  	return args, nil
   206  }
   207  
   208  func (ec *executionContext) field_Query_directiveFieldDef_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   209  	var err error
   210  	args := map[string]interface{}{}
   211  	var arg0 string
   212  	if tmp, ok := rawArgs["ret"]; ok {
   213  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("ret"))
   214  		arg0, err = ec.unmarshalNString2string(ctx, tmp)
   215  		if err != nil {
   216  			return nil, err
   217  		}
   218  	}
   219  	args["ret"] = arg0
   220  	return args, nil
   221  }
   222  
   223  func (ec *executionContext) field_Query_directiveInputNullable_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   224  	var err error
   225  	args := map[string]interface{}{}
   226  	var arg0 *InputDirectives
   227  	if tmp, ok := rawArgs["arg"]; ok {
   228  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg"))
   229  		arg0, err = ec.unmarshalOInputDirectives2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐInputDirectives(ctx, tmp)
   230  		if err != nil {
   231  			return nil, err
   232  		}
   233  	}
   234  	args["arg"] = arg0
   235  	return args, nil
   236  }
   237  
   238  func (ec *executionContext) field_Query_directiveInputType_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   239  	var err error
   240  	args := map[string]interface{}{}
   241  	var arg0 InnerInput
   242  	if tmp, ok := rawArgs["arg"]; ok {
   243  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg"))
   244  		directive0 := func(ctx context.Context) (interface{}, error) {
   245  			return ec.unmarshalNInnerInput2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐInnerInput(ctx, tmp)
   246  		}
   247  		directive1 := func(ctx context.Context) (interface{}, error) {
   248  			if ec.directives.Custom == nil {
   249  				return nil, errors.New("directive custom is not implemented")
   250  			}
   251  			return ec.directives.Custom(ctx, rawArgs, directive0)
   252  		}
   253  
   254  		tmp, err = directive1(ctx)
   255  		if err != nil {
   256  			return nil, graphql.ErrorOnPath(ctx, err)
   257  		}
   258  		if data, ok := tmp.(InnerInput); ok {
   259  			arg0 = data
   260  		} else {
   261  			return nil, graphql.ErrorOnPath(ctx, fmt.Errorf(`unexpected type %T from directive, should be github.com/99designs/gqlgen/codegen/testserver/followschema.InnerInput`, tmp))
   262  		}
   263  	}
   264  	args["arg"] = arg0
   265  	return args, nil
   266  }
   267  
   268  func (ec *executionContext) field_Query_directiveInput_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   269  	var err error
   270  	args := map[string]interface{}{}
   271  	var arg0 InputDirectives
   272  	if tmp, ok := rawArgs["arg"]; ok {
   273  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg"))
   274  		arg0, err = ec.unmarshalNInputDirectives2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐInputDirectives(ctx, tmp)
   275  		if err != nil {
   276  			return nil, err
   277  		}
   278  	}
   279  	args["arg"] = arg0
   280  	return args, nil
   281  }
   282  
   283  func (ec *executionContext) field_Query_directiveNullableArg_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   284  	var err error
   285  	args := map[string]interface{}{}
   286  	var arg0 *int
   287  	if tmp, ok := rawArgs["arg"]; ok {
   288  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg"))
   289  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOInt2ᚖint(ctx, tmp) }
   290  		directive1 := func(ctx context.Context) (interface{}, error) {
   291  			min, err := ec.unmarshalOInt2ᚖint(ctx, 0)
   292  			if err != nil {
   293  				return nil, err
   294  			}
   295  			if ec.directives.Range == nil {
   296  				return nil, errors.New("directive range is not implemented")
   297  			}
   298  			return ec.directives.Range(ctx, rawArgs, directive0, min, nil)
   299  		}
   300  
   301  		tmp, err = directive1(ctx)
   302  		if err != nil {
   303  			return nil, graphql.ErrorOnPath(ctx, err)
   304  		}
   305  		if data, ok := tmp.(*int); ok {
   306  			arg0 = data
   307  		} else if tmp == nil {
   308  			arg0 = nil
   309  		} else {
   310  			return nil, graphql.ErrorOnPath(ctx, fmt.Errorf(`unexpected type %T from directive, should be *int`, tmp))
   311  		}
   312  	}
   313  	args["arg"] = arg0
   314  	var arg1 *int
   315  	if tmp, ok := rawArgs["arg2"]; ok {
   316  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg2"))
   317  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOInt2ᚖint(ctx, tmp) }
   318  		directive1 := func(ctx context.Context) (interface{}, error) {
   319  			min, err := ec.unmarshalOInt2ᚖint(ctx, 0)
   320  			if err != nil {
   321  				return nil, err
   322  			}
   323  			if ec.directives.Range == nil {
   324  				return nil, errors.New("directive range is not implemented")
   325  			}
   326  			return ec.directives.Range(ctx, rawArgs, directive0, min, nil)
   327  		}
   328  
   329  		tmp, err = directive1(ctx)
   330  		if err != nil {
   331  			return nil, graphql.ErrorOnPath(ctx, err)
   332  		}
   333  		if data, ok := tmp.(*int); ok {
   334  			arg1 = data
   335  		} else if tmp == nil {
   336  			arg1 = nil
   337  		} else {
   338  			return nil, graphql.ErrorOnPath(ctx, fmt.Errorf(`unexpected type %T from directive, should be *int`, tmp))
   339  		}
   340  	}
   341  	args["arg2"] = arg1
   342  	var arg2 *string
   343  	if tmp, ok := rawArgs["arg3"]; ok {
   344  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg3"))
   345  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOString2ᚖstring(ctx, tmp) }
   346  		directive1 := func(ctx context.Context) (interface{}, error) {
   347  			if ec.directives.ToNull == nil {
   348  				return nil, errors.New("directive toNull is not implemented")
   349  			}
   350  			return ec.directives.ToNull(ctx, rawArgs, directive0)
   351  		}
   352  
   353  		tmp, err = directive1(ctx)
   354  		if err != nil {
   355  			return nil, graphql.ErrorOnPath(ctx, err)
   356  		}
   357  		if data, ok := tmp.(*string); ok {
   358  			arg2 = data
   359  		} else if tmp == nil {
   360  			arg2 = nil
   361  		} else {
   362  			return nil, graphql.ErrorOnPath(ctx, fmt.Errorf(`unexpected type %T from directive, should be *string`, tmp))
   363  		}
   364  	}
   365  	args["arg3"] = arg2
   366  	return args, nil
   367  }
   368  
   369  func (ec *executionContext) field_Query_enumInInput_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   370  	var err error
   371  	args := map[string]interface{}{}
   372  	var arg0 *InputWithEnumValue
   373  	if tmp, ok := rawArgs["input"]; ok {
   374  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("input"))
   375  		arg0, err = ec.unmarshalOInputWithEnumValue2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐInputWithEnumValue(ctx, tmp)
   376  		if err != nil {
   377  			return nil, err
   378  		}
   379  	}
   380  	args["input"] = arg0
   381  	return args, nil
   382  }
   383  
   384  func (ec *executionContext) field_Query_fallback_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   385  	var err error
   386  	args := map[string]interface{}{}
   387  	var arg0 FallbackToStringEncoding
   388  	if tmp, ok := rawArgs["arg"]; ok {
   389  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg"))
   390  		arg0, err = ec.unmarshalNFallbackToStringEncoding2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐFallbackToStringEncoding(ctx, tmp)
   391  		if err != nil {
   392  			return nil, err
   393  		}
   394  	}
   395  	args["arg"] = arg0
   396  	return args, nil
   397  }
   398  
   399  func (ec *executionContext) field_Query_inputNullableSlice_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   400  	var err error
   401  	args := map[string]interface{}{}
   402  	var arg0 []string
   403  	if tmp, ok := rawArgs["arg"]; ok {
   404  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg"))
   405  		arg0, err = ec.unmarshalOString2ᚕstringᚄ(ctx, tmp)
   406  		if err != nil {
   407  			return nil, err
   408  		}
   409  	}
   410  	args["arg"] = arg0
   411  	return args, nil
   412  }
   413  
   414  func (ec *executionContext) field_Query_inputSlice_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   415  	var err error
   416  	args := map[string]interface{}{}
   417  	var arg0 []string
   418  	if tmp, ok := rawArgs["arg"]; ok {
   419  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg"))
   420  		arg0, err = ec.unmarshalNString2ᚕstringᚄ(ctx, tmp)
   421  		if err != nil {
   422  			return nil, err
   423  		}
   424  	}
   425  	args["arg"] = arg0
   426  	return args, nil
   427  }
   428  
   429  func (ec *executionContext) field_Query_mapInput_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   430  	var err error
   431  	args := map[string]interface{}{}
   432  	var arg0 map[string]interface{}
   433  	if tmp, ok := rawArgs["input"]; ok {
   434  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("input"))
   435  		arg0, err = ec.unmarshalOChanges2map(ctx, tmp)
   436  		if err != nil {
   437  			return nil, err
   438  		}
   439  	}
   440  	args["input"] = arg0
   441  	return args, nil
   442  }
   443  
   444  func (ec *executionContext) field_Query_mapNestedStringInterface_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   445  	var err error
   446  	args := map[string]interface{}{}
   447  	var arg0 *NestedMapInput
   448  	if tmp, ok := rawArgs["in"]; ok {
   449  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("in"))
   450  		arg0, err = ec.unmarshalONestedMapInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐNestedMapInput(ctx, tmp)
   451  		if err != nil {
   452  			return nil, err
   453  		}
   454  	}
   455  	args["in"] = arg0
   456  	return args, nil
   457  }
   458  
   459  func (ec *executionContext) field_Query_mapStringInterface_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   460  	var err error
   461  	args := map[string]interface{}{}
   462  	var arg0 map[string]interface{}
   463  	if tmp, ok := rawArgs["in"]; ok {
   464  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("in"))
   465  		arg0, err = ec.unmarshalOMapStringInterfaceInput2map(ctx, tmp)
   466  		if err != nil {
   467  			return nil, err
   468  		}
   469  	}
   470  	args["in"] = arg0
   471  	return args, nil
   472  }
   473  
   474  func (ec *executionContext) field_Query_nestedInputs_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   475  	var err error
   476  	args := map[string]interface{}{}
   477  	var arg0 [][]*OuterInput
   478  	if tmp, ok := rawArgs["input"]; ok {
   479  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("input"))
   480  		arg0, err = ec.unmarshalOOuterInput2ᚕᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOuterInput(ctx, tmp)
   481  		if err != nil {
   482  			return nil, err
   483  		}
   484  	}
   485  	args["input"] = arg0
   486  	return args, nil
   487  }
   488  
   489  func (ec *executionContext) field_Query_nullableArg_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   490  	var err error
   491  	args := map[string]interface{}{}
   492  	var arg0 *int
   493  	if tmp, ok := rawArgs["arg"]; ok {
   494  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg"))
   495  		arg0, err = ec.unmarshalOInt2ᚖint(ctx, tmp)
   496  		if err != nil {
   497  			return nil, err
   498  		}
   499  	}
   500  	args["arg"] = arg0
   501  	return args, nil
   502  }
   503  
   504  func (ec *executionContext) field_Query_recursive_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   505  	var err error
   506  	args := map[string]interface{}{}
   507  	var arg0 *RecursiveInputSlice
   508  	if tmp, ok := rawArgs["input"]; ok {
   509  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("input"))
   510  		arg0, err = ec.unmarshalORecursiveInputSlice2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐRecursiveInputSlice(ctx, tmp)
   511  		if err != nil {
   512  			return nil, err
   513  		}
   514  	}
   515  	args["input"] = arg0
   516  	return args, nil
   517  }
   518  
   519  func (ec *executionContext) field_Query_user_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   520  	var err error
   521  	args := map[string]interface{}{}
   522  	var arg0 int
   523  	if tmp, ok := rawArgs["id"]; ok {
   524  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("id"))
   525  		arg0, err = ec.unmarshalNInt2int(ctx, tmp)
   526  		if err != nil {
   527  			return nil, err
   528  		}
   529  	}
   530  	args["id"] = arg0
   531  	return args, nil
   532  }
   533  
   534  func (ec *executionContext) field_Subscription_directiveArg_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   535  	var err error
   536  	args := map[string]interface{}{}
   537  	var arg0 string
   538  	if tmp, ok := rawArgs["arg"]; ok {
   539  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg"))
   540  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalNString2string(ctx, tmp) }
   541  		directive1 := func(ctx context.Context) (interface{}, error) {
   542  			min, err := ec.unmarshalNInt2int(ctx, 1)
   543  			if err != nil {
   544  				return nil, err
   545  			}
   546  			max, err := ec.unmarshalOInt2ᚖint(ctx, 255)
   547  			if err != nil {
   548  				return nil, err
   549  			}
   550  			message, err := ec.unmarshalOString2ᚖstring(ctx, "invalid length")
   551  			if err != nil {
   552  				return nil, err
   553  			}
   554  			if ec.directives.Length == nil {
   555  				return nil, errors.New("directive length is not implemented")
   556  			}
   557  			return ec.directives.Length(ctx, rawArgs, directive0, min, max, message)
   558  		}
   559  
   560  		tmp, err = directive1(ctx)
   561  		if err != nil {
   562  			return nil, graphql.ErrorOnPath(ctx, err)
   563  		}
   564  		if data, ok := tmp.(string); ok {
   565  			arg0 = data
   566  		} else {
   567  			return nil, graphql.ErrorOnPath(ctx, fmt.Errorf(`unexpected type %T from directive, should be string`, tmp))
   568  		}
   569  	}
   570  	args["arg"] = arg0
   571  	return args, nil
   572  }
   573  
   574  func (ec *executionContext) field_Subscription_directiveNullableArg_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
   575  	var err error
   576  	args := map[string]interface{}{}
   577  	var arg0 *int
   578  	if tmp, ok := rawArgs["arg"]; ok {
   579  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg"))
   580  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOInt2ᚖint(ctx, tmp) }
   581  		directive1 := func(ctx context.Context) (interface{}, error) {
   582  			min, err := ec.unmarshalOInt2ᚖint(ctx, 0)
   583  			if err != nil {
   584  				return nil, err
   585  			}
   586  			if ec.directives.Range == nil {
   587  				return nil, errors.New("directive range is not implemented")
   588  			}
   589  			return ec.directives.Range(ctx, rawArgs, directive0, min, nil)
   590  		}
   591  
   592  		tmp, err = directive1(ctx)
   593  		if err != nil {
   594  			return nil, graphql.ErrorOnPath(ctx, err)
   595  		}
   596  		if data, ok := tmp.(*int); ok {
   597  			arg0 = data
   598  		} else if tmp == nil {
   599  			arg0 = nil
   600  		} else {
   601  			return nil, graphql.ErrorOnPath(ctx, fmt.Errorf(`unexpected type %T from directive, should be *int`, tmp))
   602  		}
   603  	}
   604  	args["arg"] = arg0
   605  	var arg1 *int
   606  	if tmp, ok := rawArgs["arg2"]; ok {
   607  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg2"))
   608  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOInt2ᚖint(ctx, tmp) }
   609  		directive1 := func(ctx context.Context) (interface{}, error) {
   610  			min, err := ec.unmarshalOInt2ᚖint(ctx, 0)
   611  			if err != nil {
   612  				return nil, err
   613  			}
   614  			if ec.directives.Range == nil {
   615  				return nil, errors.New("directive range is not implemented")
   616  			}
   617  			return ec.directives.Range(ctx, rawArgs, directive0, min, nil)
   618  		}
   619  
   620  		tmp, err = directive1(ctx)
   621  		if err != nil {
   622  			return nil, graphql.ErrorOnPath(ctx, err)
   623  		}
   624  		if data, ok := tmp.(*int); ok {
   625  			arg1 = data
   626  		} else if tmp == nil {
   627  			arg1 = nil
   628  		} else {
   629  			return nil, graphql.ErrorOnPath(ctx, fmt.Errorf(`unexpected type %T from directive, should be *int`, tmp))
   630  		}
   631  	}
   632  	args["arg2"] = arg1
   633  	var arg2 *string
   634  	if tmp, ok := rawArgs["arg3"]; ok {
   635  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("arg3"))
   636  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOString2ᚖstring(ctx, tmp) }
   637  		directive1 := func(ctx context.Context) (interface{}, error) {
   638  			if ec.directives.ToNull == nil {
   639  				return nil, errors.New("directive toNull is not implemented")
   640  			}
   641  			return ec.directives.ToNull(ctx, rawArgs, directive0)
   642  		}
   643  
   644  		tmp, err = directive1(ctx)
   645  		if err != nil {
   646  			return nil, graphql.ErrorOnPath(ctx, err)
   647  		}
   648  		if data, ok := tmp.(*string); ok {
   649  			arg2 = data
   650  		} else if tmp == nil {
   651  			arg2 = nil
   652  		} else {
   653  			return nil, graphql.ErrorOnPath(ctx, fmt.Errorf(`unexpected type %T from directive, should be *string`, tmp))
   654  		}
   655  	}
   656  	args["arg3"] = arg2
   657  	return args, nil
   658  }
   659  
   660  // endregion ***************************** args.gotpl *****************************
   661  
   662  // region    ************************** directives.gotpl **************************
   663  
   664  // endregion ************************** directives.gotpl **************************
   665  
   666  // region    **************************** field.gotpl *****************************
   667  
   668  func (ec *executionContext) _Autobind_int(ctx context.Context, field graphql.CollectedField, obj *Autobind) (ret graphql.Marshaler) {
   669  	defer func() {
   670  		if r := recover(); r != nil {
   671  			ec.Error(ctx, ec.Recover(ctx, r))
   672  			ret = graphql.Null
   673  		}
   674  	}()
   675  	fc := &graphql.FieldContext{
   676  		Object:     "Autobind",
   677  		Field:      field,
   678  		Args:       nil,
   679  		IsMethod:   false,
   680  		IsResolver: false,
   681  	}
   682  
   683  	ctx = graphql.WithFieldContext(ctx, fc)
   684  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
   685  		ctx = rctx // use context from middleware stack in children
   686  		return obj.Int, nil
   687  	})
   688  
   689  	if resTmp == nil {
   690  		if !graphql.HasFieldError(ctx, fc) {
   691  			ec.Errorf(ctx, "must not be null")
   692  		}
   693  		return graphql.Null
   694  	}
   695  	res := resTmp.(int)
   696  	fc.Result = res
   697  	return ec.marshalNInt2int(ctx, field.Selections, res)
   698  }
   699  
   700  func (ec *executionContext) _Autobind_int32(ctx context.Context, field graphql.CollectedField, obj *Autobind) (ret graphql.Marshaler) {
   701  	defer func() {
   702  		if r := recover(); r != nil {
   703  			ec.Error(ctx, ec.Recover(ctx, r))
   704  			ret = graphql.Null
   705  		}
   706  	}()
   707  	fc := &graphql.FieldContext{
   708  		Object:     "Autobind",
   709  		Field:      field,
   710  		Args:       nil,
   711  		IsMethod:   false,
   712  		IsResolver: false,
   713  	}
   714  
   715  	ctx = graphql.WithFieldContext(ctx, fc)
   716  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
   717  		ctx = rctx // use context from middleware stack in children
   718  		return obj.Int32, nil
   719  	})
   720  
   721  	if resTmp == nil {
   722  		if !graphql.HasFieldError(ctx, fc) {
   723  			ec.Errorf(ctx, "must not be null")
   724  		}
   725  		return graphql.Null
   726  	}
   727  	res := resTmp.(int32)
   728  	fc.Result = res
   729  	return ec.marshalNInt2int32(ctx, field.Selections, res)
   730  }
   731  
   732  func (ec *executionContext) _Autobind_int64(ctx context.Context, field graphql.CollectedField, obj *Autobind) (ret graphql.Marshaler) {
   733  	defer func() {
   734  		if r := recover(); r != nil {
   735  			ec.Error(ctx, ec.Recover(ctx, r))
   736  			ret = graphql.Null
   737  		}
   738  	}()
   739  	fc := &graphql.FieldContext{
   740  		Object:     "Autobind",
   741  		Field:      field,
   742  		Args:       nil,
   743  		IsMethod:   false,
   744  		IsResolver: false,
   745  	}
   746  
   747  	ctx = graphql.WithFieldContext(ctx, fc)
   748  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
   749  		ctx = rctx // use context from middleware stack in children
   750  		return obj.Int64, nil
   751  	})
   752  
   753  	if resTmp == nil {
   754  		if !graphql.HasFieldError(ctx, fc) {
   755  			ec.Errorf(ctx, "must not be null")
   756  		}
   757  		return graphql.Null
   758  	}
   759  	res := resTmp.(int64)
   760  	fc.Result = res
   761  	return ec.marshalNInt2int64(ctx, field.Selections, res)
   762  }
   763  
   764  func (ec *executionContext) _Autobind_idStr(ctx context.Context, field graphql.CollectedField, obj *Autobind) (ret graphql.Marshaler) {
   765  	defer func() {
   766  		if r := recover(); r != nil {
   767  			ec.Error(ctx, ec.Recover(ctx, r))
   768  			ret = graphql.Null
   769  		}
   770  	}()
   771  	fc := &graphql.FieldContext{
   772  		Object:     "Autobind",
   773  		Field:      field,
   774  		Args:       nil,
   775  		IsMethod:   false,
   776  		IsResolver: false,
   777  	}
   778  
   779  	ctx = graphql.WithFieldContext(ctx, fc)
   780  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
   781  		ctx = rctx // use context from middleware stack in children
   782  		return obj.IdStr, nil
   783  	})
   784  
   785  	if resTmp == nil {
   786  		if !graphql.HasFieldError(ctx, fc) {
   787  			ec.Errorf(ctx, "must not be null")
   788  		}
   789  		return graphql.Null
   790  	}
   791  	res := resTmp.(string)
   792  	fc.Result = res
   793  	return ec.marshalNID2string(ctx, field.Selections, res)
   794  }
   795  
   796  func (ec *executionContext) _Autobind_idInt(ctx context.Context, field graphql.CollectedField, obj *Autobind) (ret graphql.Marshaler) {
   797  	defer func() {
   798  		if r := recover(); r != nil {
   799  			ec.Error(ctx, ec.Recover(ctx, r))
   800  			ret = graphql.Null
   801  		}
   802  	}()
   803  	fc := &graphql.FieldContext{
   804  		Object:     "Autobind",
   805  		Field:      field,
   806  		Args:       nil,
   807  		IsMethod:   false,
   808  		IsResolver: false,
   809  	}
   810  
   811  	ctx = graphql.WithFieldContext(ctx, fc)
   812  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
   813  		ctx = rctx // use context from middleware stack in children
   814  		return obj.IdInt, nil
   815  	})
   816  
   817  	if resTmp == nil {
   818  		if !graphql.HasFieldError(ctx, fc) {
   819  			ec.Errorf(ctx, "must not be null")
   820  		}
   821  		return graphql.Null
   822  	}
   823  	res := resTmp.(int)
   824  	fc.Result = res
   825  	return ec.marshalNID2int(ctx, field.Selections, res)
   826  }
   827  
   828  func (ec *executionContext) _EmbeddedPointer_ID(ctx context.Context, field graphql.CollectedField, obj *EmbeddedPointerModel) (ret graphql.Marshaler) {
   829  	defer func() {
   830  		if r := recover(); r != nil {
   831  			ec.Error(ctx, ec.Recover(ctx, r))
   832  			ret = graphql.Null
   833  		}
   834  	}()
   835  	fc := &graphql.FieldContext{
   836  		Object:     "EmbeddedPointer",
   837  		Field:      field,
   838  		Args:       nil,
   839  		IsMethod:   false,
   840  		IsResolver: false,
   841  	}
   842  
   843  	ctx = graphql.WithFieldContext(ctx, fc)
   844  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
   845  		ctx = rctx // use context from middleware stack in children
   846  		return obj.ID, nil
   847  	})
   848  
   849  	if resTmp == nil {
   850  		return graphql.Null
   851  	}
   852  	res := resTmp.(string)
   853  	fc.Result = res
   854  	return ec.marshalOString2string(ctx, field.Selections, res)
   855  }
   856  
   857  func (ec *executionContext) _EmbeddedPointer_Title(ctx context.Context, field graphql.CollectedField, obj *EmbeddedPointerModel) (ret graphql.Marshaler) {
   858  	defer func() {
   859  		if r := recover(); r != nil {
   860  			ec.Error(ctx, ec.Recover(ctx, r))
   861  			ret = graphql.Null
   862  		}
   863  	}()
   864  	fc := &graphql.FieldContext{
   865  		Object:     "EmbeddedPointer",
   866  		Field:      field,
   867  		Args:       nil,
   868  		IsMethod:   false,
   869  		IsResolver: false,
   870  	}
   871  
   872  	ctx = graphql.WithFieldContext(ctx, fc)
   873  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
   874  		ctx = rctx // use context from middleware stack in children
   875  		return obj.Title, nil
   876  	})
   877  
   878  	if resTmp == nil {
   879  		return graphql.Null
   880  	}
   881  	res := resTmp.(string)
   882  	fc.Result = res
   883  	return ec.marshalOString2string(ctx, field.Selections, res)
   884  }
   885  
   886  func (ec *executionContext) _ForcedResolver_field(ctx context.Context, field graphql.CollectedField, obj *ForcedResolver) (ret graphql.Marshaler) {
   887  	defer func() {
   888  		if r := recover(); r != nil {
   889  			ec.Error(ctx, ec.Recover(ctx, r))
   890  			ret = graphql.Null
   891  		}
   892  	}()
   893  	fc := &graphql.FieldContext{
   894  		Object:     "ForcedResolver",
   895  		Field:      field,
   896  		Args:       nil,
   897  		IsMethod:   true,
   898  		IsResolver: true,
   899  	}
   900  
   901  	ctx = graphql.WithFieldContext(ctx, fc)
   902  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
   903  		ctx = rctx // use context from middleware stack in children
   904  		return ec.resolvers.ForcedResolver().Field(rctx, obj)
   905  	})
   906  
   907  	if resTmp == nil {
   908  		return graphql.Null
   909  	}
   910  	res := resTmp.(*Circle)
   911  	fc.Result = res
   912  	return ec.marshalOCircle2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐCircle(ctx, field.Selections, res)
   913  }
   914  
   915  func (ec *executionContext) _InnerObject_id(ctx context.Context, field graphql.CollectedField, obj *InnerObject) (ret graphql.Marshaler) {
   916  	defer func() {
   917  		if r := recover(); r != nil {
   918  			ec.Error(ctx, ec.Recover(ctx, r))
   919  			ret = graphql.Null
   920  		}
   921  	}()
   922  	fc := &graphql.FieldContext{
   923  		Object:     "InnerObject",
   924  		Field:      field,
   925  		Args:       nil,
   926  		IsMethod:   false,
   927  		IsResolver: false,
   928  	}
   929  
   930  	ctx = graphql.WithFieldContext(ctx, fc)
   931  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
   932  		ctx = rctx // use context from middleware stack in children
   933  		return obj.ID, nil
   934  	})
   935  
   936  	if resTmp == nil {
   937  		if !graphql.HasFieldError(ctx, fc) {
   938  			ec.Errorf(ctx, "must not be null")
   939  		}
   940  		return graphql.Null
   941  	}
   942  	res := resTmp.(int)
   943  	fc.Result = res
   944  	return ec.marshalNInt2int(ctx, field.Selections, res)
   945  }
   946  
   947  func (ec *executionContext) _InvalidIdentifier_id(ctx context.Context, field graphql.CollectedField, obj *invalid_packagename.InvalidIdentifier) (ret graphql.Marshaler) {
   948  	defer func() {
   949  		if r := recover(); r != nil {
   950  			ec.Error(ctx, ec.Recover(ctx, r))
   951  			ret = graphql.Null
   952  		}
   953  	}()
   954  	fc := &graphql.FieldContext{
   955  		Object:     "InvalidIdentifier",
   956  		Field:      field,
   957  		Args:       nil,
   958  		IsMethod:   false,
   959  		IsResolver: false,
   960  	}
   961  
   962  	ctx = graphql.WithFieldContext(ctx, fc)
   963  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
   964  		ctx = rctx // use context from middleware stack in children
   965  		return obj.ID, nil
   966  	})
   967  
   968  	if resTmp == nil {
   969  		if !graphql.HasFieldError(ctx, fc) {
   970  			ec.Errorf(ctx, "must not be null")
   971  		}
   972  		return graphql.Null
   973  	}
   974  	res := resTmp.(int)
   975  	fc.Result = res
   976  	return ec.marshalNInt2int(ctx, field.Selections, res)
   977  }
   978  
   979  func (ec *executionContext) _It_id(ctx context.Context, field graphql.CollectedField, obj *introspection1.It) (ret graphql.Marshaler) {
   980  	defer func() {
   981  		if r := recover(); r != nil {
   982  			ec.Error(ctx, ec.Recover(ctx, r))
   983  			ret = graphql.Null
   984  		}
   985  	}()
   986  	fc := &graphql.FieldContext{
   987  		Object:     "It",
   988  		Field:      field,
   989  		Args:       nil,
   990  		IsMethod:   false,
   991  		IsResolver: false,
   992  	}
   993  
   994  	ctx = graphql.WithFieldContext(ctx, fc)
   995  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
   996  		ctx = rctx // use context from middleware stack in children
   997  		return obj.ID, nil
   998  	})
   999  
  1000  	if resTmp == nil {
  1001  		if !graphql.HasFieldError(ctx, fc) {
  1002  			ec.Errorf(ctx, "must not be null")
  1003  		}
  1004  		return graphql.Null
  1005  	}
  1006  	res := resTmp.(string)
  1007  	fc.Result = res
  1008  	return ec.marshalNID2string(ctx, field.Selections, res)
  1009  }
  1010  
  1011  func (ec *executionContext) _ModelMethods_resolverField(ctx context.Context, field graphql.CollectedField, obj *ModelMethods) (ret graphql.Marshaler) {
  1012  	defer func() {
  1013  		if r := recover(); r != nil {
  1014  			ec.Error(ctx, ec.Recover(ctx, r))
  1015  			ret = graphql.Null
  1016  		}
  1017  	}()
  1018  	fc := &graphql.FieldContext{
  1019  		Object:     "ModelMethods",
  1020  		Field:      field,
  1021  		Args:       nil,
  1022  		IsMethod:   true,
  1023  		IsResolver: true,
  1024  	}
  1025  
  1026  	ctx = graphql.WithFieldContext(ctx, fc)
  1027  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  1028  		ctx = rctx // use context from middleware stack in children
  1029  		return ec.resolvers.ModelMethods().ResolverField(rctx, obj)
  1030  	})
  1031  
  1032  	if resTmp == nil {
  1033  		if !graphql.HasFieldError(ctx, fc) {
  1034  			ec.Errorf(ctx, "must not be null")
  1035  		}
  1036  		return graphql.Null
  1037  	}
  1038  	res := resTmp.(bool)
  1039  	fc.Result = res
  1040  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  1041  }
  1042  
  1043  func (ec *executionContext) _ModelMethods_noContext(ctx context.Context, field graphql.CollectedField, obj *ModelMethods) (ret graphql.Marshaler) {
  1044  	defer func() {
  1045  		if r := recover(); r != nil {
  1046  			ec.Error(ctx, ec.Recover(ctx, r))
  1047  			ret = graphql.Null
  1048  		}
  1049  	}()
  1050  	fc := &graphql.FieldContext{
  1051  		Object:     "ModelMethods",
  1052  		Field:      field,
  1053  		Args:       nil,
  1054  		IsMethod:   true,
  1055  		IsResolver: false,
  1056  	}
  1057  
  1058  	ctx = graphql.WithFieldContext(ctx, fc)
  1059  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  1060  		ctx = rctx // use context from middleware stack in children
  1061  		return obj.NoContext(), nil
  1062  	})
  1063  
  1064  	if resTmp == nil {
  1065  		if !graphql.HasFieldError(ctx, fc) {
  1066  			ec.Errorf(ctx, "must not be null")
  1067  		}
  1068  		return graphql.Null
  1069  	}
  1070  	res := resTmp.(bool)
  1071  	fc.Result = res
  1072  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  1073  }
  1074  
  1075  func (ec *executionContext) _ModelMethods_withContext(ctx context.Context, field graphql.CollectedField, obj *ModelMethods) (ret graphql.Marshaler) {
  1076  	defer func() {
  1077  		if r := recover(); r != nil {
  1078  			ec.Error(ctx, ec.Recover(ctx, r))
  1079  			ret = graphql.Null
  1080  		}
  1081  	}()
  1082  	fc := &graphql.FieldContext{
  1083  		Object:     "ModelMethods",
  1084  		Field:      field,
  1085  		Args:       nil,
  1086  		IsMethod:   true,
  1087  		IsResolver: false,
  1088  	}
  1089  
  1090  	ctx = graphql.WithFieldContext(ctx, fc)
  1091  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  1092  		ctx = rctx // use context from middleware stack in children
  1093  		return obj.WithContext(ctx), nil
  1094  	})
  1095  
  1096  	if resTmp == nil {
  1097  		if !graphql.HasFieldError(ctx, fc) {
  1098  			ec.Errorf(ctx, "must not be null")
  1099  		}
  1100  		return graphql.Null
  1101  	}
  1102  	res := resTmp.(bool)
  1103  	fc.Result = res
  1104  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  1105  }
  1106  
  1107  func (ec *executionContext) _OuterObject_inner(ctx context.Context, field graphql.CollectedField, obj *OuterObject) (ret graphql.Marshaler) {
  1108  	defer func() {
  1109  		if r := recover(); r != nil {
  1110  			ec.Error(ctx, ec.Recover(ctx, r))
  1111  			ret = graphql.Null
  1112  		}
  1113  	}()
  1114  	fc := &graphql.FieldContext{
  1115  		Object:     "OuterObject",
  1116  		Field:      field,
  1117  		Args:       nil,
  1118  		IsMethod:   false,
  1119  		IsResolver: false,
  1120  	}
  1121  
  1122  	ctx = graphql.WithFieldContext(ctx, fc)
  1123  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  1124  		ctx = rctx // use context from middleware stack in children
  1125  		return obj.Inner, nil
  1126  	})
  1127  
  1128  	if resTmp == nil {
  1129  		if !graphql.HasFieldError(ctx, fc) {
  1130  			ec.Errorf(ctx, "must not be null")
  1131  		}
  1132  		return graphql.Null
  1133  	}
  1134  	res := resTmp.(*InnerObject)
  1135  	fc.Result = res
  1136  	return ec.marshalNInnerObject2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐInnerObject(ctx, field.Selections, res)
  1137  }
  1138  
  1139  func (ec *executionContext) _Query_invalidIdentifier(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1140  	defer func() {
  1141  		if r := recover(); r != nil {
  1142  			ec.Error(ctx, ec.Recover(ctx, r))
  1143  			ret = graphql.Null
  1144  		}
  1145  	}()
  1146  	fc := &graphql.FieldContext{
  1147  		Object:     "Query",
  1148  		Field:      field,
  1149  		Args:       nil,
  1150  		IsMethod:   true,
  1151  		IsResolver: true,
  1152  	}
  1153  
  1154  	ctx = graphql.WithFieldContext(ctx, fc)
  1155  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1156  		ctx = rctx // use context from middleware stack in children
  1157  		return ec.resolvers.Query().InvalidIdentifier(rctx)
  1158  	})
  1159  
  1160  	if resTmp == nil {
  1161  		return graphql.Null
  1162  	}
  1163  	res := resTmp.(*invalid_packagename.InvalidIdentifier)
  1164  	fc.Result = res
  1165  	return ec.marshalOInvalidIdentifier2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚋinvalidᚑpackagenameᚐInvalidIdentifier(ctx, field.Selections, res)
  1166  }
  1167  
  1168  func (ec *executionContext) _Query_collision(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1169  	defer func() {
  1170  		if r := recover(); r != nil {
  1171  			ec.Error(ctx, ec.Recover(ctx, r))
  1172  			ret = graphql.Null
  1173  		}
  1174  	}()
  1175  	fc := &graphql.FieldContext{
  1176  		Object:     "Query",
  1177  		Field:      field,
  1178  		Args:       nil,
  1179  		IsMethod:   true,
  1180  		IsResolver: true,
  1181  	}
  1182  
  1183  	ctx = graphql.WithFieldContext(ctx, fc)
  1184  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1185  		ctx = rctx // use context from middleware stack in children
  1186  		return ec.resolvers.Query().Collision(rctx)
  1187  	})
  1188  
  1189  	if resTmp == nil {
  1190  		return graphql.Null
  1191  	}
  1192  	res := resTmp.(*introspection1.It)
  1193  	fc.Result = res
  1194  	return ec.marshalOIt2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚋintrospectionᚐIt(ctx, field.Selections, res)
  1195  }
  1196  
  1197  func (ec *executionContext) _Query_mapInput(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1198  	defer func() {
  1199  		if r := recover(); r != nil {
  1200  			ec.Error(ctx, ec.Recover(ctx, r))
  1201  			ret = graphql.Null
  1202  		}
  1203  	}()
  1204  	fc := &graphql.FieldContext{
  1205  		Object:     "Query",
  1206  		Field:      field,
  1207  		Args:       nil,
  1208  		IsMethod:   true,
  1209  		IsResolver: true,
  1210  	}
  1211  
  1212  	ctx = graphql.WithFieldContext(ctx, fc)
  1213  	rawArgs := field.ArgumentMap(ec.Variables)
  1214  	args, err := ec.field_Query_mapInput_args(ctx, rawArgs)
  1215  	if err != nil {
  1216  		ec.Error(ctx, err)
  1217  		return graphql.Null
  1218  	}
  1219  	fc.Args = args
  1220  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1221  		ctx = rctx // use context from middleware stack in children
  1222  		return ec.resolvers.Query().MapInput(rctx, args["input"].(map[string]interface{}))
  1223  	})
  1224  
  1225  	if resTmp == nil {
  1226  		return graphql.Null
  1227  	}
  1228  	res := resTmp.(*bool)
  1229  	fc.Result = res
  1230  	return ec.marshalOBoolean2ᚖbool(ctx, field.Selections, res)
  1231  }
  1232  
  1233  func (ec *executionContext) _Query_recursive(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1234  	defer func() {
  1235  		if r := recover(); r != nil {
  1236  			ec.Error(ctx, ec.Recover(ctx, r))
  1237  			ret = graphql.Null
  1238  		}
  1239  	}()
  1240  	fc := &graphql.FieldContext{
  1241  		Object:     "Query",
  1242  		Field:      field,
  1243  		Args:       nil,
  1244  		IsMethod:   true,
  1245  		IsResolver: true,
  1246  	}
  1247  
  1248  	ctx = graphql.WithFieldContext(ctx, fc)
  1249  	rawArgs := field.ArgumentMap(ec.Variables)
  1250  	args, err := ec.field_Query_recursive_args(ctx, rawArgs)
  1251  	if err != nil {
  1252  		ec.Error(ctx, err)
  1253  		return graphql.Null
  1254  	}
  1255  	fc.Args = args
  1256  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1257  		ctx = rctx // use context from middleware stack in children
  1258  		return ec.resolvers.Query().Recursive(rctx, args["input"].(*RecursiveInputSlice))
  1259  	})
  1260  
  1261  	if resTmp == nil {
  1262  		return graphql.Null
  1263  	}
  1264  	res := resTmp.(*bool)
  1265  	fc.Result = res
  1266  	return ec.marshalOBoolean2ᚖbool(ctx, field.Selections, res)
  1267  }
  1268  
  1269  func (ec *executionContext) _Query_nestedInputs(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1270  	defer func() {
  1271  		if r := recover(); r != nil {
  1272  			ec.Error(ctx, ec.Recover(ctx, r))
  1273  			ret = graphql.Null
  1274  		}
  1275  	}()
  1276  	fc := &graphql.FieldContext{
  1277  		Object:     "Query",
  1278  		Field:      field,
  1279  		Args:       nil,
  1280  		IsMethod:   true,
  1281  		IsResolver: true,
  1282  	}
  1283  
  1284  	ctx = graphql.WithFieldContext(ctx, fc)
  1285  	rawArgs := field.ArgumentMap(ec.Variables)
  1286  	args, err := ec.field_Query_nestedInputs_args(ctx, rawArgs)
  1287  	if err != nil {
  1288  		ec.Error(ctx, err)
  1289  		return graphql.Null
  1290  	}
  1291  	fc.Args = args
  1292  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1293  		ctx = rctx // use context from middleware stack in children
  1294  		return ec.resolvers.Query().NestedInputs(rctx, args["input"].([][]*OuterInput))
  1295  	})
  1296  
  1297  	if resTmp == nil {
  1298  		return graphql.Null
  1299  	}
  1300  	res := resTmp.(*bool)
  1301  	fc.Result = res
  1302  	return ec.marshalOBoolean2ᚖbool(ctx, field.Selections, res)
  1303  }
  1304  
  1305  func (ec *executionContext) _Query_nestedOutputs(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1306  	defer func() {
  1307  		if r := recover(); r != nil {
  1308  			ec.Error(ctx, ec.Recover(ctx, r))
  1309  			ret = graphql.Null
  1310  		}
  1311  	}()
  1312  	fc := &graphql.FieldContext{
  1313  		Object:     "Query",
  1314  		Field:      field,
  1315  		Args:       nil,
  1316  		IsMethod:   true,
  1317  		IsResolver: true,
  1318  	}
  1319  
  1320  	ctx = graphql.WithFieldContext(ctx, fc)
  1321  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1322  		ctx = rctx // use context from middleware stack in children
  1323  		return ec.resolvers.Query().NestedOutputs(rctx)
  1324  	})
  1325  
  1326  	if resTmp == nil {
  1327  		return graphql.Null
  1328  	}
  1329  	res := resTmp.([][]*OuterObject)
  1330  	fc.Result = res
  1331  	return ec.marshalOOuterObject2ᚕᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOuterObject(ctx, field.Selections, res)
  1332  }
  1333  
  1334  func (ec *executionContext) _Query_modelMethods(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1335  	defer func() {
  1336  		if r := recover(); r != nil {
  1337  			ec.Error(ctx, ec.Recover(ctx, r))
  1338  			ret = graphql.Null
  1339  		}
  1340  	}()
  1341  	fc := &graphql.FieldContext{
  1342  		Object:     "Query",
  1343  		Field:      field,
  1344  		Args:       nil,
  1345  		IsMethod:   true,
  1346  		IsResolver: true,
  1347  	}
  1348  
  1349  	ctx = graphql.WithFieldContext(ctx, fc)
  1350  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1351  		ctx = rctx // use context from middleware stack in children
  1352  		return ec.resolvers.Query().ModelMethods(rctx)
  1353  	})
  1354  
  1355  	if resTmp == nil {
  1356  		return graphql.Null
  1357  	}
  1358  	res := resTmp.(*ModelMethods)
  1359  	fc.Result = res
  1360  	return ec.marshalOModelMethods2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐModelMethods(ctx, field.Selections, res)
  1361  }
  1362  
  1363  func (ec *executionContext) _Query_user(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1364  	defer func() {
  1365  		if r := recover(); r != nil {
  1366  			ec.Error(ctx, ec.Recover(ctx, r))
  1367  			ret = graphql.Null
  1368  		}
  1369  	}()
  1370  	fc := &graphql.FieldContext{
  1371  		Object:     "Query",
  1372  		Field:      field,
  1373  		Args:       nil,
  1374  		IsMethod:   true,
  1375  		IsResolver: true,
  1376  	}
  1377  
  1378  	ctx = graphql.WithFieldContext(ctx, fc)
  1379  	rawArgs := field.ArgumentMap(ec.Variables)
  1380  	args, err := ec.field_Query_user_args(ctx, rawArgs)
  1381  	if err != nil {
  1382  		ec.Error(ctx, err)
  1383  		return graphql.Null
  1384  	}
  1385  	fc.Args = args
  1386  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1387  		ctx = rctx // use context from middleware stack in children
  1388  		return ec.resolvers.Query().User(rctx, args["id"].(int))
  1389  	})
  1390  
  1391  	if resTmp == nil {
  1392  		if !graphql.HasFieldError(ctx, fc) {
  1393  			ec.Errorf(ctx, "must not be null")
  1394  		}
  1395  		return graphql.Null
  1396  	}
  1397  	res := resTmp.(*User)
  1398  	fc.Result = res
  1399  	return ec.marshalNUser2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐUser(ctx, field.Selections, res)
  1400  }
  1401  
  1402  func (ec *executionContext) _Query_nullableArg(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1403  	defer func() {
  1404  		if r := recover(); r != nil {
  1405  			ec.Error(ctx, ec.Recover(ctx, r))
  1406  			ret = graphql.Null
  1407  		}
  1408  	}()
  1409  	fc := &graphql.FieldContext{
  1410  		Object:     "Query",
  1411  		Field:      field,
  1412  		Args:       nil,
  1413  		IsMethod:   true,
  1414  		IsResolver: true,
  1415  	}
  1416  
  1417  	ctx = graphql.WithFieldContext(ctx, fc)
  1418  	rawArgs := field.ArgumentMap(ec.Variables)
  1419  	args, err := ec.field_Query_nullableArg_args(ctx, rawArgs)
  1420  	if err != nil {
  1421  		ec.Error(ctx, err)
  1422  		return graphql.Null
  1423  	}
  1424  	fc.Args = args
  1425  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1426  		ctx = rctx // use context from middleware stack in children
  1427  		return ec.resolvers.Query().NullableArg(rctx, args["arg"].(*int))
  1428  	})
  1429  
  1430  	if resTmp == nil {
  1431  		return graphql.Null
  1432  	}
  1433  	res := resTmp.(*string)
  1434  	fc.Result = res
  1435  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  1436  }
  1437  
  1438  func (ec *executionContext) _Query_inputSlice(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1439  	defer func() {
  1440  		if r := recover(); r != nil {
  1441  			ec.Error(ctx, ec.Recover(ctx, r))
  1442  			ret = graphql.Null
  1443  		}
  1444  	}()
  1445  	fc := &graphql.FieldContext{
  1446  		Object:     "Query",
  1447  		Field:      field,
  1448  		Args:       nil,
  1449  		IsMethod:   true,
  1450  		IsResolver: true,
  1451  	}
  1452  
  1453  	ctx = graphql.WithFieldContext(ctx, fc)
  1454  	rawArgs := field.ArgumentMap(ec.Variables)
  1455  	args, err := ec.field_Query_inputSlice_args(ctx, rawArgs)
  1456  	if err != nil {
  1457  		ec.Error(ctx, err)
  1458  		return graphql.Null
  1459  	}
  1460  	fc.Args = args
  1461  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1462  		ctx = rctx // use context from middleware stack in children
  1463  		return ec.resolvers.Query().InputSlice(rctx, args["arg"].([]string))
  1464  	})
  1465  
  1466  	if resTmp == nil {
  1467  		if !graphql.HasFieldError(ctx, fc) {
  1468  			ec.Errorf(ctx, "must not be null")
  1469  		}
  1470  		return graphql.Null
  1471  	}
  1472  	res := resTmp.(bool)
  1473  	fc.Result = res
  1474  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  1475  }
  1476  
  1477  func (ec *executionContext) _Query_inputNullableSlice(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1478  	defer func() {
  1479  		if r := recover(); r != nil {
  1480  			ec.Error(ctx, ec.Recover(ctx, r))
  1481  			ret = graphql.Null
  1482  		}
  1483  	}()
  1484  	fc := &graphql.FieldContext{
  1485  		Object:     "Query",
  1486  		Field:      field,
  1487  		Args:       nil,
  1488  		IsMethod:   true,
  1489  		IsResolver: true,
  1490  	}
  1491  
  1492  	ctx = graphql.WithFieldContext(ctx, fc)
  1493  	rawArgs := field.ArgumentMap(ec.Variables)
  1494  	args, err := ec.field_Query_inputNullableSlice_args(ctx, rawArgs)
  1495  	if err != nil {
  1496  		ec.Error(ctx, err)
  1497  		return graphql.Null
  1498  	}
  1499  	fc.Args = args
  1500  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1501  		ctx = rctx // use context from middleware stack in children
  1502  		return ec.resolvers.Query().InputNullableSlice(rctx, args["arg"].([]string))
  1503  	})
  1504  
  1505  	if resTmp == nil {
  1506  		if !graphql.HasFieldError(ctx, fc) {
  1507  			ec.Errorf(ctx, "must not be null")
  1508  		}
  1509  		return graphql.Null
  1510  	}
  1511  	res := resTmp.(bool)
  1512  	fc.Result = res
  1513  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  1514  }
  1515  
  1516  func (ec *executionContext) _Query_shapeUnion(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1517  	defer func() {
  1518  		if r := recover(); r != nil {
  1519  			ec.Error(ctx, ec.Recover(ctx, r))
  1520  			ret = graphql.Null
  1521  		}
  1522  	}()
  1523  	fc := &graphql.FieldContext{
  1524  		Object:     "Query",
  1525  		Field:      field,
  1526  		Args:       nil,
  1527  		IsMethod:   true,
  1528  		IsResolver: true,
  1529  	}
  1530  
  1531  	ctx = graphql.WithFieldContext(ctx, fc)
  1532  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1533  		ctx = rctx // use context from middleware stack in children
  1534  		return ec.resolvers.Query().ShapeUnion(rctx)
  1535  	})
  1536  
  1537  	if resTmp == nil {
  1538  		if !graphql.HasFieldError(ctx, fc) {
  1539  			ec.Errorf(ctx, "must not be null")
  1540  		}
  1541  		return graphql.Null
  1542  	}
  1543  	res := resTmp.(ShapeUnion)
  1544  	fc.Result = res
  1545  	return ec.marshalNShapeUnion2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐShapeUnion(ctx, field.Selections, res)
  1546  }
  1547  
  1548  func (ec *executionContext) _Query_autobind(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1549  	defer func() {
  1550  		if r := recover(); r != nil {
  1551  			ec.Error(ctx, ec.Recover(ctx, r))
  1552  			ret = graphql.Null
  1553  		}
  1554  	}()
  1555  	fc := &graphql.FieldContext{
  1556  		Object:     "Query",
  1557  		Field:      field,
  1558  		Args:       nil,
  1559  		IsMethod:   true,
  1560  		IsResolver: true,
  1561  	}
  1562  
  1563  	ctx = graphql.WithFieldContext(ctx, fc)
  1564  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1565  		ctx = rctx // use context from middleware stack in children
  1566  		return ec.resolvers.Query().Autobind(rctx)
  1567  	})
  1568  
  1569  	if resTmp == nil {
  1570  		return graphql.Null
  1571  	}
  1572  	res := resTmp.(*Autobind)
  1573  	fc.Result = res
  1574  	return ec.marshalOAutobind2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐAutobind(ctx, field.Selections, res)
  1575  }
  1576  
  1577  func (ec *executionContext) _Query_deprecatedField(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1578  	defer func() {
  1579  		if r := recover(); r != nil {
  1580  			ec.Error(ctx, ec.Recover(ctx, r))
  1581  			ret = graphql.Null
  1582  		}
  1583  	}()
  1584  	fc := &graphql.FieldContext{
  1585  		Object:     "Query",
  1586  		Field:      field,
  1587  		Args:       nil,
  1588  		IsMethod:   true,
  1589  		IsResolver: true,
  1590  	}
  1591  
  1592  	ctx = graphql.WithFieldContext(ctx, fc)
  1593  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1594  		ctx = rctx // use context from middleware stack in children
  1595  		return ec.resolvers.Query().DeprecatedField(rctx)
  1596  	})
  1597  
  1598  	if resTmp == nil {
  1599  		if !graphql.HasFieldError(ctx, fc) {
  1600  			ec.Errorf(ctx, "must not be null")
  1601  		}
  1602  		return graphql.Null
  1603  	}
  1604  	res := resTmp.(string)
  1605  	fc.Result = res
  1606  	return ec.marshalNString2string(ctx, field.Selections, res)
  1607  }
  1608  
  1609  func (ec *executionContext) _Query_overlapping(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1610  	defer func() {
  1611  		if r := recover(); r != nil {
  1612  			ec.Error(ctx, ec.Recover(ctx, r))
  1613  			ret = graphql.Null
  1614  		}
  1615  	}()
  1616  	fc := &graphql.FieldContext{
  1617  		Object:     "Query",
  1618  		Field:      field,
  1619  		Args:       nil,
  1620  		IsMethod:   true,
  1621  		IsResolver: true,
  1622  	}
  1623  
  1624  	ctx = graphql.WithFieldContext(ctx, fc)
  1625  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1626  		ctx = rctx // use context from middleware stack in children
  1627  		return ec.resolvers.Query().Overlapping(rctx)
  1628  	})
  1629  
  1630  	if resTmp == nil {
  1631  		return graphql.Null
  1632  	}
  1633  	res := resTmp.(*OverlappingFields)
  1634  	fc.Result = res
  1635  	return ec.marshalOOverlappingFields2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOverlappingFields(ctx, field.Selections, res)
  1636  }
  1637  
  1638  func (ec *executionContext) _Query_defaultParameters(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1639  	defer func() {
  1640  		if r := recover(); r != nil {
  1641  			ec.Error(ctx, ec.Recover(ctx, r))
  1642  			ret = graphql.Null
  1643  		}
  1644  	}()
  1645  	fc := &graphql.FieldContext{
  1646  		Object:     "Query",
  1647  		Field:      field,
  1648  		Args:       nil,
  1649  		IsMethod:   true,
  1650  		IsResolver: true,
  1651  	}
  1652  
  1653  	ctx = graphql.WithFieldContext(ctx, fc)
  1654  	rawArgs := field.ArgumentMap(ec.Variables)
  1655  	args, err := ec.field_Query_defaultParameters_args(ctx, rawArgs)
  1656  	if err != nil {
  1657  		ec.Error(ctx, err)
  1658  		return graphql.Null
  1659  	}
  1660  	fc.Args = args
  1661  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1662  		ctx = rctx // use context from middleware stack in children
  1663  		return ec.resolvers.Query().DefaultParameters(rctx, args["falsyBoolean"].(*bool), args["truthyBoolean"].(*bool))
  1664  	})
  1665  
  1666  	if resTmp == nil {
  1667  		if !graphql.HasFieldError(ctx, fc) {
  1668  			ec.Errorf(ctx, "must not be null")
  1669  		}
  1670  		return graphql.Null
  1671  	}
  1672  	res := resTmp.(*DefaultParametersMirror)
  1673  	fc.Result = res
  1674  	return ec.marshalNDefaultParametersMirror2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐDefaultParametersMirror(ctx, field.Selections, res)
  1675  }
  1676  
  1677  func (ec *executionContext) _Query_directiveArg(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1678  	defer func() {
  1679  		if r := recover(); r != nil {
  1680  			ec.Error(ctx, ec.Recover(ctx, r))
  1681  			ret = graphql.Null
  1682  		}
  1683  	}()
  1684  	fc := &graphql.FieldContext{
  1685  		Object:     "Query",
  1686  		Field:      field,
  1687  		Args:       nil,
  1688  		IsMethod:   true,
  1689  		IsResolver: true,
  1690  	}
  1691  
  1692  	ctx = graphql.WithFieldContext(ctx, fc)
  1693  	rawArgs := field.ArgumentMap(ec.Variables)
  1694  	args, err := ec.field_Query_directiveArg_args(ctx, rawArgs)
  1695  	if err != nil {
  1696  		ec.Error(ctx, err)
  1697  		return graphql.Null
  1698  	}
  1699  	fc.Args = args
  1700  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1701  		ctx = rctx // use context from middleware stack in children
  1702  		return ec.resolvers.Query().DirectiveArg(rctx, args["arg"].(string))
  1703  	})
  1704  
  1705  	if resTmp == nil {
  1706  		return graphql.Null
  1707  	}
  1708  	res := resTmp.(*string)
  1709  	fc.Result = res
  1710  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  1711  }
  1712  
  1713  func (ec *executionContext) _Query_directiveNullableArg(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1714  	defer func() {
  1715  		if r := recover(); r != nil {
  1716  			ec.Error(ctx, ec.Recover(ctx, r))
  1717  			ret = graphql.Null
  1718  		}
  1719  	}()
  1720  	fc := &graphql.FieldContext{
  1721  		Object:     "Query",
  1722  		Field:      field,
  1723  		Args:       nil,
  1724  		IsMethod:   true,
  1725  		IsResolver: true,
  1726  	}
  1727  
  1728  	ctx = graphql.WithFieldContext(ctx, fc)
  1729  	rawArgs := field.ArgumentMap(ec.Variables)
  1730  	args, err := ec.field_Query_directiveNullableArg_args(ctx, rawArgs)
  1731  	if err != nil {
  1732  		ec.Error(ctx, err)
  1733  		return graphql.Null
  1734  	}
  1735  	fc.Args = args
  1736  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1737  		ctx = rctx // use context from middleware stack in children
  1738  		return ec.resolvers.Query().DirectiveNullableArg(rctx, args["arg"].(*int), args["arg2"].(*int), args["arg3"].(*string))
  1739  	})
  1740  
  1741  	if resTmp == nil {
  1742  		return graphql.Null
  1743  	}
  1744  	res := resTmp.(*string)
  1745  	fc.Result = res
  1746  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  1747  }
  1748  
  1749  func (ec *executionContext) _Query_directiveInputNullable(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1750  	defer func() {
  1751  		if r := recover(); r != nil {
  1752  			ec.Error(ctx, ec.Recover(ctx, r))
  1753  			ret = graphql.Null
  1754  		}
  1755  	}()
  1756  	fc := &graphql.FieldContext{
  1757  		Object:     "Query",
  1758  		Field:      field,
  1759  		Args:       nil,
  1760  		IsMethod:   true,
  1761  		IsResolver: true,
  1762  	}
  1763  
  1764  	ctx = graphql.WithFieldContext(ctx, fc)
  1765  	rawArgs := field.ArgumentMap(ec.Variables)
  1766  	args, err := ec.field_Query_directiveInputNullable_args(ctx, rawArgs)
  1767  	if err != nil {
  1768  		ec.Error(ctx, err)
  1769  		return graphql.Null
  1770  	}
  1771  	fc.Args = args
  1772  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1773  		ctx = rctx // use context from middleware stack in children
  1774  		return ec.resolvers.Query().DirectiveInputNullable(rctx, args["arg"].(*InputDirectives))
  1775  	})
  1776  
  1777  	if resTmp == nil {
  1778  		return graphql.Null
  1779  	}
  1780  	res := resTmp.(*string)
  1781  	fc.Result = res
  1782  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  1783  }
  1784  
  1785  func (ec *executionContext) _Query_directiveInput(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1786  	defer func() {
  1787  		if r := recover(); r != nil {
  1788  			ec.Error(ctx, ec.Recover(ctx, r))
  1789  			ret = graphql.Null
  1790  		}
  1791  	}()
  1792  	fc := &graphql.FieldContext{
  1793  		Object:     "Query",
  1794  		Field:      field,
  1795  		Args:       nil,
  1796  		IsMethod:   true,
  1797  		IsResolver: true,
  1798  	}
  1799  
  1800  	ctx = graphql.WithFieldContext(ctx, fc)
  1801  	rawArgs := field.ArgumentMap(ec.Variables)
  1802  	args, err := ec.field_Query_directiveInput_args(ctx, rawArgs)
  1803  	if err != nil {
  1804  		ec.Error(ctx, err)
  1805  		return graphql.Null
  1806  	}
  1807  	fc.Args = args
  1808  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1809  		ctx = rctx // use context from middleware stack in children
  1810  		return ec.resolvers.Query().DirectiveInput(rctx, args["arg"].(InputDirectives))
  1811  	})
  1812  
  1813  	if resTmp == nil {
  1814  		return graphql.Null
  1815  	}
  1816  	res := resTmp.(*string)
  1817  	fc.Result = res
  1818  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  1819  }
  1820  
  1821  func (ec *executionContext) _Query_directiveInputType(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1822  	defer func() {
  1823  		if r := recover(); r != nil {
  1824  			ec.Error(ctx, ec.Recover(ctx, r))
  1825  			ret = graphql.Null
  1826  		}
  1827  	}()
  1828  	fc := &graphql.FieldContext{
  1829  		Object:     "Query",
  1830  		Field:      field,
  1831  		Args:       nil,
  1832  		IsMethod:   true,
  1833  		IsResolver: true,
  1834  	}
  1835  
  1836  	ctx = graphql.WithFieldContext(ctx, fc)
  1837  	rawArgs := field.ArgumentMap(ec.Variables)
  1838  	args, err := ec.field_Query_directiveInputType_args(ctx, rawArgs)
  1839  	if err != nil {
  1840  		ec.Error(ctx, err)
  1841  		return graphql.Null
  1842  	}
  1843  	fc.Args = args
  1844  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1845  		ctx = rctx // use context from middleware stack in children
  1846  		return ec.resolvers.Query().DirectiveInputType(rctx, args["arg"].(InnerInput))
  1847  	})
  1848  
  1849  	if resTmp == nil {
  1850  		return graphql.Null
  1851  	}
  1852  	res := resTmp.(*string)
  1853  	fc.Result = res
  1854  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  1855  }
  1856  
  1857  func (ec *executionContext) _Query_directiveObject(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1858  	defer func() {
  1859  		if r := recover(); r != nil {
  1860  			ec.Error(ctx, ec.Recover(ctx, r))
  1861  			ret = graphql.Null
  1862  		}
  1863  	}()
  1864  	fc := &graphql.FieldContext{
  1865  		Object:     "Query",
  1866  		Field:      field,
  1867  		Args:       nil,
  1868  		IsMethod:   true,
  1869  		IsResolver: true,
  1870  	}
  1871  
  1872  	ctx = graphql.WithFieldContext(ctx, fc)
  1873  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1874  		directive0 := func(rctx context.Context) (interface{}, error) {
  1875  			ctx = rctx // use context from middleware stack in children
  1876  			return ec.resolvers.Query().DirectiveObject(rctx)
  1877  		}
  1878  		directive1 := func(ctx context.Context) (interface{}, error) {
  1879  			location, err := ec.unmarshalNString2string(ctx, "order1_1")
  1880  			if err != nil {
  1881  				return nil, err
  1882  			}
  1883  			if ec.directives.Order1 == nil {
  1884  				return nil, errors.New("directive order1 is not implemented")
  1885  			}
  1886  			return ec.directives.Order1(ctx, nil, directive0, location)
  1887  		}
  1888  		directive2 := func(ctx context.Context) (interface{}, error) {
  1889  			location, err := ec.unmarshalNString2string(ctx, "order1_2")
  1890  			if err != nil {
  1891  				return nil, err
  1892  			}
  1893  			if ec.directives.Order1 == nil {
  1894  				return nil, errors.New("directive order1 is not implemented")
  1895  			}
  1896  			return ec.directives.Order1(ctx, nil, directive1, location)
  1897  		}
  1898  		directive3 := func(ctx context.Context) (interface{}, error) {
  1899  			location, err := ec.unmarshalNString2string(ctx, "order2_1")
  1900  			if err != nil {
  1901  				return nil, err
  1902  			}
  1903  			if ec.directives.Order2 == nil {
  1904  				return nil, errors.New("directive order2 is not implemented")
  1905  			}
  1906  			return ec.directives.Order2(ctx, nil, directive2, location)
  1907  		}
  1908  		directive4 := func(ctx context.Context) (interface{}, error) {
  1909  			location, err := ec.unmarshalNString2string(ctx, "Query_field")
  1910  			if err != nil {
  1911  				return nil, err
  1912  			}
  1913  			if ec.directives.Order1 == nil {
  1914  				return nil, errors.New("directive order1 is not implemented")
  1915  			}
  1916  			return ec.directives.Order1(ctx, nil, directive3, location)
  1917  		}
  1918  
  1919  		tmp, err := directive4(rctx)
  1920  		if err != nil {
  1921  			return nil, graphql.ErrorOnPath(ctx, err)
  1922  		}
  1923  		if tmp == nil {
  1924  			return nil, nil
  1925  		}
  1926  		if data, ok := tmp.(*ObjectDirectives); ok {
  1927  			return data, nil
  1928  		}
  1929  		return nil, fmt.Errorf(`unexpected type %T from directive, should be *github.com/99designs/gqlgen/codegen/testserver/followschema.ObjectDirectives`, tmp)
  1930  	})
  1931  
  1932  	if resTmp == nil {
  1933  		return graphql.Null
  1934  	}
  1935  	res := resTmp.(*ObjectDirectives)
  1936  	fc.Result = res
  1937  	return ec.marshalOObjectDirectives2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐObjectDirectives(ctx, field.Selections, res)
  1938  }
  1939  
  1940  func (ec *executionContext) _Query_directiveObjectWithCustomGoModel(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1941  	defer func() {
  1942  		if r := recover(); r != nil {
  1943  			ec.Error(ctx, ec.Recover(ctx, r))
  1944  			ret = graphql.Null
  1945  		}
  1946  	}()
  1947  	fc := &graphql.FieldContext{
  1948  		Object:     "Query",
  1949  		Field:      field,
  1950  		Args:       nil,
  1951  		IsMethod:   true,
  1952  		IsResolver: true,
  1953  	}
  1954  
  1955  	ctx = graphql.WithFieldContext(ctx, fc)
  1956  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1957  		ctx = rctx // use context from middleware stack in children
  1958  		return ec.resolvers.Query().DirectiveObjectWithCustomGoModel(rctx)
  1959  	})
  1960  
  1961  	if resTmp == nil {
  1962  		return graphql.Null
  1963  	}
  1964  	res := resTmp.(*ObjectDirectivesWithCustomGoModel)
  1965  	fc.Result = res
  1966  	return ec.marshalOObjectDirectivesWithCustomGoModel2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐObjectDirectivesWithCustomGoModel(ctx, field.Selections, res)
  1967  }
  1968  
  1969  func (ec *executionContext) _Query_directiveFieldDef(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  1970  	defer func() {
  1971  		if r := recover(); r != nil {
  1972  			ec.Error(ctx, ec.Recover(ctx, r))
  1973  			ret = graphql.Null
  1974  		}
  1975  	}()
  1976  	fc := &graphql.FieldContext{
  1977  		Object:     "Query",
  1978  		Field:      field,
  1979  		Args:       nil,
  1980  		IsMethod:   true,
  1981  		IsResolver: true,
  1982  	}
  1983  
  1984  	ctx = graphql.WithFieldContext(ctx, fc)
  1985  	rawArgs := field.ArgumentMap(ec.Variables)
  1986  	args, err := ec.field_Query_directiveFieldDef_args(ctx, rawArgs)
  1987  	if err != nil {
  1988  		ec.Error(ctx, err)
  1989  		return graphql.Null
  1990  	}
  1991  	fc.Args = args
  1992  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  1993  		directive0 := func(rctx context.Context) (interface{}, error) {
  1994  			ctx = rctx // use context from middleware stack in children
  1995  			return ec.resolvers.Query().DirectiveFieldDef(rctx, args["ret"].(string))
  1996  		}
  1997  		directive1 := func(ctx context.Context) (interface{}, error) {
  1998  			min, err := ec.unmarshalNInt2int(ctx, 1)
  1999  			if err != nil {
  2000  				return nil, err
  2001  			}
  2002  			message, err := ec.unmarshalOString2ᚖstring(ctx, "not valid")
  2003  			if err != nil {
  2004  				return nil, err
  2005  			}
  2006  			if ec.directives.Length == nil {
  2007  				return nil, errors.New("directive length is not implemented")
  2008  			}
  2009  			return ec.directives.Length(ctx, nil, directive0, min, nil, message)
  2010  		}
  2011  
  2012  		tmp, err := directive1(rctx)
  2013  		if err != nil {
  2014  			return nil, graphql.ErrorOnPath(ctx, err)
  2015  		}
  2016  		if tmp == nil {
  2017  			return nil, nil
  2018  		}
  2019  		if data, ok := tmp.(string); ok {
  2020  			return data, nil
  2021  		}
  2022  		return nil, fmt.Errorf(`unexpected type %T from directive, should be string`, tmp)
  2023  	})
  2024  
  2025  	if resTmp == nil {
  2026  		if !graphql.HasFieldError(ctx, fc) {
  2027  			ec.Errorf(ctx, "must not be null")
  2028  		}
  2029  		return graphql.Null
  2030  	}
  2031  	res := resTmp.(string)
  2032  	fc.Result = res
  2033  	return ec.marshalNString2string(ctx, field.Selections, res)
  2034  }
  2035  
  2036  func (ec *executionContext) _Query_directiveField(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2037  	defer func() {
  2038  		if r := recover(); r != nil {
  2039  			ec.Error(ctx, ec.Recover(ctx, r))
  2040  			ret = graphql.Null
  2041  		}
  2042  	}()
  2043  	fc := &graphql.FieldContext{
  2044  		Object:     "Query",
  2045  		Field:      field,
  2046  		Args:       nil,
  2047  		IsMethod:   true,
  2048  		IsResolver: true,
  2049  	}
  2050  
  2051  	ctx = graphql.WithFieldContext(ctx, fc)
  2052  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2053  		ctx = rctx // use context from middleware stack in children
  2054  		return ec.resolvers.Query().DirectiveField(rctx)
  2055  	})
  2056  
  2057  	if resTmp == nil {
  2058  		return graphql.Null
  2059  	}
  2060  	res := resTmp.(*string)
  2061  	fc.Result = res
  2062  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  2063  }
  2064  
  2065  func (ec *executionContext) _Query_directiveDouble(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2066  	defer func() {
  2067  		if r := recover(); r != nil {
  2068  			ec.Error(ctx, ec.Recover(ctx, r))
  2069  			ret = graphql.Null
  2070  		}
  2071  	}()
  2072  	fc := &graphql.FieldContext{
  2073  		Object:     "Query",
  2074  		Field:      field,
  2075  		Args:       nil,
  2076  		IsMethod:   true,
  2077  		IsResolver: true,
  2078  	}
  2079  
  2080  	ctx = graphql.WithFieldContext(ctx, fc)
  2081  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2082  		directive0 := func(rctx context.Context) (interface{}, error) {
  2083  			ctx = rctx // use context from middleware stack in children
  2084  			return ec.resolvers.Query().DirectiveDouble(rctx)
  2085  		}
  2086  		directive1 := func(ctx context.Context) (interface{}, error) {
  2087  			if ec.directives.Directive1 == nil {
  2088  				return nil, errors.New("directive directive1 is not implemented")
  2089  			}
  2090  			return ec.directives.Directive1(ctx, nil, directive0)
  2091  		}
  2092  		directive2 := func(ctx context.Context) (interface{}, error) {
  2093  			if ec.directives.Directive2 == nil {
  2094  				return nil, errors.New("directive directive2 is not implemented")
  2095  			}
  2096  			return ec.directives.Directive2(ctx, nil, directive1)
  2097  		}
  2098  
  2099  		tmp, err := directive2(rctx)
  2100  		if err != nil {
  2101  			return nil, graphql.ErrorOnPath(ctx, err)
  2102  		}
  2103  		if tmp == nil {
  2104  			return nil, nil
  2105  		}
  2106  		if data, ok := tmp.(*string); ok {
  2107  			return data, nil
  2108  		}
  2109  		return nil, fmt.Errorf(`unexpected type %T from directive, should be *string`, tmp)
  2110  	})
  2111  
  2112  	if resTmp == nil {
  2113  		return graphql.Null
  2114  	}
  2115  	res := resTmp.(*string)
  2116  	fc.Result = res
  2117  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  2118  }
  2119  
  2120  func (ec *executionContext) _Query_directiveUnimplemented(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2121  	defer func() {
  2122  		if r := recover(); r != nil {
  2123  			ec.Error(ctx, ec.Recover(ctx, r))
  2124  			ret = graphql.Null
  2125  		}
  2126  	}()
  2127  	fc := &graphql.FieldContext{
  2128  		Object:     "Query",
  2129  		Field:      field,
  2130  		Args:       nil,
  2131  		IsMethod:   true,
  2132  		IsResolver: true,
  2133  	}
  2134  
  2135  	ctx = graphql.WithFieldContext(ctx, fc)
  2136  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2137  		directive0 := func(rctx context.Context) (interface{}, error) {
  2138  			ctx = rctx // use context from middleware stack in children
  2139  			return ec.resolvers.Query().DirectiveUnimplemented(rctx)
  2140  		}
  2141  		directive1 := func(ctx context.Context) (interface{}, error) {
  2142  			if ec.directives.Unimplemented == nil {
  2143  				return nil, errors.New("directive unimplemented is not implemented")
  2144  			}
  2145  			return ec.directives.Unimplemented(ctx, nil, directive0)
  2146  		}
  2147  
  2148  		tmp, err := directive1(rctx)
  2149  		if err != nil {
  2150  			return nil, graphql.ErrorOnPath(ctx, err)
  2151  		}
  2152  		if tmp == nil {
  2153  			return nil, nil
  2154  		}
  2155  		if data, ok := tmp.(*string); ok {
  2156  			return data, nil
  2157  		}
  2158  		return nil, fmt.Errorf(`unexpected type %T from directive, should be *string`, tmp)
  2159  	})
  2160  
  2161  	if resTmp == nil {
  2162  		return graphql.Null
  2163  	}
  2164  	res := resTmp.(*string)
  2165  	fc.Result = res
  2166  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  2167  }
  2168  
  2169  func (ec *executionContext) _Query_embeddedCase1(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2170  	defer func() {
  2171  		if r := recover(); r != nil {
  2172  			ec.Error(ctx, ec.Recover(ctx, r))
  2173  			ret = graphql.Null
  2174  		}
  2175  	}()
  2176  	fc := &graphql.FieldContext{
  2177  		Object:     "Query",
  2178  		Field:      field,
  2179  		Args:       nil,
  2180  		IsMethod:   true,
  2181  		IsResolver: true,
  2182  	}
  2183  
  2184  	ctx = graphql.WithFieldContext(ctx, fc)
  2185  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2186  		ctx = rctx // use context from middleware stack in children
  2187  		return ec.resolvers.Query().EmbeddedCase1(rctx)
  2188  	})
  2189  
  2190  	if resTmp == nil {
  2191  		return graphql.Null
  2192  	}
  2193  	res := resTmp.(*EmbeddedCase1)
  2194  	fc.Result = res
  2195  	return ec.marshalOEmbeddedCase12ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐEmbeddedCase1(ctx, field.Selections, res)
  2196  }
  2197  
  2198  func (ec *executionContext) _Query_embeddedCase2(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2199  	defer func() {
  2200  		if r := recover(); r != nil {
  2201  			ec.Error(ctx, ec.Recover(ctx, r))
  2202  			ret = graphql.Null
  2203  		}
  2204  	}()
  2205  	fc := &graphql.FieldContext{
  2206  		Object:     "Query",
  2207  		Field:      field,
  2208  		Args:       nil,
  2209  		IsMethod:   true,
  2210  		IsResolver: true,
  2211  	}
  2212  
  2213  	ctx = graphql.WithFieldContext(ctx, fc)
  2214  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2215  		ctx = rctx // use context from middleware stack in children
  2216  		return ec.resolvers.Query().EmbeddedCase2(rctx)
  2217  	})
  2218  
  2219  	if resTmp == nil {
  2220  		return graphql.Null
  2221  	}
  2222  	res := resTmp.(*EmbeddedCase2)
  2223  	fc.Result = res
  2224  	return ec.marshalOEmbeddedCase22ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐEmbeddedCase2(ctx, field.Selections, res)
  2225  }
  2226  
  2227  func (ec *executionContext) _Query_embeddedCase3(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2228  	defer func() {
  2229  		if r := recover(); r != nil {
  2230  			ec.Error(ctx, ec.Recover(ctx, r))
  2231  			ret = graphql.Null
  2232  		}
  2233  	}()
  2234  	fc := &graphql.FieldContext{
  2235  		Object:     "Query",
  2236  		Field:      field,
  2237  		Args:       nil,
  2238  		IsMethod:   true,
  2239  		IsResolver: true,
  2240  	}
  2241  
  2242  	ctx = graphql.WithFieldContext(ctx, fc)
  2243  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2244  		ctx = rctx // use context from middleware stack in children
  2245  		return ec.resolvers.Query().EmbeddedCase3(rctx)
  2246  	})
  2247  
  2248  	if resTmp == nil {
  2249  		return graphql.Null
  2250  	}
  2251  	res := resTmp.(*EmbeddedCase3)
  2252  	fc.Result = res
  2253  	return ec.marshalOEmbeddedCase32ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐEmbeddedCase3(ctx, field.Selections, res)
  2254  }
  2255  
  2256  func (ec *executionContext) _Query_enumInInput(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2257  	defer func() {
  2258  		if r := recover(); r != nil {
  2259  			ec.Error(ctx, ec.Recover(ctx, r))
  2260  			ret = graphql.Null
  2261  		}
  2262  	}()
  2263  	fc := &graphql.FieldContext{
  2264  		Object:     "Query",
  2265  		Field:      field,
  2266  		Args:       nil,
  2267  		IsMethod:   true,
  2268  		IsResolver: true,
  2269  	}
  2270  
  2271  	ctx = graphql.WithFieldContext(ctx, fc)
  2272  	rawArgs := field.ArgumentMap(ec.Variables)
  2273  	args, err := ec.field_Query_enumInInput_args(ctx, rawArgs)
  2274  	if err != nil {
  2275  		ec.Error(ctx, err)
  2276  		return graphql.Null
  2277  	}
  2278  	fc.Args = args
  2279  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2280  		ctx = rctx // use context from middleware stack in children
  2281  		return ec.resolvers.Query().EnumInInput(rctx, args["input"].(*InputWithEnumValue))
  2282  	})
  2283  
  2284  	if resTmp == nil {
  2285  		if !graphql.HasFieldError(ctx, fc) {
  2286  			ec.Errorf(ctx, "must not be null")
  2287  		}
  2288  		return graphql.Null
  2289  	}
  2290  	res := resTmp.(EnumTest)
  2291  	fc.Result = res
  2292  	return ec.marshalNEnumTest2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐEnumTest(ctx, field.Selections, res)
  2293  }
  2294  
  2295  func (ec *executionContext) _Query_shapes(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2296  	defer func() {
  2297  		if r := recover(); r != nil {
  2298  			ec.Error(ctx, ec.Recover(ctx, r))
  2299  			ret = graphql.Null
  2300  		}
  2301  	}()
  2302  	fc := &graphql.FieldContext{
  2303  		Object:     "Query",
  2304  		Field:      field,
  2305  		Args:       nil,
  2306  		IsMethod:   true,
  2307  		IsResolver: true,
  2308  	}
  2309  
  2310  	ctx = graphql.WithFieldContext(ctx, fc)
  2311  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2312  		ctx = rctx // use context from middleware stack in children
  2313  		return ec.resolvers.Query().Shapes(rctx)
  2314  	})
  2315  
  2316  	if resTmp == nil {
  2317  		return graphql.Null
  2318  	}
  2319  	res := resTmp.([]Shape)
  2320  	fc.Result = res
  2321  	return ec.marshalOShape2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐShape(ctx, field.Selections, res)
  2322  }
  2323  
  2324  func (ec *executionContext) _Query_noShape(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2325  	defer func() {
  2326  		if r := recover(); r != nil {
  2327  			ec.Error(ctx, ec.Recover(ctx, r))
  2328  			ret = graphql.Null
  2329  		}
  2330  	}()
  2331  	fc := &graphql.FieldContext{
  2332  		Object:     "Query",
  2333  		Field:      field,
  2334  		Args:       nil,
  2335  		IsMethod:   true,
  2336  		IsResolver: true,
  2337  	}
  2338  
  2339  	ctx = graphql.WithFieldContext(ctx, fc)
  2340  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2341  		directive0 := func(rctx context.Context) (interface{}, error) {
  2342  			ctx = rctx // use context from middleware stack in children
  2343  			return ec.resolvers.Query().NoShape(rctx)
  2344  		}
  2345  		directive1 := func(ctx context.Context) (interface{}, error) {
  2346  			if ec.directives.MakeNil == nil {
  2347  				return nil, errors.New("directive makeNil is not implemented")
  2348  			}
  2349  			return ec.directives.MakeNil(ctx, nil, directive0)
  2350  		}
  2351  
  2352  		tmp, err := directive1(rctx)
  2353  		if err != nil {
  2354  			return nil, graphql.ErrorOnPath(ctx, err)
  2355  		}
  2356  		if tmp == nil {
  2357  			return nil, nil
  2358  		}
  2359  		if data, ok := tmp.(Shape); ok {
  2360  			return data, nil
  2361  		}
  2362  		return nil, fmt.Errorf(`unexpected type %T from directive, should be github.com/99designs/gqlgen/codegen/testserver/followschema.Shape`, tmp)
  2363  	})
  2364  
  2365  	if resTmp == nil {
  2366  		return graphql.Null
  2367  	}
  2368  	res := resTmp.(Shape)
  2369  	fc.Result = res
  2370  	return ec.marshalOShape2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐShape(ctx, field.Selections, res)
  2371  }
  2372  
  2373  func (ec *executionContext) _Query_node(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2374  	defer func() {
  2375  		if r := recover(); r != nil {
  2376  			ec.Error(ctx, ec.Recover(ctx, r))
  2377  			ret = graphql.Null
  2378  		}
  2379  	}()
  2380  	fc := &graphql.FieldContext{
  2381  		Object:     "Query",
  2382  		Field:      field,
  2383  		Args:       nil,
  2384  		IsMethod:   true,
  2385  		IsResolver: true,
  2386  	}
  2387  
  2388  	ctx = graphql.WithFieldContext(ctx, fc)
  2389  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2390  		ctx = rctx // use context from middleware stack in children
  2391  		return ec.resolvers.Query().Node(rctx)
  2392  	})
  2393  
  2394  	if resTmp == nil {
  2395  		if !graphql.HasFieldError(ctx, fc) {
  2396  			ec.Errorf(ctx, "must not be null")
  2397  		}
  2398  		return graphql.Null
  2399  	}
  2400  	res := resTmp.(Node)
  2401  	fc.Result = res
  2402  	return ec.marshalNNode2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐNode(ctx, field.Selections, res)
  2403  }
  2404  
  2405  func (ec *executionContext) _Query_noShapeTypedNil(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2406  	defer func() {
  2407  		if r := recover(); r != nil {
  2408  			ec.Error(ctx, ec.Recover(ctx, r))
  2409  			ret = graphql.Null
  2410  		}
  2411  	}()
  2412  	fc := &graphql.FieldContext{
  2413  		Object:     "Query",
  2414  		Field:      field,
  2415  		Args:       nil,
  2416  		IsMethod:   true,
  2417  		IsResolver: true,
  2418  	}
  2419  
  2420  	ctx = graphql.WithFieldContext(ctx, fc)
  2421  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2422  		directive0 := func(rctx context.Context) (interface{}, error) {
  2423  			ctx = rctx // use context from middleware stack in children
  2424  			return ec.resolvers.Query().NoShapeTypedNil(rctx)
  2425  		}
  2426  		directive1 := func(ctx context.Context) (interface{}, error) {
  2427  			if ec.directives.MakeTypedNil == nil {
  2428  				return nil, errors.New("directive makeTypedNil is not implemented")
  2429  			}
  2430  			return ec.directives.MakeTypedNil(ctx, nil, directive0)
  2431  		}
  2432  
  2433  		tmp, err := directive1(rctx)
  2434  		if err != nil {
  2435  			return nil, graphql.ErrorOnPath(ctx, err)
  2436  		}
  2437  		if tmp == nil {
  2438  			return nil, nil
  2439  		}
  2440  		if data, ok := tmp.(Shape); ok {
  2441  			return data, nil
  2442  		}
  2443  		return nil, fmt.Errorf(`unexpected type %T from directive, should be github.com/99designs/gqlgen/codegen/testserver/followschema.Shape`, tmp)
  2444  	})
  2445  
  2446  	if resTmp == nil {
  2447  		return graphql.Null
  2448  	}
  2449  	res := resTmp.(Shape)
  2450  	fc.Result = res
  2451  	return ec.marshalOShape2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐShape(ctx, field.Selections, res)
  2452  }
  2453  
  2454  func (ec *executionContext) _Query_animal(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2455  	defer func() {
  2456  		if r := recover(); r != nil {
  2457  			ec.Error(ctx, ec.Recover(ctx, r))
  2458  			ret = graphql.Null
  2459  		}
  2460  	}()
  2461  	fc := &graphql.FieldContext{
  2462  		Object:     "Query",
  2463  		Field:      field,
  2464  		Args:       nil,
  2465  		IsMethod:   true,
  2466  		IsResolver: true,
  2467  	}
  2468  
  2469  	ctx = graphql.WithFieldContext(ctx, fc)
  2470  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2471  		directive0 := func(rctx context.Context) (interface{}, error) {
  2472  			ctx = rctx // use context from middleware stack in children
  2473  			return ec.resolvers.Query().Animal(rctx)
  2474  		}
  2475  		directive1 := func(ctx context.Context) (interface{}, error) {
  2476  			if ec.directives.MakeTypedNil == nil {
  2477  				return nil, errors.New("directive makeTypedNil is not implemented")
  2478  			}
  2479  			return ec.directives.MakeTypedNil(ctx, nil, directive0)
  2480  		}
  2481  
  2482  		tmp, err := directive1(rctx)
  2483  		if err != nil {
  2484  			return nil, graphql.ErrorOnPath(ctx, err)
  2485  		}
  2486  		if tmp == nil {
  2487  			return nil, nil
  2488  		}
  2489  		if data, ok := tmp.(Animal); ok {
  2490  			return data, nil
  2491  		}
  2492  		return nil, fmt.Errorf(`unexpected type %T from directive, should be github.com/99designs/gqlgen/codegen/testserver/followschema.Animal`, tmp)
  2493  	})
  2494  
  2495  	if resTmp == nil {
  2496  		return graphql.Null
  2497  	}
  2498  	res := resTmp.(Animal)
  2499  	fc.Result = res
  2500  	return ec.marshalOAnimal2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐAnimal(ctx, field.Selections, res)
  2501  }
  2502  
  2503  func (ec *executionContext) _Query_notAnInterface(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2504  	defer func() {
  2505  		if r := recover(); r != nil {
  2506  			ec.Error(ctx, ec.Recover(ctx, r))
  2507  			ret = graphql.Null
  2508  		}
  2509  	}()
  2510  	fc := &graphql.FieldContext{
  2511  		Object:     "Query",
  2512  		Field:      field,
  2513  		Args:       nil,
  2514  		IsMethod:   true,
  2515  		IsResolver: true,
  2516  	}
  2517  
  2518  	ctx = graphql.WithFieldContext(ctx, fc)
  2519  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2520  		ctx = rctx // use context from middleware stack in children
  2521  		return ec.resolvers.Query().NotAnInterface(rctx)
  2522  	})
  2523  
  2524  	if resTmp == nil {
  2525  		return graphql.Null
  2526  	}
  2527  	res := resTmp.(BackedByInterface)
  2528  	fc.Result = res
  2529  	return ec.marshalOBackedByInterface2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐBackedByInterface(ctx, field.Selections, res)
  2530  }
  2531  
  2532  func (ec *executionContext) _Query_issue896a(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2533  	defer func() {
  2534  		if r := recover(); r != nil {
  2535  			ec.Error(ctx, ec.Recover(ctx, r))
  2536  			ret = graphql.Null
  2537  		}
  2538  	}()
  2539  	fc := &graphql.FieldContext{
  2540  		Object:     "Query",
  2541  		Field:      field,
  2542  		Args:       nil,
  2543  		IsMethod:   true,
  2544  		IsResolver: true,
  2545  	}
  2546  
  2547  	ctx = graphql.WithFieldContext(ctx, fc)
  2548  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2549  		ctx = rctx // use context from middleware stack in children
  2550  		return ec.resolvers.Query().Issue896a(rctx)
  2551  	})
  2552  
  2553  	if resTmp == nil {
  2554  		return graphql.Null
  2555  	}
  2556  	res := resTmp.([]*CheckIssue896)
  2557  	fc.Result = res
  2558  	return ec.marshalOCheckIssue8962ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐCheckIssue896ᚄ(ctx, field.Selections, res)
  2559  }
  2560  
  2561  func (ec *executionContext) _Query_mapStringInterface(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2562  	defer func() {
  2563  		if r := recover(); r != nil {
  2564  			ec.Error(ctx, ec.Recover(ctx, r))
  2565  			ret = graphql.Null
  2566  		}
  2567  	}()
  2568  	fc := &graphql.FieldContext{
  2569  		Object:     "Query",
  2570  		Field:      field,
  2571  		Args:       nil,
  2572  		IsMethod:   true,
  2573  		IsResolver: true,
  2574  	}
  2575  
  2576  	ctx = graphql.WithFieldContext(ctx, fc)
  2577  	rawArgs := field.ArgumentMap(ec.Variables)
  2578  	args, err := ec.field_Query_mapStringInterface_args(ctx, rawArgs)
  2579  	if err != nil {
  2580  		ec.Error(ctx, err)
  2581  		return graphql.Null
  2582  	}
  2583  	fc.Args = args
  2584  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2585  		ctx = rctx // use context from middleware stack in children
  2586  		return ec.resolvers.Query().MapStringInterface(rctx, args["in"].(map[string]interface{}))
  2587  	})
  2588  
  2589  	if resTmp == nil {
  2590  		return graphql.Null
  2591  	}
  2592  	res := resTmp.(map[string]interface{})
  2593  	fc.Result = res
  2594  	return ec.marshalOMapStringInterfaceType2map(ctx, field.Selections, res)
  2595  }
  2596  
  2597  func (ec *executionContext) _Query_mapNestedStringInterface(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2598  	defer func() {
  2599  		if r := recover(); r != nil {
  2600  			ec.Error(ctx, ec.Recover(ctx, r))
  2601  			ret = graphql.Null
  2602  		}
  2603  	}()
  2604  	fc := &graphql.FieldContext{
  2605  		Object:     "Query",
  2606  		Field:      field,
  2607  		Args:       nil,
  2608  		IsMethod:   true,
  2609  		IsResolver: true,
  2610  	}
  2611  
  2612  	ctx = graphql.WithFieldContext(ctx, fc)
  2613  	rawArgs := field.ArgumentMap(ec.Variables)
  2614  	args, err := ec.field_Query_mapNestedStringInterface_args(ctx, rawArgs)
  2615  	if err != nil {
  2616  		ec.Error(ctx, err)
  2617  		return graphql.Null
  2618  	}
  2619  	fc.Args = args
  2620  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2621  		ctx = rctx // use context from middleware stack in children
  2622  		return ec.resolvers.Query().MapNestedStringInterface(rctx, args["in"].(*NestedMapInput))
  2623  	})
  2624  
  2625  	if resTmp == nil {
  2626  		return graphql.Null
  2627  	}
  2628  	res := resTmp.(map[string]interface{})
  2629  	fc.Result = res
  2630  	return ec.marshalOMapStringInterfaceType2map(ctx, field.Selections, res)
  2631  }
  2632  
  2633  func (ec *executionContext) _Query_errorBubble(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2634  	defer func() {
  2635  		if r := recover(); r != nil {
  2636  			ec.Error(ctx, ec.Recover(ctx, r))
  2637  			ret = graphql.Null
  2638  		}
  2639  	}()
  2640  	fc := &graphql.FieldContext{
  2641  		Object:     "Query",
  2642  		Field:      field,
  2643  		Args:       nil,
  2644  		IsMethod:   true,
  2645  		IsResolver: true,
  2646  	}
  2647  
  2648  	ctx = graphql.WithFieldContext(ctx, fc)
  2649  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2650  		ctx = rctx // use context from middleware stack in children
  2651  		return ec.resolvers.Query().ErrorBubble(rctx)
  2652  	})
  2653  
  2654  	if resTmp == nil {
  2655  		return graphql.Null
  2656  	}
  2657  	res := resTmp.(*Error)
  2658  	fc.Result = res
  2659  	return ec.marshalOError2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐError(ctx, field.Selections, res)
  2660  }
  2661  
  2662  func (ec *executionContext) _Query_errorBubbleList(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2663  	defer func() {
  2664  		if r := recover(); r != nil {
  2665  			ec.Error(ctx, ec.Recover(ctx, r))
  2666  			ret = graphql.Null
  2667  		}
  2668  	}()
  2669  	fc := &graphql.FieldContext{
  2670  		Object:     "Query",
  2671  		Field:      field,
  2672  		Args:       nil,
  2673  		IsMethod:   true,
  2674  		IsResolver: true,
  2675  	}
  2676  
  2677  	ctx = graphql.WithFieldContext(ctx, fc)
  2678  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2679  		ctx = rctx // use context from middleware stack in children
  2680  		return ec.resolvers.Query().ErrorBubbleList(rctx)
  2681  	})
  2682  
  2683  	if resTmp == nil {
  2684  		return graphql.Null
  2685  	}
  2686  	res := resTmp.([]*Error)
  2687  	fc.Result = res
  2688  	return ec.marshalOError2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐErrorᚄ(ctx, field.Selections, res)
  2689  }
  2690  
  2691  func (ec *executionContext) _Query_errorList(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2692  	defer func() {
  2693  		if r := recover(); r != nil {
  2694  			ec.Error(ctx, ec.Recover(ctx, r))
  2695  			ret = graphql.Null
  2696  		}
  2697  	}()
  2698  	fc := &graphql.FieldContext{
  2699  		Object:     "Query",
  2700  		Field:      field,
  2701  		Args:       nil,
  2702  		IsMethod:   true,
  2703  		IsResolver: true,
  2704  	}
  2705  
  2706  	ctx = graphql.WithFieldContext(ctx, fc)
  2707  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2708  		ctx = rctx // use context from middleware stack in children
  2709  		return ec.resolvers.Query().ErrorList(rctx)
  2710  	})
  2711  
  2712  	if resTmp == nil {
  2713  		return graphql.Null
  2714  	}
  2715  	res := resTmp.([]*Error)
  2716  	fc.Result = res
  2717  	return ec.marshalOError2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐError(ctx, field.Selections, res)
  2718  }
  2719  
  2720  func (ec *executionContext) _Query_errors(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2721  	defer func() {
  2722  		if r := recover(); r != nil {
  2723  			ec.Error(ctx, ec.Recover(ctx, r))
  2724  			ret = graphql.Null
  2725  		}
  2726  	}()
  2727  	fc := &graphql.FieldContext{
  2728  		Object:     "Query",
  2729  		Field:      field,
  2730  		Args:       nil,
  2731  		IsMethod:   true,
  2732  		IsResolver: true,
  2733  	}
  2734  
  2735  	ctx = graphql.WithFieldContext(ctx, fc)
  2736  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2737  		ctx = rctx // use context from middleware stack in children
  2738  		return ec.resolvers.Query().Errors(rctx)
  2739  	})
  2740  
  2741  	if resTmp == nil {
  2742  		return graphql.Null
  2743  	}
  2744  	res := resTmp.(*Errors)
  2745  	fc.Result = res
  2746  	return ec.marshalOErrors2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐErrors(ctx, field.Selections, res)
  2747  }
  2748  
  2749  func (ec *executionContext) _Query_valid(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2750  	defer func() {
  2751  		if r := recover(); r != nil {
  2752  			ec.Error(ctx, ec.Recover(ctx, r))
  2753  			ret = graphql.Null
  2754  		}
  2755  	}()
  2756  	fc := &graphql.FieldContext{
  2757  		Object:     "Query",
  2758  		Field:      field,
  2759  		Args:       nil,
  2760  		IsMethod:   true,
  2761  		IsResolver: true,
  2762  	}
  2763  
  2764  	ctx = graphql.WithFieldContext(ctx, fc)
  2765  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2766  		ctx = rctx // use context from middleware stack in children
  2767  		return ec.resolvers.Query().Valid(rctx)
  2768  	})
  2769  
  2770  	if resTmp == nil {
  2771  		if !graphql.HasFieldError(ctx, fc) {
  2772  			ec.Errorf(ctx, "must not be null")
  2773  		}
  2774  		return graphql.Null
  2775  	}
  2776  	res := resTmp.(string)
  2777  	fc.Result = res
  2778  	return ec.marshalNString2string(ctx, field.Selections, res)
  2779  }
  2780  
  2781  func (ec *executionContext) _Query_panics(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2782  	defer func() {
  2783  		if r := recover(); r != nil {
  2784  			ec.Error(ctx, ec.Recover(ctx, r))
  2785  			ret = graphql.Null
  2786  		}
  2787  	}()
  2788  	fc := &graphql.FieldContext{
  2789  		Object:     "Query",
  2790  		Field:      field,
  2791  		Args:       nil,
  2792  		IsMethod:   true,
  2793  		IsResolver: true,
  2794  	}
  2795  
  2796  	ctx = graphql.WithFieldContext(ctx, fc)
  2797  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2798  		ctx = rctx // use context from middleware stack in children
  2799  		return ec.resolvers.Query().Panics(rctx)
  2800  	})
  2801  
  2802  	if resTmp == nil {
  2803  		return graphql.Null
  2804  	}
  2805  	res := resTmp.(*Panics)
  2806  	fc.Result = res
  2807  	return ec.marshalOPanics2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐPanics(ctx, field.Selections, res)
  2808  }
  2809  
  2810  func (ec *executionContext) _Query_primitiveObject(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2811  	defer func() {
  2812  		if r := recover(); r != nil {
  2813  			ec.Error(ctx, ec.Recover(ctx, r))
  2814  			ret = graphql.Null
  2815  		}
  2816  	}()
  2817  	fc := &graphql.FieldContext{
  2818  		Object:     "Query",
  2819  		Field:      field,
  2820  		Args:       nil,
  2821  		IsMethod:   true,
  2822  		IsResolver: true,
  2823  	}
  2824  
  2825  	ctx = graphql.WithFieldContext(ctx, fc)
  2826  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2827  		ctx = rctx // use context from middleware stack in children
  2828  		return ec.resolvers.Query().PrimitiveObject(rctx)
  2829  	})
  2830  
  2831  	if resTmp == nil {
  2832  		if !graphql.HasFieldError(ctx, fc) {
  2833  			ec.Errorf(ctx, "must not be null")
  2834  		}
  2835  		return graphql.Null
  2836  	}
  2837  	res := resTmp.([]Primitive)
  2838  	fc.Result = res
  2839  	return ec.marshalNPrimitive2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐPrimitiveᚄ(ctx, field.Selections, res)
  2840  }
  2841  
  2842  func (ec *executionContext) _Query_primitiveStringObject(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2843  	defer func() {
  2844  		if r := recover(); r != nil {
  2845  			ec.Error(ctx, ec.Recover(ctx, r))
  2846  			ret = graphql.Null
  2847  		}
  2848  	}()
  2849  	fc := &graphql.FieldContext{
  2850  		Object:     "Query",
  2851  		Field:      field,
  2852  		Args:       nil,
  2853  		IsMethod:   true,
  2854  		IsResolver: true,
  2855  	}
  2856  
  2857  	ctx = graphql.WithFieldContext(ctx, fc)
  2858  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2859  		ctx = rctx // use context from middleware stack in children
  2860  		return ec.resolvers.Query().PrimitiveStringObject(rctx)
  2861  	})
  2862  
  2863  	if resTmp == nil {
  2864  		if !graphql.HasFieldError(ctx, fc) {
  2865  			ec.Errorf(ctx, "must not be null")
  2866  		}
  2867  		return graphql.Null
  2868  	}
  2869  	res := resTmp.([]PrimitiveString)
  2870  	fc.Result = res
  2871  	return ec.marshalNPrimitiveString2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐPrimitiveStringᚄ(ctx, field.Selections, res)
  2872  }
  2873  
  2874  func (ec *executionContext) _Query_ptrToSliceContainer(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2875  	defer func() {
  2876  		if r := recover(); r != nil {
  2877  			ec.Error(ctx, ec.Recover(ctx, r))
  2878  			ret = graphql.Null
  2879  		}
  2880  	}()
  2881  	fc := &graphql.FieldContext{
  2882  		Object:     "Query",
  2883  		Field:      field,
  2884  		Args:       nil,
  2885  		IsMethod:   true,
  2886  		IsResolver: true,
  2887  	}
  2888  
  2889  	ctx = graphql.WithFieldContext(ctx, fc)
  2890  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2891  		ctx = rctx // use context from middleware stack in children
  2892  		return ec.resolvers.Query().PtrToSliceContainer(rctx)
  2893  	})
  2894  
  2895  	if resTmp == nil {
  2896  		if !graphql.HasFieldError(ctx, fc) {
  2897  			ec.Errorf(ctx, "must not be null")
  2898  		}
  2899  		return graphql.Null
  2900  	}
  2901  	res := resTmp.(*PtrToSliceContainer)
  2902  	fc.Result = res
  2903  	return ec.marshalNPtrToSliceContainer2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐPtrToSliceContainer(ctx, field.Selections, res)
  2904  }
  2905  
  2906  func (ec *executionContext) _Query_infinity(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2907  	defer func() {
  2908  		if r := recover(); r != nil {
  2909  			ec.Error(ctx, ec.Recover(ctx, r))
  2910  			ret = graphql.Null
  2911  		}
  2912  	}()
  2913  	fc := &graphql.FieldContext{
  2914  		Object:     "Query",
  2915  		Field:      field,
  2916  		Args:       nil,
  2917  		IsMethod:   true,
  2918  		IsResolver: true,
  2919  	}
  2920  
  2921  	ctx = graphql.WithFieldContext(ctx, fc)
  2922  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2923  		ctx = rctx // use context from middleware stack in children
  2924  		return ec.resolvers.Query().Infinity(rctx)
  2925  	})
  2926  
  2927  	if resTmp == nil {
  2928  		if !graphql.HasFieldError(ctx, fc) {
  2929  			ec.Errorf(ctx, "must not be null")
  2930  		}
  2931  		return graphql.Null
  2932  	}
  2933  	res := resTmp.(float64)
  2934  	fc.Result = res
  2935  	return ec.marshalNFloat2float64(ctx, field.Selections, res)
  2936  }
  2937  
  2938  func (ec *executionContext) _Query_stringFromContextInterface(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2939  	defer func() {
  2940  		if r := recover(); r != nil {
  2941  			ec.Error(ctx, ec.Recover(ctx, r))
  2942  			ret = graphql.Null
  2943  		}
  2944  	}()
  2945  	fc := &graphql.FieldContext{
  2946  		Object:     "Query",
  2947  		Field:      field,
  2948  		Args:       nil,
  2949  		IsMethod:   true,
  2950  		IsResolver: true,
  2951  	}
  2952  
  2953  	ctx = graphql.WithFieldContext(ctx, fc)
  2954  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2955  		ctx = rctx // use context from middleware stack in children
  2956  		return ec.resolvers.Query().StringFromContextInterface(rctx)
  2957  	})
  2958  
  2959  	if resTmp == nil {
  2960  		if !graphql.HasFieldError(ctx, fc) {
  2961  			ec.Errorf(ctx, "must not be null")
  2962  		}
  2963  		return graphql.Null
  2964  	}
  2965  	res := resTmp.(*StringFromContextInterface)
  2966  	fc.Result = res
  2967  	return ec.marshalNStringFromContextInterface2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐStringFromContextInterface(ctx, field.Selections, res)
  2968  }
  2969  
  2970  func (ec *executionContext) _Query_stringFromContextFunction(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  2971  	defer func() {
  2972  		if r := recover(); r != nil {
  2973  			ec.Error(ctx, ec.Recover(ctx, r))
  2974  			ret = graphql.Null
  2975  		}
  2976  	}()
  2977  	fc := &graphql.FieldContext{
  2978  		Object:     "Query",
  2979  		Field:      field,
  2980  		Args:       nil,
  2981  		IsMethod:   true,
  2982  		IsResolver: true,
  2983  	}
  2984  
  2985  	ctx = graphql.WithFieldContext(ctx, fc)
  2986  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  2987  		ctx = rctx // use context from middleware stack in children
  2988  		return ec.resolvers.Query().StringFromContextFunction(rctx)
  2989  	})
  2990  
  2991  	if resTmp == nil {
  2992  		if !graphql.HasFieldError(ctx, fc) {
  2993  			ec.Errorf(ctx, "must not be null")
  2994  		}
  2995  		return graphql.Null
  2996  	}
  2997  	res := resTmp.(string)
  2998  	fc.Result = res
  2999  	return ec.marshalNStringFromContextFunction2string(ctx, field.Selections, res)
  3000  }
  3001  
  3002  func (ec *executionContext) _Query_defaultScalar(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3003  	defer func() {
  3004  		if r := recover(); r != nil {
  3005  			ec.Error(ctx, ec.Recover(ctx, r))
  3006  			ret = graphql.Null
  3007  		}
  3008  	}()
  3009  	fc := &graphql.FieldContext{
  3010  		Object:     "Query",
  3011  		Field:      field,
  3012  		Args:       nil,
  3013  		IsMethod:   true,
  3014  		IsResolver: true,
  3015  	}
  3016  
  3017  	ctx = graphql.WithFieldContext(ctx, fc)
  3018  	rawArgs := field.ArgumentMap(ec.Variables)
  3019  	args, err := ec.field_Query_defaultScalar_args(ctx, rawArgs)
  3020  	if err != nil {
  3021  		ec.Error(ctx, err)
  3022  		return graphql.Null
  3023  	}
  3024  	fc.Args = args
  3025  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3026  		ctx = rctx // use context from middleware stack in children
  3027  		return ec.resolvers.Query().DefaultScalar(rctx, args["arg"].(string))
  3028  	})
  3029  
  3030  	if resTmp == nil {
  3031  		if !graphql.HasFieldError(ctx, fc) {
  3032  			ec.Errorf(ctx, "must not be null")
  3033  		}
  3034  		return graphql.Null
  3035  	}
  3036  	res := resTmp.(string)
  3037  	fc.Result = res
  3038  	return ec.marshalNDefaultScalarImplementation2string(ctx, field.Selections, res)
  3039  }
  3040  
  3041  func (ec *executionContext) _Query_slices(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3042  	defer func() {
  3043  		if r := recover(); r != nil {
  3044  			ec.Error(ctx, ec.Recover(ctx, r))
  3045  			ret = graphql.Null
  3046  		}
  3047  	}()
  3048  	fc := &graphql.FieldContext{
  3049  		Object:     "Query",
  3050  		Field:      field,
  3051  		Args:       nil,
  3052  		IsMethod:   true,
  3053  		IsResolver: true,
  3054  	}
  3055  
  3056  	ctx = graphql.WithFieldContext(ctx, fc)
  3057  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3058  		ctx = rctx // use context from middleware stack in children
  3059  		return ec.resolvers.Query().Slices(rctx)
  3060  	})
  3061  
  3062  	if resTmp == nil {
  3063  		return graphql.Null
  3064  	}
  3065  	res := resTmp.(*Slices)
  3066  	fc.Result = res
  3067  	return ec.marshalOSlices2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐSlices(ctx, field.Selections, res)
  3068  }
  3069  
  3070  func (ec *executionContext) _Query_scalarSlice(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3071  	defer func() {
  3072  		if r := recover(); r != nil {
  3073  			ec.Error(ctx, ec.Recover(ctx, r))
  3074  			ret = graphql.Null
  3075  		}
  3076  	}()
  3077  	fc := &graphql.FieldContext{
  3078  		Object:     "Query",
  3079  		Field:      field,
  3080  		Args:       nil,
  3081  		IsMethod:   true,
  3082  		IsResolver: true,
  3083  	}
  3084  
  3085  	ctx = graphql.WithFieldContext(ctx, fc)
  3086  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3087  		ctx = rctx // use context from middleware stack in children
  3088  		return ec.resolvers.Query().ScalarSlice(rctx)
  3089  	})
  3090  
  3091  	if resTmp == nil {
  3092  		if !graphql.HasFieldError(ctx, fc) {
  3093  			ec.Errorf(ctx, "must not be null")
  3094  		}
  3095  		return graphql.Null
  3096  	}
  3097  	res := resTmp.([]byte)
  3098  	fc.Result = res
  3099  	return ec.marshalNBytes2ᚕbyte(ctx, field.Selections, res)
  3100  }
  3101  
  3102  func (ec *executionContext) _Query_fallback(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3103  	defer func() {
  3104  		if r := recover(); r != nil {
  3105  			ec.Error(ctx, ec.Recover(ctx, r))
  3106  			ret = graphql.Null
  3107  		}
  3108  	}()
  3109  	fc := &graphql.FieldContext{
  3110  		Object:     "Query",
  3111  		Field:      field,
  3112  		Args:       nil,
  3113  		IsMethod:   true,
  3114  		IsResolver: true,
  3115  	}
  3116  
  3117  	ctx = graphql.WithFieldContext(ctx, fc)
  3118  	rawArgs := field.ArgumentMap(ec.Variables)
  3119  	args, err := ec.field_Query_fallback_args(ctx, rawArgs)
  3120  	if err != nil {
  3121  		ec.Error(ctx, err)
  3122  		return graphql.Null
  3123  	}
  3124  	fc.Args = args
  3125  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3126  		ctx = rctx // use context from middleware stack in children
  3127  		return ec.resolvers.Query().Fallback(rctx, args["arg"].(FallbackToStringEncoding))
  3128  	})
  3129  
  3130  	if resTmp == nil {
  3131  		if !graphql.HasFieldError(ctx, fc) {
  3132  			ec.Errorf(ctx, "must not be null")
  3133  		}
  3134  		return graphql.Null
  3135  	}
  3136  	res := resTmp.(FallbackToStringEncoding)
  3137  	fc.Result = res
  3138  	return ec.marshalNFallbackToStringEncoding2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐFallbackToStringEncoding(ctx, field.Selections, res)
  3139  }
  3140  
  3141  func (ec *executionContext) _Query_optionalUnion(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3142  	defer func() {
  3143  		if r := recover(); r != nil {
  3144  			ec.Error(ctx, ec.Recover(ctx, r))
  3145  			ret = graphql.Null
  3146  		}
  3147  	}()
  3148  	fc := &graphql.FieldContext{
  3149  		Object:     "Query",
  3150  		Field:      field,
  3151  		Args:       nil,
  3152  		IsMethod:   true,
  3153  		IsResolver: true,
  3154  	}
  3155  
  3156  	ctx = graphql.WithFieldContext(ctx, fc)
  3157  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3158  		ctx = rctx // use context from middleware stack in children
  3159  		return ec.resolvers.Query().OptionalUnion(rctx)
  3160  	})
  3161  
  3162  	if resTmp == nil {
  3163  		return graphql.Null
  3164  	}
  3165  	res := resTmp.(TestUnion)
  3166  	fc.Result = res
  3167  	return ec.marshalOTestUnion2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐTestUnion(ctx, field.Selections, res)
  3168  }
  3169  
  3170  func (ec *executionContext) _Query_vOkCaseValue(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3171  	defer func() {
  3172  		if r := recover(); r != nil {
  3173  			ec.Error(ctx, ec.Recover(ctx, r))
  3174  			ret = graphql.Null
  3175  		}
  3176  	}()
  3177  	fc := &graphql.FieldContext{
  3178  		Object:     "Query",
  3179  		Field:      field,
  3180  		Args:       nil,
  3181  		IsMethod:   true,
  3182  		IsResolver: true,
  3183  	}
  3184  
  3185  	ctx = graphql.WithFieldContext(ctx, fc)
  3186  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3187  		ctx = rctx // use context from middleware stack in children
  3188  		return ec.resolvers.Query().VOkCaseValue(rctx)
  3189  	})
  3190  
  3191  	if resTmp == nil {
  3192  		return graphql.Null
  3193  	}
  3194  	res := resTmp.(*VOkCaseValue)
  3195  	fc.Result = res
  3196  	return ec.marshalOVOkCaseValue2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐVOkCaseValue(ctx, field.Selections, res)
  3197  }
  3198  
  3199  func (ec *executionContext) _Query_vOkCaseNil(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3200  	defer func() {
  3201  		if r := recover(); r != nil {
  3202  			ec.Error(ctx, ec.Recover(ctx, r))
  3203  			ret = graphql.Null
  3204  		}
  3205  	}()
  3206  	fc := &graphql.FieldContext{
  3207  		Object:     "Query",
  3208  		Field:      field,
  3209  		Args:       nil,
  3210  		IsMethod:   true,
  3211  		IsResolver: true,
  3212  	}
  3213  
  3214  	ctx = graphql.WithFieldContext(ctx, fc)
  3215  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3216  		ctx = rctx // use context from middleware stack in children
  3217  		return ec.resolvers.Query().VOkCaseNil(rctx)
  3218  	})
  3219  
  3220  	if resTmp == nil {
  3221  		return graphql.Null
  3222  	}
  3223  	res := resTmp.(*VOkCaseNil)
  3224  	fc.Result = res
  3225  	return ec.marshalOVOkCaseNil2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐVOkCaseNil(ctx, field.Selections, res)
  3226  }
  3227  
  3228  func (ec *executionContext) _Query_validType(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3229  	defer func() {
  3230  		if r := recover(); r != nil {
  3231  			ec.Error(ctx, ec.Recover(ctx, r))
  3232  			ret = graphql.Null
  3233  		}
  3234  	}()
  3235  	fc := &graphql.FieldContext{
  3236  		Object:     "Query",
  3237  		Field:      field,
  3238  		Args:       nil,
  3239  		IsMethod:   true,
  3240  		IsResolver: true,
  3241  	}
  3242  
  3243  	ctx = graphql.WithFieldContext(ctx, fc)
  3244  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3245  		ctx = rctx // use context from middleware stack in children
  3246  		return ec.resolvers.Query().ValidType(rctx)
  3247  	})
  3248  
  3249  	if resTmp == nil {
  3250  		return graphql.Null
  3251  	}
  3252  	res := resTmp.(*ValidType)
  3253  	fc.Result = res
  3254  	return ec.marshalOValidType2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐValidType(ctx, field.Selections, res)
  3255  }
  3256  
  3257  func (ec *executionContext) _Query_wrappedStruct(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3258  	defer func() {
  3259  		if r := recover(); r != nil {
  3260  			ec.Error(ctx, ec.Recover(ctx, r))
  3261  			ret = graphql.Null
  3262  		}
  3263  	}()
  3264  	fc := &graphql.FieldContext{
  3265  		Object:     "Query",
  3266  		Field:      field,
  3267  		Args:       nil,
  3268  		IsMethod:   true,
  3269  		IsResolver: true,
  3270  	}
  3271  
  3272  	ctx = graphql.WithFieldContext(ctx, fc)
  3273  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3274  		ctx = rctx // use context from middleware stack in children
  3275  		return ec.resolvers.Query().WrappedStruct(rctx)
  3276  	})
  3277  
  3278  	if resTmp == nil {
  3279  		if !graphql.HasFieldError(ctx, fc) {
  3280  			ec.Errorf(ctx, "must not be null")
  3281  		}
  3282  		return graphql.Null
  3283  	}
  3284  	res := resTmp.(*WrappedStruct)
  3285  	fc.Result = res
  3286  	return ec.marshalNWrappedStruct2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐWrappedStruct(ctx, field.Selections, res)
  3287  }
  3288  
  3289  func (ec *executionContext) _Query_wrappedScalar(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3290  	defer func() {
  3291  		if r := recover(); r != nil {
  3292  			ec.Error(ctx, ec.Recover(ctx, r))
  3293  			ret = graphql.Null
  3294  		}
  3295  	}()
  3296  	fc := &graphql.FieldContext{
  3297  		Object:     "Query",
  3298  		Field:      field,
  3299  		Args:       nil,
  3300  		IsMethod:   true,
  3301  		IsResolver: true,
  3302  	}
  3303  
  3304  	ctx = graphql.WithFieldContext(ctx, fc)
  3305  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3306  		ctx = rctx // use context from middleware stack in children
  3307  		return ec.resolvers.Query().WrappedScalar(rctx)
  3308  	})
  3309  
  3310  	if resTmp == nil {
  3311  		if !graphql.HasFieldError(ctx, fc) {
  3312  			ec.Errorf(ctx, "must not be null")
  3313  		}
  3314  		return graphql.Null
  3315  	}
  3316  	res := resTmp.(otherpkg.Scalar)
  3317  	fc.Result = res
  3318  	return ec.marshalNWrappedScalar2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚋotherpkgᚐScalar(ctx, field.Selections, res)
  3319  }
  3320  
  3321  func (ec *executionContext) _Query_wrappedMap(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3322  	defer func() {
  3323  		if r := recover(); r != nil {
  3324  			ec.Error(ctx, ec.Recover(ctx, r))
  3325  			ret = graphql.Null
  3326  		}
  3327  	}()
  3328  	fc := &graphql.FieldContext{
  3329  		Object:     "Query",
  3330  		Field:      field,
  3331  		Args:       nil,
  3332  		IsMethod:   true,
  3333  		IsResolver: true,
  3334  	}
  3335  
  3336  	ctx = graphql.WithFieldContext(ctx, fc)
  3337  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3338  		ctx = rctx // use context from middleware stack in children
  3339  		return ec.resolvers.Query().WrappedMap(rctx)
  3340  	})
  3341  
  3342  	if resTmp == nil {
  3343  		if !graphql.HasFieldError(ctx, fc) {
  3344  			ec.Errorf(ctx, "must not be null")
  3345  		}
  3346  		return graphql.Null
  3347  	}
  3348  	res := resTmp.(WrappedMap)
  3349  	fc.Result = res
  3350  	return ec.marshalNWrappedMap2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐWrappedMap(ctx, field.Selections, res)
  3351  }
  3352  
  3353  func (ec *executionContext) _Query_wrappedSlice(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3354  	defer func() {
  3355  		if r := recover(); r != nil {
  3356  			ec.Error(ctx, ec.Recover(ctx, r))
  3357  			ret = graphql.Null
  3358  		}
  3359  	}()
  3360  	fc := &graphql.FieldContext{
  3361  		Object:     "Query",
  3362  		Field:      field,
  3363  		Args:       nil,
  3364  		IsMethod:   true,
  3365  		IsResolver: true,
  3366  	}
  3367  
  3368  	ctx = graphql.WithFieldContext(ctx, fc)
  3369  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3370  		ctx = rctx // use context from middleware stack in children
  3371  		return ec.resolvers.Query().WrappedSlice(rctx)
  3372  	})
  3373  
  3374  	if resTmp == nil {
  3375  		if !graphql.HasFieldError(ctx, fc) {
  3376  			ec.Errorf(ctx, "must not be null")
  3377  		}
  3378  		return graphql.Null
  3379  	}
  3380  	res := resTmp.(WrappedSlice)
  3381  	fc.Result = res
  3382  	return ec.marshalNWrappedSlice2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐWrappedSlice(ctx, field.Selections, res)
  3383  }
  3384  
  3385  func (ec *executionContext) _Query___type(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3386  	defer func() {
  3387  		if r := recover(); r != nil {
  3388  			ec.Error(ctx, ec.Recover(ctx, r))
  3389  			ret = graphql.Null
  3390  		}
  3391  	}()
  3392  	fc := &graphql.FieldContext{
  3393  		Object:     "Query",
  3394  		Field:      field,
  3395  		Args:       nil,
  3396  		IsMethod:   true,
  3397  		IsResolver: false,
  3398  	}
  3399  
  3400  	ctx = graphql.WithFieldContext(ctx, fc)
  3401  	rawArgs := field.ArgumentMap(ec.Variables)
  3402  	args, err := ec.field_Query___type_args(ctx, rawArgs)
  3403  	if err != nil {
  3404  		ec.Error(ctx, err)
  3405  		return graphql.Null
  3406  	}
  3407  	fc.Args = args
  3408  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3409  		ctx = rctx // use context from middleware stack in children
  3410  		return ec.introspectType(args["name"].(string))
  3411  	})
  3412  
  3413  	if resTmp == nil {
  3414  		return graphql.Null
  3415  	}
  3416  	res := resTmp.(*introspection.Type)
  3417  	fc.Result = res
  3418  	return ec.marshalO__Type2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx, field.Selections, res)
  3419  }
  3420  
  3421  func (ec *executionContext) _Query___schema(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  3422  	defer func() {
  3423  		if r := recover(); r != nil {
  3424  			ec.Error(ctx, ec.Recover(ctx, r))
  3425  			ret = graphql.Null
  3426  		}
  3427  	}()
  3428  	fc := &graphql.FieldContext{
  3429  		Object:     "Query",
  3430  		Field:      field,
  3431  		Args:       nil,
  3432  		IsMethod:   true,
  3433  		IsResolver: false,
  3434  	}
  3435  
  3436  	ctx = graphql.WithFieldContext(ctx, fc)
  3437  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3438  		ctx = rctx // use context from middleware stack in children
  3439  		return ec.introspectSchema()
  3440  	})
  3441  
  3442  	if resTmp == nil {
  3443  		return graphql.Null
  3444  	}
  3445  	res := resTmp.(*introspection.Schema)
  3446  	fc.Result = res
  3447  	return ec.marshalO__Schema2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐSchema(ctx, field.Selections, res)
  3448  }
  3449  
  3450  func (ec *executionContext) _Subscription_updated(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  3451  	defer func() {
  3452  		if r := recover(); r != nil {
  3453  			ec.Error(ctx, ec.Recover(ctx, r))
  3454  			ret = nil
  3455  		}
  3456  	}()
  3457  	fc := &graphql.FieldContext{
  3458  		Object:     "Subscription",
  3459  		Field:      field,
  3460  		Args:       nil,
  3461  		IsMethod:   true,
  3462  		IsResolver: true,
  3463  	}
  3464  
  3465  	ctx = graphql.WithFieldContext(ctx, fc)
  3466  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3467  		ctx = rctx // use context from middleware stack in children
  3468  		return ec.resolvers.Subscription().Updated(rctx)
  3469  	})
  3470  
  3471  	if resTmp == nil {
  3472  		if !graphql.HasFieldError(ctx, fc) {
  3473  			ec.Errorf(ctx, "must not be null")
  3474  		}
  3475  		return nil
  3476  	}
  3477  	return func() graphql.Marshaler {
  3478  		res, ok := <-resTmp.(<-chan string)
  3479  		if !ok {
  3480  			return nil
  3481  		}
  3482  		return graphql.WriterFunc(func(w io.Writer) {
  3483  			w.Write([]byte{'{'})
  3484  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  3485  			w.Write([]byte{':'})
  3486  			ec.marshalNString2string(ctx, field.Selections, res).MarshalGQL(w)
  3487  			w.Write([]byte{'}'})
  3488  		})
  3489  	}
  3490  }
  3491  
  3492  func (ec *executionContext) _Subscription_initPayload(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  3493  	defer func() {
  3494  		if r := recover(); r != nil {
  3495  			ec.Error(ctx, ec.Recover(ctx, r))
  3496  			ret = nil
  3497  		}
  3498  	}()
  3499  	fc := &graphql.FieldContext{
  3500  		Object:     "Subscription",
  3501  		Field:      field,
  3502  		Args:       nil,
  3503  		IsMethod:   true,
  3504  		IsResolver: true,
  3505  	}
  3506  
  3507  	ctx = graphql.WithFieldContext(ctx, fc)
  3508  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3509  		ctx = rctx // use context from middleware stack in children
  3510  		return ec.resolvers.Subscription().InitPayload(rctx)
  3511  	})
  3512  
  3513  	if resTmp == nil {
  3514  		if !graphql.HasFieldError(ctx, fc) {
  3515  			ec.Errorf(ctx, "must not be null")
  3516  		}
  3517  		return nil
  3518  	}
  3519  	return func() graphql.Marshaler {
  3520  		res, ok := <-resTmp.(<-chan string)
  3521  		if !ok {
  3522  			return nil
  3523  		}
  3524  		return graphql.WriterFunc(func(w io.Writer) {
  3525  			w.Write([]byte{'{'})
  3526  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  3527  			w.Write([]byte{':'})
  3528  			ec.marshalNString2string(ctx, field.Selections, res).MarshalGQL(w)
  3529  			w.Write([]byte{'}'})
  3530  		})
  3531  	}
  3532  }
  3533  
  3534  func (ec *executionContext) _Subscription_directiveArg(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  3535  	defer func() {
  3536  		if r := recover(); r != nil {
  3537  			ec.Error(ctx, ec.Recover(ctx, r))
  3538  			ret = nil
  3539  		}
  3540  	}()
  3541  	fc := &graphql.FieldContext{
  3542  		Object:     "Subscription",
  3543  		Field:      field,
  3544  		Args:       nil,
  3545  		IsMethod:   true,
  3546  		IsResolver: true,
  3547  	}
  3548  
  3549  	ctx = graphql.WithFieldContext(ctx, fc)
  3550  	rawArgs := field.ArgumentMap(ec.Variables)
  3551  	args, err := ec.field_Subscription_directiveArg_args(ctx, rawArgs)
  3552  	if err != nil {
  3553  		ec.Error(ctx, err)
  3554  		return nil
  3555  	}
  3556  	fc.Args = args
  3557  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3558  		ctx = rctx // use context from middleware stack in children
  3559  		return ec.resolvers.Subscription().DirectiveArg(rctx, args["arg"].(string))
  3560  	})
  3561  
  3562  	if resTmp == nil {
  3563  		return nil
  3564  	}
  3565  	return func() graphql.Marshaler {
  3566  		res, ok := <-resTmp.(<-chan *string)
  3567  		if !ok {
  3568  			return nil
  3569  		}
  3570  		return graphql.WriterFunc(func(w io.Writer) {
  3571  			w.Write([]byte{'{'})
  3572  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  3573  			w.Write([]byte{':'})
  3574  			ec.marshalOString2ᚖstring(ctx, field.Selections, res).MarshalGQL(w)
  3575  			w.Write([]byte{'}'})
  3576  		})
  3577  	}
  3578  }
  3579  
  3580  func (ec *executionContext) _Subscription_directiveNullableArg(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  3581  	defer func() {
  3582  		if r := recover(); r != nil {
  3583  			ec.Error(ctx, ec.Recover(ctx, r))
  3584  			ret = nil
  3585  		}
  3586  	}()
  3587  	fc := &graphql.FieldContext{
  3588  		Object:     "Subscription",
  3589  		Field:      field,
  3590  		Args:       nil,
  3591  		IsMethod:   true,
  3592  		IsResolver: true,
  3593  	}
  3594  
  3595  	ctx = graphql.WithFieldContext(ctx, fc)
  3596  	rawArgs := field.ArgumentMap(ec.Variables)
  3597  	args, err := ec.field_Subscription_directiveNullableArg_args(ctx, rawArgs)
  3598  	if err != nil {
  3599  		ec.Error(ctx, err)
  3600  		return nil
  3601  	}
  3602  	fc.Args = args
  3603  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3604  		ctx = rctx // use context from middleware stack in children
  3605  		return ec.resolvers.Subscription().DirectiveNullableArg(rctx, args["arg"].(*int), args["arg2"].(*int), args["arg3"].(*string))
  3606  	})
  3607  
  3608  	if resTmp == nil {
  3609  		return nil
  3610  	}
  3611  	return func() graphql.Marshaler {
  3612  		res, ok := <-resTmp.(<-chan *string)
  3613  		if !ok {
  3614  			return nil
  3615  		}
  3616  		return graphql.WriterFunc(func(w io.Writer) {
  3617  			w.Write([]byte{'{'})
  3618  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  3619  			w.Write([]byte{':'})
  3620  			ec.marshalOString2ᚖstring(ctx, field.Selections, res).MarshalGQL(w)
  3621  			w.Write([]byte{'}'})
  3622  		})
  3623  	}
  3624  }
  3625  
  3626  func (ec *executionContext) _Subscription_directiveDouble(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  3627  	defer func() {
  3628  		if r := recover(); r != nil {
  3629  			ec.Error(ctx, ec.Recover(ctx, r))
  3630  			ret = nil
  3631  		}
  3632  	}()
  3633  	fc := &graphql.FieldContext{
  3634  		Object:     "Subscription",
  3635  		Field:      field,
  3636  		Args:       nil,
  3637  		IsMethod:   true,
  3638  		IsResolver: true,
  3639  	}
  3640  
  3641  	ctx = graphql.WithFieldContext(ctx, fc)
  3642  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3643  		directive0 := func(rctx context.Context) (interface{}, error) {
  3644  			ctx = rctx // use context from middleware stack in children
  3645  			return ec.resolvers.Subscription().DirectiveDouble(rctx)
  3646  		}
  3647  		directive1 := func(ctx context.Context) (interface{}, error) {
  3648  			if ec.directives.Directive1 == nil {
  3649  				return nil, errors.New("directive directive1 is not implemented")
  3650  			}
  3651  			return ec.directives.Directive1(ctx, nil, directive0)
  3652  		}
  3653  		directive2 := func(ctx context.Context) (interface{}, error) {
  3654  			if ec.directives.Directive2 == nil {
  3655  				return nil, errors.New("directive directive2 is not implemented")
  3656  			}
  3657  			return ec.directives.Directive2(ctx, nil, directive1)
  3658  		}
  3659  
  3660  		tmp, err := directive2(rctx)
  3661  		if err != nil {
  3662  			return nil, graphql.ErrorOnPath(ctx, err)
  3663  		}
  3664  		if tmp == nil {
  3665  			return nil, nil
  3666  		}
  3667  		if data, ok := tmp.(<-chan *string); ok {
  3668  			return data, nil
  3669  		}
  3670  		return nil, fmt.Errorf(`unexpected type %T from directive, should be <-chan *string`, tmp)
  3671  	})
  3672  
  3673  	if resTmp == nil {
  3674  		return nil
  3675  	}
  3676  	return func() graphql.Marshaler {
  3677  		res, ok := <-resTmp.(<-chan *string)
  3678  		if !ok {
  3679  			return nil
  3680  		}
  3681  		return graphql.WriterFunc(func(w io.Writer) {
  3682  			w.Write([]byte{'{'})
  3683  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  3684  			w.Write([]byte{':'})
  3685  			ec.marshalOString2ᚖstring(ctx, field.Selections, res).MarshalGQL(w)
  3686  			w.Write([]byte{'}'})
  3687  		})
  3688  	}
  3689  }
  3690  
  3691  func (ec *executionContext) _Subscription_directiveUnimplemented(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  3692  	defer func() {
  3693  		if r := recover(); r != nil {
  3694  			ec.Error(ctx, ec.Recover(ctx, r))
  3695  			ret = nil
  3696  		}
  3697  	}()
  3698  	fc := &graphql.FieldContext{
  3699  		Object:     "Subscription",
  3700  		Field:      field,
  3701  		Args:       nil,
  3702  		IsMethod:   true,
  3703  		IsResolver: true,
  3704  	}
  3705  
  3706  	ctx = graphql.WithFieldContext(ctx, fc)
  3707  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3708  		directive0 := func(rctx context.Context) (interface{}, error) {
  3709  			ctx = rctx // use context from middleware stack in children
  3710  			return ec.resolvers.Subscription().DirectiveUnimplemented(rctx)
  3711  		}
  3712  		directive1 := func(ctx context.Context) (interface{}, error) {
  3713  			if ec.directives.Unimplemented == nil {
  3714  				return nil, errors.New("directive unimplemented is not implemented")
  3715  			}
  3716  			return ec.directives.Unimplemented(ctx, nil, directive0)
  3717  		}
  3718  
  3719  		tmp, err := directive1(rctx)
  3720  		if err != nil {
  3721  			return nil, graphql.ErrorOnPath(ctx, err)
  3722  		}
  3723  		if tmp == nil {
  3724  			return nil, nil
  3725  		}
  3726  		if data, ok := tmp.(<-chan *string); ok {
  3727  			return data, nil
  3728  		}
  3729  		return nil, fmt.Errorf(`unexpected type %T from directive, should be <-chan *string`, tmp)
  3730  	})
  3731  
  3732  	if resTmp == nil {
  3733  		return nil
  3734  	}
  3735  	return func() graphql.Marshaler {
  3736  		res, ok := <-resTmp.(<-chan *string)
  3737  		if !ok {
  3738  			return nil
  3739  		}
  3740  		return graphql.WriterFunc(func(w io.Writer) {
  3741  			w.Write([]byte{'{'})
  3742  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  3743  			w.Write([]byte{':'})
  3744  			ec.marshalOString2ᚖstring(ctx, field.Selections, res).MarshalGQL(w)
  3745  			w.Write([]byte{'}'})
  3746  		})
  3747  	}
  3748  }
  3749  
  3750  func (ec *executionContext) _Subscription_issue896b(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  3751  	defer func() {
  3752  		if r := recover(); r != nil {
  3753  			ec.Error(ctx, ec.Recover(ctx, r))
  3754  			ret = nil
  3755  		}
  3756  	}()
  3757  	fc := &graphql.FieldContext{
  3758  		Object:     "Subscription",
  3759  		Field:      field,
  3760  		Args:       nil,
  3761  		IsMethod:   true,
  3762  		IsResolver: true,
  3763  	}
  3764  
  3765  	ctx = graphql.WithFieldContext(ctx, fc)
  3766  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  3767  		ctx = rctx // use context from middleware stack in children
  3768  		return ec.resolvers.Subscription().Issue896b(rctx)
  3769  	})
  3770  
  3771  	if resTmp == nil {
  3772  		return nil
  3773  	}
  3774  	return func() graphql.Marshaler {
  3775  		res, ok := <-resTmp.(<-chan []*CheckIssue896)
  3776  		if !ok {
  3777  			return nil
  3778  		}
  3779  		return graphql.WriterFunc(func(w io.Writer) {
  3780  			w.Write([]byte{'{'})
  3781  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  3782  			w.Write([]byte{':'})
  3783  			ec.marshalOCheckIssue8962ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐCheckIssue896(ctx, field.Selections, res).MarshalGQL(w)
  3784  			w.Write([]byte{'}'})
  3785  		})
  3786  	}
  3787  }
  3788  
  3789  func (ec *executionContext) _User_id(ctx context.Context, field graphql.CollectedField, obj *User) (ret graphql.Marshaler) {
  3790  	defer func() {
  3791  		if r := recover(); r != nil {
  3792  			ec.Error(ctx, ec.Recover(ctx, r))
  3793  			ret = graphql.Null
  3794  		}
  3795  	}()
  3796  	fc := &graphql.FieldContext{
  3797  		Object:     "User",
  3798  		Field:      field,
  3799  		Args:       nil,
  3800  		IsMethod:   false,
  3801  		IsResolver: false,
  3802  	}
  3803  
  3804  	ctx = graphql.WithFieldContext(ctx, fc)
  3805  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3806  		ctx = rctx // use context from middleware stack in children
  3807  		return obj.ID, nil
  3808  	})
  3809  
  3810  	if resTmp == nil {
  3811  		if !graphql.HasFieldError(ctx, fc) {
  3812  			ec.Errorf(ctx, "must not be null")
  3813  		}
  3814  		return graphql.Null
  3815  	}
  3816  	res := resTmp.(int)
  3817  	fc.Result = res
  3818  	return ec.marshalNInt2int(ctx, field.Selections, res)
  3819  }
  3820  
  3821  func (ec *executionContext) _User_friends(ctx context.Context, field graphql.CollectedField, obj *User) (ret graphql.Marshaler) {
  3822  	defer func() {
  3823  		if r := recover(); r != nil {
  3824  			ec.Error(ctx, ec.Recover(ctx, r))
  3825  			ret = graphql.Null
  3826  		}
  3827  	}()
  3828  	fc := &graphql.FieldContext{
  3829  		Object:     "User",
  3830  		Field:      field,
  3831  		Args:       nil,
  3832  		IsMethod:   true,
  3833  		IsResolver: true,
  3834  	}
  3835  
  3836  	ctx = graphql.WithFieldContext(ctx, fc)
  3837  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3838  		ctx = rctx // use context from middleware stack in children
  3839  		return ec.resolvers.User().Friends(rctx, obj)
  3840  	})
  3841  
  3842  	if resTmp == nil {
  3843  		if !graphql.HasFieldError(ctx, fc) {
  3844  			ec.Errorf(ctx, "must not be null")
  3845  		}
  3846  		return graphql.Null
  3847  	}
  3848  	res := resTmp.([]*User)
  3849  	fc.Result = res
  3850  	return ec.marshalNUser2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐUserᚄ(ctx, field.Selections, res)
  3851  }
  3852  
  3853  func (ec *executionContext) _User_created(ctx context.Context, field graphql.CollectedField, obj *User) (ret graphql.Marshaler) {
  3854  	defer func() {
  3855  		if r := recover(); r != nil {
  3856  			ec.Error(ctx, ec.Recover(ctx, r))
  3857  			ret = graphql.Null
  3858  		}
  3859  	}()
  3860  	fc := &graphql.FieldContext{
  3861  		Object:     "User",
  3862  		Field:      field,
  3863  		Args:       nil,
  3864  		IsMethod:   false,
  3865  		IsResolver: false,
  3866  	}
  3867  
  3868  	ctx = graphql.WithFieldContext(ctx, fc)
  3869  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3870  		ctx = rctx // use context from middleware stack in children
  3871  		return obj.Created, nil
  3872  	})
  3873  
  3874  	if resTmp == nil {
  3875  		if !graphql.HasFieldError(ctx, fc) {
  3876  			ec.Errorf(ctx, "must not be null")
  3877  		}
  3878  		return graphql.Null
  3879  	}
  3880  	res := resTmp.(time.Time)
  3881  	fc.Result = res
  3882  	return ec.marshalNTime2timeᚐTime(ctx, field.Selections, res)
  3883  }
  3884  
  3885  func (ec *executionContext) _User_updated(ctx context.Context, field graphql.CollectedField, obj *User) (ret graphql.Marshaler) {
  3886  	defer func() {
  3887  		if r := recover(); r != nil {
  3888  			ec.Error(ctx, ec.Recover(ctx, r))
  3889  			ret = graphql.Null
  3890  		}
  3891  	}()
  3892  	fc := &graphql.FieldContext{
  3893  		Object:     "User",
  3894  		Field:      field,
  3895  		Args:       nil,
  3896  		IsMethod:   false,
  3897  		IsResolver: false,
  3898  	}
  3899  
  3900  	ctx = graphql.WithFieldContext(ctx, fc)
  3901  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3902  		ctx = rctx // use context from middleware stack in children
  3903  		return obj.Updated, nil
  3904  	})
  3905  
  3906  	if resTmp == nil {
  3907  		return graphql.Null
  3908  	}
  3909  	res := resTmp.(*time.Time)
  3910  	fc.Result = res
  3911  	return ec.marshalOTime2ᚖtimeᚐTime(ctx, field.Selections, res)
  3912  }
  3913  
  3914  // endregion **************************** field.gotpl *****************************
  3915  
  3916  // region    **************************** input.gotpl *****************************
  3917  
  3918  func (ec *executionContext) unmarshalInputInnerInput(ctx context.Context, obj interface{}) (InnerInput, error) {
  3919  	var it InnerInput
  3920  	asMap := map[string]interface{}{}
  3921  	for k, v := range obj.(map[string]interface{}) {
  3922  		asMap[k] = v
  3923  	}
  3924  
  3925  	for k, v := range asMap {
  3926  		switch k {
  3927  		case "id":
  3928  			var err error
  3929  
  3930  			ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("id"))
  3931  			it.ID, err = ec.unmarshalNInt2int(ctx, v)
  3932  			if err != nil {
  3933  				return it, err
  3934  			}
  3935  		}
  3936  	}
  3937  
  3938  	return it, nil
  3939  }
  3940  
  3941  func (ec *executionContext) unmarshalInputOuterInput(ctx context.Context, obj interface{}) (OuterInput, error) {
  3942  	var it OuterInput
  3943  	asMap := map[string]interface{}{}
  3944  	for k, v := range obj.(map[string]interface{}) {
  3945  		asMap[k] = v
  3946  	}
  3947  
  3948  	for k, v := range asMap {
  3949  		switch k {
  3950  		case "inner":
  3951  			var err error
  3952  
  3953  			ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("inner"))
  3954  			it.Inner, err = ec.unmarshalNInnerInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐInnerInput(ctx, v)
  3955  			if err != nil {
  3956  				return it, err
  3957  			}
  3958  		}
  3959  	}
  3960  
  3961  	return it, nil
  3962  }
  3963  
  3964  func (ec *executionContext) unmarshalInputRecursiveInputSlice(ctx context.Context, obj interface{}) (RecursiveInputSlice, error) {
  3965  	var it RecursiveInputSlice
  3966  	asMap := map[string]interface{}{}
  3967  	for k, v := range obj.(map[string]interface{}) {
  3968  		asMap[k] = v
  3969  	}
  3970  
  3971  	for k, v := range asMap {
  3972  		switch k {
  3973  		case "self":
  3974  			var err error
  3975  
  3976  			ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("self"))
  3977  			it.Self, err = ec.unmarshalORecursiveInputSlice2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐRecursiveInputSliceᚄ(ctx, v)
  3978  			if err != nil {
  3979  				return it, err
  3980  			}
  3981  		}
  3982  	}
  3983  
  3984  	return it, nil
  3985  }
  3986  
  3987  // endregion **************************** input.gotpl *****************************
  3988  
  3989  // region    ************************** interface.gotpl ***************************
  3990  
  3991  // endregion ************************** interface.gotpl ***************************
  3992  
  3993  // region    **************************** object.gotpl ****************************
  3994  
  3995  var autobindImplementors = []string{"Autobind"}
  3996  
  3997  func (ec *executionContext) _Autobind(ctx context.Context, sel ast.SelectionSet, obj *Autobind) graphql.Marshaler {
  3998  	fields := graphql.CollectFields(ec.OperationContext, sel, autobindImplementors)
  3999  	out := graphql.NewFieldSet(fields)
  4000  	var invalids uint32
  4001  	for i, field := range fields {
  4002  		switch field.Name {
  4003  		case "__typename":
  4004  			out.Values[i] = graphql.MarshalString("Autobind")
  4005  		case "int":
  4006  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4007  				return ec._Autobind_int(ctx, field, obj)
  4008  			}
  4009  
  4010  			out.Values[i] = innerFunc(ctx)
  4011  
  4012  			if out.Values[i] == graphql.Null {
  4013  				invalids++
  4014  			}
  4015  		case "int32":
  4016  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4017  				return ec._Autobind_int32(ctx, field, obj)
  4018  			}
  4019  
  4020  			out.Values[i] = innerFunc(ctx)
  4021  
  4022  			if out.Values[i] == graphql.Null {
  4023  				invalids++
  4024  			}
  4025  		case "int64":
  4026  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4027  				return ec._Autobind_int64(ctx, field, obj)
  4028  			}
  4029  
  4030  			out.Values[i] = innerFunc(ctx)
  4031  
  4032  			if out.Values[i] == graphql.Null {
  4033  				invalids++
  4034  			}
  4035  		case "idStr":
  4036  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4037  				return ec._Autobind_idStr(ctx, field, obj)
  4038  			}
  4039  
  4040  			out.Values[i] = innerFunc(ctx)
  4041  
  4042  			if out.Values[i] == graphql.Null {
  4043  				invalids++
  4044  			}
  4045  		case "idInt":
  4046  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4047  				return ec._Autobind_idInt(ctx, field, obj)
  4048  			}
  4049  
  4050  			out.Values[i] = innerFunc(ctx)
  4051  
  4052  			if out.Values[i] == graphql.Null {
  4053  				invalids++
  4054  			}
  4055  		default:
  4056  			panic("unknown field " + strconv.Quote(field.Name))
  4057  		}
  4058  	}
  4059  	out.Dispatch()
  4060  	if invalids > 0 {
  4061  		return graphql.Null
  4062  	}
  4063  	return out
  4064  }
  4065  
  4066  var embeddedPointerImplementors = []string{"EmbeddedPointer"}
  4067  
  4068  func (ec *executionContext) _EmbeddedPointer(ctx context.Context, sel ast.SelectionSet, obj *EmbeddedPointerModel) graphql.Marshaler {
  4069  	fields := graphql.CollectFields(ec.OperationContext, sel, embeddedPointerImplementors)
  4070  	out := graphql.NewFieldSet(fields)
  4071  	var invalids uint32
  4072  	for i, field := range fields {
  4073  		switch field.Name {
  4074  		case "__typename":
  4075  			out.Values[i] = graphql.MarshalString("EmbeddedPointer")
  4076  		case "ID":
  4077  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4078  				return ec._EmbeddedPointer_ID(ctx, field, obj)
  4079  			}
  4080  
  4081  			out.Values[i] = innerFunc(ctx)
  4082  
  4083  		case "Title":
  4084  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4085  				return ec._EmbeddedPointer_Title(ctx, field, obj)
  4086  			}
  4087  
  4088  			out.Values[i] = innerFunc(ctx)
  4089  
  4090  		default:
  4091  			panic("unknown field " + strconv.Quote(field.Name))
  4092  		}
  4093  	}
  4094  	out.Dispatch()
  4095  	if invalids > 0 {
  4096  		return graphql.Null
  4097  	}
  4098  	return out
  4099  }
  4100  
  4101  var forcedResolverImplementors = []string{"ForcedResolver"}
  4102  
  4103  func (ec *executionContext) _ForcedResolver(ctx context.Context, sel ast.SelectionSet, obj *ForcedResolver) graphql.Marshaler {
  4104  	fields := graphql.CollectFields(ec.OperationContext, sel, forcedResolverImplementors)
  4105  	out := graphql.NewFieldSet(fields)
  4106  	var invalids uint32
  4107  	for i, field := range fields {
  4108  		switch field.Name {
  4109  		case "__typename":
  4110  			out.Values[i] = graphql.MarshalString("ForcedResolver")
  4111  		case "field":
  4112  			field := field
  4113  
  4114  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4115  				defer func() {
  4116  					if r := recover(); r != nil {
  4117  						ec.Error(ctx, ec.Recover(ctx, r))
  4118  					}
  4119  				}()
  4120  				res = ec._ForcedResolver_field(ctx, field, obj)
  4121  				return res
  4122  			}
  4123  
  4124  			out.Concurrently(i, func() graphql.Marshaler {
  4125  				return innerFunc(ctx)
  4126  
  4127  			})
  4128  		default:
  4129  			panic("unknown field " + strconv.Quote(field.Name))
  4130  		}
  4131  	}
  4132  	out.Dispatch()
  4133  	if invalids > 0 {
  4134  		return graphql.Null
  4135  	}
  4136  	return out
  4137  }
  4138  
  4139  var innerObjectImplementors = []string{"InnerObject"}
  4140  
  4141  func (ec *executionContext) _InnerObject(ctx context.Context, sel ast.SelectionSet, obj *InnerObject) graphql.Marshaler {
  4142  	fields := graphql.CollectFields(ec.OperationContext, sel, innerObjectImplementors)
  4143  	out := graphql.NewFieldSet(fields)
  4144  	var invalids uint32
  4145  	for i, field := range fields {
  4146  		switch field.Name {
  4147  		case "__typename":
  4148  			out.Values[i] = graphql.MarshalString("InnerObject")
  4149  		case "id":
  4150  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4151  				return ec._InnerObject_id(ctx, field, obj)
  4152  			}
  4153  
  4154  			out.Values[i] = innerFunc(ctx)
  4155  
  4156  			if out.Values[i] == graphql.Null {
  4157  				invalids++
  4158  			}
  4159  		default:
  4160  			panic("unknown field " + strconv.Quote(field.Name))
  4161  		}
  4162  	}
  4163  	out.Dispatch()
  4164  	if invalids > 0 {
  4165  		return graphql.Null
  4166  	}
  4167  	return out
  4168  }
  4169  
  4170  var invalidIdentifierImplementors = []string{"InvalidIdentifier"}
  4171  
  4172  func (ec *executionContext) _InvalidIdentifier(ctx context.Context, sel ast.SelectionSet, obj *invalid_packagename.InvalidIdentifier) graphql.Marshaler {
  4173  	fields := graphql.CollectFields(ec.OperationContext, sel, invalidIdentifierImplementors)
  4174  	out := graphql.NewFieldSet(fields)
  4175  	var invalids uint32
  4176  	for i, field := range fields {
  4177  		switch field.Name {
  4178  		case "__typename":
  4179  			out.Values[i] = graphql.MarshalString("InvalidIdentifier")
  4180  		case "id":
  4181  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4182  				return ec._InvalidIdentifier_id(ctx, field, obj)
  4183  			}
  4184  
  4185  			out.Values[i] = innerFunc(ctx)
  4186  
  4187  			if out.Values[i] == graphql.Null {
  4188  				invalids++
  4189  			}
  4190  		default:
  4191  			panic("unknown field " + strconv.Quote(field.Name))
  4192  		}
  4193  	}
  4194  	out.Dispatch()
  4195  	if invalids > 0 {
  4196  		return graphql.Null
  4197  	}
  4198  	return out
  4199  }
  4200  
  4201  var itImplementors = []string{"It"}
  4202  
  4203  func (ec *executionContext) _It(ctx context.Context, sel ast.SelectionSet, obj *introspection1.It) graphql.Marshaler {
  4204  	fields := graphql.CollectFields(ec.OperationContext, sel, itImplementors)
  4205  	out := graphql.NewFieldSet(fields)
  4206  	var invalids uint32
  4207  	for i, field := range fields {
  4208  		switch field.Name {
  4209  		case "__typename":
  4210  			out.Values[i] = graphql.MarshalString("It")
  4211  		case "id":
  4212  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4213  				return ec._It_id(ctx, field, obj)
  4214  			}
  4215  
  4216  			out.Values[i] = innerFunc(ctx)
  4217  
  4218  			if out.Values[i] == graphql.Null {
  4219  				invalids++
  4220  			}
  4221  		default:
  4222  			panic("unknown field " + strconv.Quote(field.Name))
  4223  		}
  4224  	}
  4225  	out.Dispatch()
  4226  	if invalids > 0 {
  4227  		return graphql.Null
  4228  	}
  4229  	return out
  4230  }
  4231  
  4232  var modelMethodsImplementors = []string{"ModelMethods"}
  4233  
  4234  func (ec *executionContext) _ModelMethods(ctx context.Context, sel ast.SelectionSet, obj *ModelMethods) graphql.Marshaler {
  4235  	fields := graphql.CollectFields(ec.OperationContext, sel, modelMethodsImplementors)
  4236  	out := graphql.NewFieldSet(fields)
  4237  	var invalids uint32
  4238  	for i, field := range fields {
  4239  		switch field.Name {
  4240  		case "__typename":
  4241  			out.Values[i] = graphql.MarshalString("ModelMethods")
  4242  		case "resolverField":
  4243  			field := field
  4244  
  4245  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4246  				defer func() {
  4247  					if r := recover(); r != nil {
  4248  						ec.Error(ctx, ec.Recover(ctx, r))
  4249  					}
  4250  				}()
  4251  				res = ec._ModelMethods_resolverField(ctx, field, obj)
  4252  				if res == graphql.Null {
  4253  					atomic.AddUint32(&invalids, 1)
  4254  				}
  4255  				return res
  4256  			}
  4257  
  4258  			out.Concurrently(i, func() graphql.Marshaler {
  4259  				return innerFunc(ctx)
  4260  
  4261  			})
  4262  		case "noContext":
  4263  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4264  				return ec._ModelMethods_noContext(ctx, field, obj)
  4265  			}
  4266  
  4267  			out.Values[i] = innerFunc(ctx)
  4268  
  4269  			if out.Values[i] == graphql.Null {
  4270  				atomic.AddUint32(&invalids, 1)
  4271  			}
  4272  		case "withContext":
  4273  			field := field
  4274  
  4275  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4276  				defer func() {
  4277  					if r := recover(); r != nil {
  4278  						ec.Error(ctx, ec.Recover(ctx, r))
  4279  					}
  4280  				}()
  4281  				res = ec._ModelMethods_withContext(ctx, field, obj)
  4282  				if res == graphql.Null {
  4283  					atomic.AddUint32(&invalids, 1)
  4284  				}
  4285  				return res
  4286  			}
  4287  
  4288  			out.Concurrently(i, func() graphql.Marshaler {
  4289  				return innerFunc(ctx)
  4290  
  4291  			})
  4292  		default:
  4293  			panic("unknown field " + strconv.Quote(field.Name))
  4294  		}
  4295  	}
  4296  	out.Dispatch()
  4297  	if invalids > 0 {
  4298  		return graphql.Null
  4299  	}
  4300  	return out
  4301  }
  4302  
  4303  var outerObjectImplementors = []string{"OuterObject"}
  4304  
  4305  func (ec *executionContext) _OuterObject(ctx context.Context, sel ast.SelectionSet, obj *OuterObject) graphql.Marshaler {
  4306  	fields := graphql.CollectFields(ec.OperationContext, sel, outerObjectImplementors)
  4307  	out := graphql.NewFieldSet(fields)
  4308  	var invalids uint32
  4309  	for i, field := range fields {
  4310  		switch field.Name {
  4311  		case "__typename":
  4312  			out.Values[i] = graphql.MarshalString("OuterObject")
  4313  		case "inner":
  4314  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4315  				return ec._OuterObject_inner(ctx, field, obj)
  4316  			}
  4317  
  4318  			out.Values[i] = innerFunc(ctx)
  4319  
  4320  			if out.Values[i] == graphql.Null {
  4321  				invalids++
  4322  			}
  4323  		default:
  4324  			panic("unknown field " + strconv.Quote(field.Name))
  4325  		}
  4326  	}
  4327  	out.Dispatch()
  4328  	if invalids > 0 {
  4329  		return graphql.Null
  4330  	}
  4331  	return out
  4332  }
  4333  
  4334  var queryImplementors = []string{"Query"}
  4335  
  4336  func (ec *executionContext) _Query(ctx context.Context, sel ast.SelectionSet) graphql.Marshaler {
  4337  	fields := graphql.CollectFields(ec.OperationContext, sel, queryImplementors)
  4338  	ctx = graphql.WithFieldContext(ctx, &graphql.FieldContext{
  4339  		Object: "Query",
  4340  	})
  4341  
  4342  	out := graphql.NewFieldSet(fields)
  4343  	var invalids uint32
  4344  	for i, field := range fields {
  4345  		innerCtx := graphql.WithRootFieldContext(ctx, &graphql.RootFieldContext{
  4346  			Object: field.Name,
  4347  			Field:  field,
  4348  		})
  4349  
  4350  		switch field.Name {
  4351  		case "__typename":
  4352  			out.Values[i] = graphql.MarshalString("Query")
  4353  		case "invalidIdentifier":
  4354  			field := field
  4355  
  4356  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4357  				defer func() {
  4358  					if r := recover(); r != nil {
  4359  						ec.Error(ctx, ec.Recover(ctx, r))
  4360  					}
  4361  				}()
  4362  				res = ec._Query_invalidIdentifier(ctx, field)
  4363  				return res
  4364  			}
  4365  
  4366  			rrm := func(ctx context.Context) graphql.Marshaler {
  4367  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4368  			}
  4369  
  4370  			out.Concurrently(i, func() graphql.Marshaler {
  4371  				return rrm(innerCtx)
  4372  			})
  4373  		case "collision":
  4374  			field := field
  4375  
  4376  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4377  				defer func() {
  4378  					if r := recover(); r != nil {
  4379  						ec.Error(ctx, ec.Recover(ctx, r))
  4380  					}
  4381  				}()
  4382  				res = ec._Query_collision(ctx, field)
  4383  				return res
  4384  			}
  4385  
  4386  			rrm := func(ctx context.Context) graphql.Marshaler {
  4387  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4388  			}
  4389  
  4390  			out.Concurrently(i, func() graphql.Marshaler {
  4391  				return rrm(innerCtx)
  4392  			})
  4393  		case "mapInput":
  4394  			field := field
  4395  
  4396  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4397  				defer func() {
  4398  					if r := recover(); r != nil {
  4399  						ec.Error(ctx, ec.Recover(ctx, r))
  4400  					}
  4401  				}()
  4402  				res = ec._Query_mapInput(ctx, field)
  4403  				return res
  4404  			}
  4405  
  4406  			rrm := func(ctx context.Context) graphql.Marshaler {
  4407  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4408  			}
  4409  
  4410  			out.Concurrently(i, func() graphql.Marshaler {
  4411  				return rrm(innerCtx)
  4412  			})
  4413  		case "recursive":
  4414  			field := field
  4415  
  4416  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4417  				defer func() {
  4418  					if r := recover(); r != nil {
  4419  						ec.Error(ctx, ec.Recover(ctx, r))
  4420  					}
  4421  				}()
  4422  				res = ec._Query_recursive(ctx, field)
  4423  				return res
  4424  			}
  4425  
  4426  			rrm := func(ctx context.Context) graphql.Marshaler {
  4427  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4428  			}
  4429  
  4430  			out.Concurrently(i, func() graphql.Marshaler {
  4431  				return rrm(innerCtx)
  4432  			})
  4433  		case "nestedInputs":
  4434  			field := field
  4435  
  4436  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4437  				defer func() {
  4438  					if r := recover(); r != nil {
  4439  						ec.Error(ctx, ec.Recover(ctx, r))
  4440  					}
  4441  				}()
  4442  				res = ec._Query_nestedInputs(ctx, field)
  4443  				return res
  4444  			}
  4445  
  4446  			rrm := func(ctx context.Context) graphql.Marshaler {
  4447  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4448  			}
  4449  
  4450  			out.Concurrently(i, func() graphql.Marshaler {
  4451  				return rrm(innerCtx)
  4452  			})
  4453  		case "nestedOutputs":
  4454  			field := field
  4455  
  4456  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4457  				defer func() {
  4458  					if r := recover(); r != nil {
  4459  						ec.Error(ctx, ec.Recover(ctx, r))
  4460  					}
  4461  				}()
  4462  				res = ec._Query_nestedOutputs(ctx, field)
  4463  				return res
  4464  			}
  4465  
  4466  			rrm := func(ctx context.Context) graphql.Marshaler {
  4467  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4468  			}
  4469  
  4470  			out.Concurrently(i, func() graphql.Marshaler {
  4471  				return rrm(innerCtx)
  4472  			})
  4473  		case "modelMethods":
  4474  			field := field
  4475  
  4476  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4477  				defer func() {
  4478  					if r := recover(); r != nil {
  4479  						ec.Error(ctx, ec.Recover(ctx, r))
  4480  					}
  4481  				}()
  4482  				res = ec._Query_modelMethods(ctx, field)
  4483  				return res
  4484  			}
  4485  
  4486  			rrm := func(ctx context.Context) graphql.Marshaler {
  4487  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4488  			}
  4489  
  4490  			out.Concurrently(i, func() graphql.Marshaler {
  4491  				return rrm(innerCtx)
  4492  			})
  4493  		case "user":
  4494  			field := field
  4495  
  4496  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4497  				defer func() {
  4498  					if r := recover(); r != nil {
  4499  						ec.Error(ctx, ec.Recover(ctx, r))
  4500  					}
  4501  				}()
  4502  				res = ec._Query_user(ctx, field)
  4503  				if res == graphql.Null {
  4504  					atomic.AddUint32(&invalids, 1)
  4505  				}
  4506  				return res
  4507  			}
  4508  
  4509  			rrm := func(ctx context.Context) graphql.Marshaler {
  4510  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4511  			}
  4512  
  4513  			out.Concurrently(i, func() graphql.Marshaler {
  4514  				return rrm(innerCtx)
  4515  			})
  4516  		case "nullableArg":
  4517  			field := field
  4518  
  4519  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4520  				defer func() {
  4521  					if r := recover(); r != nil {
  4522  						ec.Error(ctx, ec.Recover(ctx, r))
  4523  					}
  4524  				}()
  4525  				res = ec._Query_nullableArg(ctx, field)
  4526  				return res
  4527  			}
  4528  
  4529  			rrm := func(ctx context.Context) graphql.Marshaler {
  4530  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4531  			}
  4532  
  4533  			out.Concurrently(i, func() graphql.Marshaler {
  4534  				return rrm(innerCtx)
  4535  			})
  4536  		case "inputSlice":
  4537  			field := field
  4538  
  4539  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4540  				defer func() {
  4541  					if r := recover(); r != nil {
  4542  						ec.Error(ctx, ec.Recover(ctx, r))
  4543  					}
  4544  				}()
  4545  				res = ec._Query_inputSlice(ctx, field)
  4546  				if res == graphql.Null {
  4547  					atomic.AddUint32(&invalids, 1)
  4548  				}
  4549  				return res
  4550  			}
  4551  
  4552  			rrm := func(ctx context.Context) graphql.Marshaler {
  4553  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4554  			}
  4555  
  4556  			out.Concurrently(i, func() graphql.Marshaler {
  4557  				return rrm(innerCtx)
  4558  			})
  4559  		case "inputNullableSlice":
  4560  			field := field
  4561  
  4562  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4563  				defer func() {
  4564  					if r := recover(); r != nil {
  4565  						ec.Error(ctx, ec.Recover(ctx, r))
  4566  					}
  4567  				}()
  4568  				res = ec._Query_inputNullableSlice(ctx, field)
  4569  				if res == graphql.Null {
  4570  					atomic.AddUint32(&invalids, 1)
  4571  				}
  4572  				return res
  4573  			}
  4574  
  4575  			rrm := func(ctx context.Context) graphql.Marshaler {
  4576  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4577  			}
  4578  
  4579  			out.Concurrently(i, func() graphql.Marshaler {
  4580  				return rrm(innerCtx)
  4581  			})
  4582  		case "shapeUnion":
  4583  			field := field
  4584  
  4585  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4586  				defer func() {
  4587  					if r := recover(); r != nil {
  4588  						ec.Error(ctx, ec.Recover(ctx, r))
  4589  					}
  4590  				}()
  4591  				res = ec._Query_shapeUnion(ctx, field)
  4592  				if res == graphql.Null {
  4593  					atomic.AddUint32(&invalids, 1)
  4594  				}
  4595  				return res
  4596  			}
  4597  
  4598  			rrm := func(ctx context.Context) graphql.Marshaler {
  4599  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4600  			}
  4601  
  4602  			out.Concurrently(i, func() graphql.Marshaler {
  4603  				return rrm(innerCtx)
  4604  			})
  4605  		case "autobind":
  4606  			field := field
  4607  
  4608  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4609  				defer func() {
  4610  					if r := recover(); r != nil {
  4611  						ec.Error(ctx, ec.Recover(ctx, r))
  4612  					}
  4613  				}()
  4614  				res = ec._Query_autobind(ctx, field)
  4615  				return res
  4616  			}
  4617  
  4618  			rrm := func(ctx context.Context) graphql.Marshaler {
  4619  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4620  			}
  4621  
  4622  			out.Concurrently(i, func() graphql.Marshaler {
  4623  				return rrm(innerCtx)
  4624  			})
  4625  		case "deprecatedField":
  4626  			field := field
  4627  
  4628  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4629  				defer func() {
  4630  					if r := recover(); r != nil {
  4631  						ec.Error(ctx, ec.Recover(ctx, r))
  4632  					}
  4633  				}()
  4634  				res = ec._Query_deprecatedField(ctx, field)
  4635  				if res == graphql.Null {
  4636  					atomic.AddUint32(&invalids, 1)
  4637  				}
  4638  				return res
  4639  			}
  4640  
  4641  			rrm := func(ctx context.Context) graphql.Marshaler {
  4642  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4643  			}
  4644  
  4645  			out.Concurrently(i, func() graphql.Marshaler {
  4646  				return rrm(innerCtx)
  4647  			})
  4648  		case "overlapping":
  4649  			field := field
  4650  
  4651  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4652  				defer func() {
  4653  					if r := recover(); r != nil {
  4654  						ec.Error(ctx, ec.Recover(ctx, r))
  4655  					}
  4656  				}()
  4657  				res = ec._Query_overlapping(ctx, field)
  4658  				return res
  4659  			}
  4660  
  4661  			rrm := func(ctx context.Context) graphql.Marshaler {
  4662  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4663  			}
  4664  
  4665  			out.Concurrently(i, func() graphql.Marshaler {
  4666  				return rrm(innerCtx)
  4667  			})
  4668  		case "defaultParameters":
  4669  			field := field
  4670  
  4671  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4672  				defer func() {
  4673  					if r := recover(); r != nil {
  4674  						ec.Error(ctx, ec.Recover(ctx, r))
  4675  					}
  4676  				}()
  4677  				res = ec._Query_defaultParameters(ctx, field)
  4678  				if res == graphql.Null {
  4679  					atomic.AddUint32(&invalids, 1)
  4680  				}
  4681  				return res
  4682  			}
  4683  
  4684  			rrm := func(ctx context.Context) graphql.Marshaler {
  4685  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4686  			}
  4687  
  4688  			out.Concurrently(i, func() graphql.Marshaler {
  4689  				return rrm(innerCtx)
  4690  			})
  4691  		case "directiveArg":
  4692  			field := field
  4693  
  4694  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4695  				defer func() {
  4696  					if r := recover(); r != nil {
  4697  						ec.Error(ctx, ec.Recover(ctx, r))
  4698  					}
  4699  				}()
  4700  				res = ec._Query_directiveArg(ctx, field)
  4701  				return res
  4702  			}
  4703  
  4704  			rrm := func(ctx context.Context) graphql.Marshaler {
  4705  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4706  			}
  4707  
  4708  			out.Concurrently(i, func() graphql.Marshaler {
  4709  				return rrm(innerCtx)
  4710  			})
  4711  		case "directiveNullableArg":
  4712  			field := field
  4713  
  4714  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4715  				defer func() {
  4716  					if r := recover(); r != nil {
  4717  						ec.Error(ctx, ec.Recover(ctx, r))
  4718  					}
  4719  				}()
  4720  				res = ec._Query_directiveNullableArg(ctx, field)
  4721  				return res
  4722  			}
  4723  
  4724  			rrm := func(ctx context.Context) graphql.Marshaler {
  4725  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4726  			}
  4727  
  4728  			out.Concurrently(i, func() graphql.Marshaler {
  4729  				return rrm(innerCtx)
  4730  			})
  4731  		case "directiveInputNullable":
  4732  			field := field
  4733  
  4734  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4735  				defer func() {
  4736  					if r := recover(); r != nil {
  4737  						ec.Error(ctx, ec.Recover(ctx, r))
  4738  					}
  4739  				}()
  4740  				res = ec._Query_directiveInputNullable(ctx, field)
  4741  				return res
  4742  			}
  4743  
  4744  			rrm := func(ctx context.Context) graphql.Marshaler {
  4745  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4746  			}
  4747  
  4748  			out.Concurrently(i, func() graphql.Marshaler {
  4749  				return rrm(innerCtx)
  4750  			})
  4751  		case "directiveInput":
  4752  			field := field
  4753  
  4754  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4755  				defer func() {
  4756  					if r := recover(); r != nil {
  4757  						ec.Error(ctx, ec.Recover(ctx, r))
  4758  					}
  4759  				}()
  4760  				res = ec._Query_directiveInput(ctx, field)
  4761  				return res
  4762  			}
  4763  
  4764  			rrm := func(ctx context.Context) graphql.Marshaler {
  4765  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4766  			}
  4767  
  4768  			out.Concurrently(i, func() graphql.Marshaler {
  4769  				return rrm(innerCtx)
  4770  			})
  4771  		case "directiveInputType":
  4772  			field := field
  4773  
  4774  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4775  				defer func() {
  4776  					if r := recover(); r != nil {
  4777  						ec.Error(ctx, ec.Recover(ctx, r))
  4778  					}
  4779  				}()
  4780  				res = ec._Query_directiveInputType(ctx, field)
  4781  				return res
  4782  			}
  4783  
  4784  			rrm := func(ctx context.Context) graphql.Marshaler {
  4785  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4786  			}
  4787  
  4788  			out.Concurrently(i, func() graphql.Marshaler {
  4789  				return rrm(innerCtx)
  4790  			})
  4791  		case "directiveObject":
  4792  			field := field
  4793  
  4794  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4795  				defer func() {
  4796  					if r := recover(); r != nil {
  4797  						ec.Error(ctx, ec.Recover(ctx, r))
  4798  					}
  4799  				}()
  4800  				res = ec._Query_directiveObject(ctx, field)
  4801  				return res
  4802  			}
  4803  
  4804  			rrm := func(ctx context.Context) graphql.Marshaler {
  4805  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4806  			}
  4807  
  4808  			out.Concurrently(i, func() graphql.Marshaler {
  4809  				return rrm(innerCtx)
  4810  			})
  4811  		case "directiveObjectWithCustomGoModel":
  4812  			field := field
  4813  
  4814  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4815  				defer func() {
  4816  					if r := recover(); r != nil {
  4817  						ec.Error(ctx, ec.Recover(ctx, r))
  4818  					}
  4819  				}()
  4820  				res = ec._Query_directiveObjectWithCustomGoModel(ctx, field)
  4821  				return res
  4822  			}
  4823  
  4824  			rrm := func(ctx context.Context) graphql.Marshaler {
  4825  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4826  			}
  4827  
  4828  			out.Concurrently(i, func() graphql.Marshaler {
  4829  				return rrm(innerCtx)
  4830  			})
  4831  		case "directiveFieldDef":
  4832  			field := field
  4833  
  4834  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4835  				defer func() {
  4836  					if r := recover(); r != nil {
  4837  						ec.Error(ctx, ec.Recover(ctx, r))
  4838  					}
  4839  				}()
  4840  				res = ec._Query_directiveFieldDef(ctx, field)
  4841  				if res == graphql.Null {
  4842  					atomic.AddUint32(&invalids, 1)
  4843  				}
  4844  				return res
  4845  			}
  4846  
  4847  			rrm := func(ctx context.Context) graphql.Marshaler {
  4848  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4849  			}
  4850  
  4851  			out.Concurrently(i, func() graphql.Marshaler {
  4852  				return rrm(innerCtx)
  4853  			})
  4854  		case "directiveField":
  4855  			field := field
  4856  
  4857  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4858  				defer func() {
  4859  					if r := recover(); r != nil {
  4860  						ec.Error(ctx, ec.Recover(ctx, r))
  4861  					}
  4862  				}()
  4863  				res = ec._Query_directiveField(ctx, field)
  4864  				return res
  4865  			}
  4866  
  4867  			rrm := func(ctx context.Context) graphql.Marshaler {
  4868  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4869  			}
  4870  
  4871  			out.Concurrently(i, func() graphql.Marshaler {
  4872  				return rrm(innerCtx)
  4873  			})
  4874  		case "directiveDouble":
  4875  			field := field
  4876  
  4877  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4878  				defer func() {
  4879  					if r := recover(); r != nil {
  4880  						ec.Error(ctx, ec.Recover(ctx, r))
  4881  					}
  4882  				}()
  4883  				res = ec._Query_directiveDouble(ctx, field)
  4884  				return res
  4885  			}
  4886  
  4887  			rrm := func(ctx context.Context) graphql.Marshaler {
  4888  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4889  			}
  4890  
  4891  			out.Concurrently(i, func() graphql.Marshaler {
  4892  				return rrm(innerCtx)
  4893  			})
  4894  		case "directiveUnimplemented":
  4895  			field := field
  4896  
  4897  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4898  				defer func() {
  4899  					if r := recover(); r != nil {
  4900  						ec.Error(ctx, ec.Recover(ctx, r))
  4901  					}
  4902  				}()
  4903  				res = ec._Query_directiveUnimplemented(ctx, field)
  4904  				return res
  4905  			}
  4906  
  4907  			rrm := func(ctx context.Context) graphql.Marshaler {
  4908  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4909  			}
  4910  
  4911  			out.Concurrently(i, func() graphql.Marshaler {
  4912  				return rrm(innerCtx)
  4913  			})
  4914  		case "embeddedCase1":
  4915  			field := field
  4916  
  4917  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4918  				defer func() {
  4919  					if r := recover(); r != nil {
  4920  						ec.Error(ctx, ec.Recover(ctx, r))
  4921  					}
  4922  				}()
  4923  				res = ec._Query_embeddedCase1(ctx, field)
  4924  				return res
  4925  			}
  4926  
  4927  			rrm := func(ctx context.Context) graphql.Marshaler {
  4928  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4929  			}
  4930  
  4931  			out.Concurrently(i, func() graphql.Marshaler {
  4932  				return rrm(innerCtx)
  4933  			})
  4934  		case "embeddedCase2":
  4935  			field := field
  4936  
  4937  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4938  				defer func() {
  4939  					if r := recover(); r != nil {
  4940  						ec.Error(ctx, ec.Recover(ctx, r))
  4941  					}
  4942  				}()
  4943  				res = ec._Query_embeddedCase2(ctx, field)
  4944  				return res
  4945  			}
  4946  
  4947  			rrm := func(ctx context.Context) graphql.Marshaler {
  4948  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4949  			}
  4950  
  4951  			out.Concurrently(i, func() graphql.Marshaler {
  4952  				return rrm(innerCtx)
  4953  			})
  4954  		case "embeddedCase3":
  4955  			field := field
  4956  
  4957  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4958  				defer func() {
  4959  					if r := recover(); r != nil {
  4960  						ec.Error(ctx, ec.Recover(ctx, r))
  4961  					}
  4962  				}()
  4963  				res = ec._Query_embeddedCase3(ctx, field)
  4964  				return res
  4965  			}
  4966  
  4967  			rrm := func(ctx context.Context) graphql.Marshaler {
  4968  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4969  			}
  4970  
  4971  			out.Concurrently(i, func() graphql.Marshaler {
  4972  				return rrm(innerCtx)
  4973  			})
  4974  		case "enumInInput":
  4975  			field := field
  4976  
  4977  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  4978  				defer func() {
  4979  					if r := recover(); r != nil {
  4980  						ec.Error(ctx, ec.Recover(ctx, r))
  4981  					}
  4982  				}()
  4983  				res = ec._Query_enumInInput(ctx, field)
  4984  				if res == graphql.Null {
  4985  					atomic.AddUint32(&invalids, 1)
  4986  				}
  4987  				return res
  4988  			}
  4989  
  4990  			rrm := func(ctx context.Context) graphql.Marshaler {
  4991  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  4992  			}
  4993  
  4994  			out.Concurrently(i, func() graphql.Marshaler {
  4995  				return rrm(innerCtx)
  4996  			})
  4997  		case "shapes":
  4998  			field := field
  4999  
  5000  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5001  				defer func() {
  5002  					if r := recover(); r != nil {
  5003  						ec.Error(ctx, ec.Recover(ctx, r))
  5004  					}
  5005  				}()
  5006  				res = ec._Query_shapes(ctx, field)
  5007  				return res
  5008  			}
  5009  
  5010  			rrm := func(ctx context.Context) graphql.Marshaler {
  5011  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5012  			}
  5013  
  5014  			out.Concurrently(i, func() graphql.Marshaler {
  5015  				return rrm(innerCtx)
  5016  			})
  5017  		case "noShape":
  5018  			field := field
  5019  
  5020  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5021  				defer func() {
  5022  					if r := recover(); r != nil {
  5023  						ec.Error(ctx, ec.Recover(ctx, r))
  5024  					}
  5025  				}()
  5026  				res = ec._Query_noShape(ctx, field)
  5027  				return res
  5028  			}
  5029  
  5030  			rrm := func(ctx context.Context) graphql.Marshaler {
  5031  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5032  			}
  5033  
  5034  			out.Concurrently(i, func() graphql.Marshaler {
  5035  				return rrm(innerCtx)
  5036  			})
  5037  		case "node":
  5038  			field := field
  5039  
  5040  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5041  				defer func() {
  5042  					if r := recover(); r != nil {
  5043  						ec.Error(ctx, ec.Recover(ctx, r))
  5044  					}
  5045  				}()
  5046  				res = ec._Query_node(ctx, field)
  5047  				if res == graphql.Null {
  5048  					atomic.AddUint32(&invalids, 1)
  5049  				}
  5050  				return res
  5051  			}
  5052  
  5053  			rrm := func(ctx context.Context) graphql.Marshaler {
  5054  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5055  			}
  5056  
  5057  			out.Concurrently(i, func() graphql.Marshaler {
  5058  				return rrm(innerCtx)
  5059  			})
  5060  		case "noShapeTypedNil":
  5061  			field := field
  5062  
  5063  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5064  				defer func() {
  5065  					if r := recover(); r != nil {
  5066  						ec.Error(ctx, ec.Recover(ctx, r))
  5067  					}
  5068  				}()
  5069  				res = ec._Query_noShapeTypedNil(ctx, field)
  5070  				return res
  5071  			}
  5072  
  5073  			rrm := func(ctx context.Context) graphql.Marshaler {
  5074  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5075  			}
  5076  
  5077  			out.Concurrently(i, func() graphql.Marshaler {
  5078  				return rrm(innerCtx)
  5079  			})
  5080  		case "animal":
  5081  			field := field
  5082  
  5083  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5084  				defer func() {
  5085  					if r := recover(); r != nil {
  5086  						ec.Error(ctx, ec.Recover(ctx, r))
  5087  					}
  5088  				}()
  5089  				res = ec._Query_animal(ctx, field)
  5090  				return res
  5091  			}
  5092  
  5093  			rrm := func(ctx context.Context) graphql.Marshaler {
  5094  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5095  			}
  5096  
  5097  			out.Concurrently(i, func() graphql.Marshaler {
  5098  				return rrm(innerCtx)
  5099  			})
  5100  		case "notAnInterface":
  5101  			field := field
  5102  
  5103  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5104  				defer func() {
  5105  					if r := recover(); r != nil {
  5106  						ec.Error(ctx, ec.Recover(ctx, r))
  5107  					}
  5108  				}()
  5109  				res = ec._Query_notAnInterface(ctx, field)
  5110  				return res
  5111  			}
  5112  
  5113  			rrm := func(ctx context.Context) graphql.Marshaler {
  5114  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5115  			}
  5116  
  5117  			out.Concurrently(i, func() graphql.Marshaler {
  5118  				return rrm(innerCtx)
  5119  			})
  5120  		case "issue896a":
  5121  			field := field
  5122  
  5123  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5124  				defer func() {
  5125  					if r := recover(); r != nil {
  5126  						ec.Error(ctx, ec.Recover(ctx, r))
  5127  					}
  5128  				}()
  5129  				res = ec._Query_issue896a(ctx, field)
  5130  				return res
  5131  			}
  5132  
  5133  			rrm := func(ctx context.Context) graphql.Marshaler {
  5134  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5135  			}
  5136  
  5137  			out.Concurrently(i, func() graphql.Marshaler {
  5138  				return rrm(innerCtx)
  5139  			})
  5140  		case "mapStringInterface":
  5141  			field := field
  5142  
  5143  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5144  				defer func() {
  5145  					if r := recover(); r != nil {
  5146  						ec.Error(ctx, ec.Recover(ctx, r))
  5147  					}
  5148  				}()
  5149  				res = ec._Query_mapStringInterface(ctx, field)
  5150  				return res
  5151  			}
  5152  
  5153  			rrm := func(ctx context.Context) graphql.Marshaler {
  5154  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5155  			}
  5156  
  5157  			out.Concurrently(i, func() graphql.Marshaler {
  5158  				return rrm(innerCtx)
  5159  			})
  5160  		case "mapNestedStringInterface":
  5161  			field := field
  5162  
  5163  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5164  				defer func() {
  5165  					if r := recover(); r != nil {
  5166  						ec.Error(ctx, ec.Recover(ctx, r))
  5167  					}
  5168  				}()
  5169  				res = ec._Query_mapNestedStringInterface(ctx, field)
  5170  				return res
  5171  			}
  5172  
  5173  			rrm := func(ctx context.Context) graphql.Marshaler {
  5174  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5175  			}
  5176  
  5177  			out.Concurrently(i, func() graphql.Marshaler {
  5178  				return rrm(innerCtx)
  5179  			})
  5180  		case "errorBubble":
  5181  			field := field
  5182  
  5183  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5184  				defer func() {
  5185  					if r := recover(); r != nil {
  5186  						ec.Error(ctx, ec.Recover(ctx, r))
  5187  					}
  5188  				}()
  5189  				res = ec._Query_errorBubble(ctx, field)
  5190  				return res
  5191  			}
  5192  
  5193  			rrm := func(ctx context.Context) graphql.Marshaler {
  5194  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5195  			}
  5196  
  5197  			out.Concurrently(i, func() graphql.Marshaler {
  5198  				return rrm(innerCtx)
  5199  			})
  5200  		case "errorBubbleList":
  5201  			field := field
  5202  
  5203  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5204  				defer func() {
  5205  					if r := recover(); r != nil {
  5206  						ec.Error(ctx, ec.Recover(ctx, r))
  5207  					}
  5208  				}()
  5209  				res = ec._Query_errorBubbleList(ctx, field)
  5210  				return res
  5211  			}
  5212  
  5213  			rrm := func(ctx context.Context) graphql.Marshaler {
  5214  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5215  			}
  5216  
  5217  			out.Concurrently(i, func() graphql.Marshaler {
  5218  				return rrm(innerCtx)
  5219  			})
  5220  		case "errorList":
  5221  			field := field
  5222  
  5223  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5224  				defer func() {
  5225  					if r := recover(); r != nil {
  5226  						ec.Error(ctx, ec.Recover(ctx, r))
  5227  					}
  5228  				}()
  5229  				res = ec._Query_errorList(ctx, field)
  5230  				return res
  5231  			}
  5232  
  5233  			rrm := func(ctx context.Context) graphql.Marshaler {
  5234  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5235  			}
  5236  
  5237  			out.Concurrently(i, func() graphql.Marshaler {
  5238  				return rrm(innerCtx)
  5239  			})
  5240  		case "errors":
  5241  			field := field
  5242  
  5243  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5244  				defer func() {
  5245  					if r := recover(); r != nil {
  5246  						ec.Error(ctx, ec.Recover(ctx, r))
  5247  					}
  5248  				}()
  5249  				res = ec._Query_errors(ctx, field)
  5250  				return res
  5251  			}
  5252  
  5253  			rrm := func(ctx context.Context) graphql.Marshaler {
  5254  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5255  			}
  5256  
  5257  			out.Concurrently(i, func() graphql.Marshaler {
  5258  				return rrm(innerCtx)
  5259  			})
  5260  		case "valid":
  5261  			field := field
  5262  
  5263  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5264  				defer func() {
  5265  					if r := recover(); r != nil {
  5266  						ec.Error(ctx, ec.Recover(ctx, r))
  5267  					}
  5268  				}()
  5269  				res = ec._Query_valid(ctx, field)
  5270  				if res == graphql.Null {
  5271  					atomic.AddUint32(&invalids, 1)
  5272  				}
  5273  				return res
  5274  			}
  5275  
  5276  			rrm := func(ctx context.Context) graphql.Marshaler {
  5277  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5278  			}
  5279  
  5280  			out.Concurrently(i, func() graphql.Marshaler {
  5281  				return rrm(innerCtx)
  5282  			})
  5283  		case "panics":
  5284  			field := field
  5285  
  5286  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5287  				defer func() {
  5288  					if r := recover(); r != nil {
  5289  						ec.Error(ctx, ec.Recover(ctx, r))
  5290  					}
  5291  				}()
  5292  				res = ec._Query_panics(ctx, field)
  5293  				return res
  5294  			}
  5295  
  5296  			rrm := func(ctx context.Context) graphql.Marshaler {
  5297  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5298  			}
  5299  
  5300  			out.Concurrently(i, func() graphql.Marshaler {
  5301  				return rrm(innerCtx)
  5302  			})
  5303  		case "primitiveObject":
  5304  			field := field
  5305  
  5306  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5307  				defer func() {
  5308  					if r := recover(); r != nil {
  5309  						ec.Error(ctx, ec.Recover(ctx, r))
  5310  					}
  5311  				}()
  5312  				res = ec._Query_primitiveObject(ctx, field)
  5313  				if res == graphql.Null {
  5314  					atomic.AddUint32(&invalids, 1)
  5315  				}
  5316  				return res
  5317  			}
  5318  
  5319  			rrm := func(ctx context.Context) graphql.Marshaler {
  5320  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5321  			}
  5322  
  5323  			out.Concurrently(i, func() graphql.Marshaler {
  5324  				return rrm(innerCtx)
  5325  			})
  5326  		case "primitiveStringObject":
  5327  			field := field
  5328  
  5329  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5330  				defer func() {
  5331  					if r := recover(); r != nil {
  5332  						ec.Error(ctx, ec.Recover(ctx, r))
  5333  					}
  5334  				}()
  5335  				res = ec._Query_primitiveStringObject(ctx, field)
  5336  				if res == graphql.Null {
  5337  					atomic.AddUint32(&invalids, 1)
  5338  				}
  5339  				return res
  5340  			}
  5341  
  5342  			rrm := func(ctx context.Context) graphql.Marshaler {
  5343  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5344  			}
  5345  
  5346  			out.Concurrently(i, func() graphql.Marshaler {
  5347  				return rrm(innerCtx)
  5348  			})
  5349  		case "ptrToSliceContainer":
  5350  			field := field
  5351  
  5352  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5353  				defer func() {
  5354  					if r := recover(); r != nil {
  5355  						ec.Error(ctx, ec.Recover(ctx, r))
  5356  					}
  5357  				}()
  5358  				res = ec._Query_ptrToSliceContainer(ctx, field)
  5359  				if res == graphql.Null {
  5360  					atomic.AddUint32(&invalids, 1)
  5361  				}
  5362  				return res
  5363  			}
  5364  
  5365  			rrm := func(ctx context.Context) graphql.Marshaler {
  5366  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5367  			}
  5368  
  5369  			out.Concurrently(i, func() graphql.Marshaler {
  5370  				return rrm(innerCtx)
  5371  			})
  5372  		case "infinity":
  5373  			field := field
  5374  
  5375  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5376  				defer func() {
  5377  					if r := recover(); r != nil {
  5378  						ec.Error(ctx, ec.Recover(ctx, r))
  5379  					}
  5380  				}()
  5381  				res = ec._Query_infinity(ctx, field)
  5382  				if res == graphql.Null {
  5383  					atomic.AddUint32(&invalids, 1)
  5384  				}
  5385  				return res
  5386  			}
  5387  
  5388  			rrm := func(ctx context.Context) graphql.Marshaler {
  5389  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5390  			}
  5391  
  5392  			out.Concurrently(i, func() graphql.Marshaler {
  5393  				return rrm(innerCtx)
  5394  			})
  5395  		case "stringFromContextInterface":
  5396  			field := field
  5397  
  5398  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5399  				defer func() {
  5400  					if r := recover(); r != nil {
  5401  						ec.Error(ctx, ec.Recover(ctx, r))
  5402  					}
  5403  				}()
  5404  				res = ec._Query_stringFromContextInterface(ctx, field)
  5405  				if res == graphql.Null {
  5406  					atomic.AddUint32(&invalids, 1)
  5407  				}
  5408  				return res
  5409  			}
  5410  
  5411  			rrm := func(ctx context.Context) graphql.Marshaler {
  5412  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5413  			}
  5414  
  5415  			out.Concurrently(i, func() graphql.Marshaler {
  5416  				return rrm(innerCtx)
  5417  			})
  5418  		case "stringFromContextFunction":
  5419  			field := field
  5420  
  5421  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5422  				defer func() {
  5423  					if r := recover(); r != nil {
  5424  						ec.Error(ctx, ec.Recover(ctx, r))
  5425  					}
  5426  				}()
  5427  				res = ec._Query_stringFromContextFunction(ctx, field)
  5428  				if res == graphql.Null {
  5429  					atomic.AddUint32(&invalids, 1)
  5430  				}
  5431  				return res
  5432  			}
  5433  
  5434  			rrm := func(ctx context.Context) graphql.Marshaler {
  5435  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5436  			}
  5437  
  5438  			out.Concurrently(i, func() graphql.Marshaler {
  5439  				return rrm(innerCtx)
  5440  			})
  5441  		case "defaultScalar":
  5442  			field := field
  5443  
  5444  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5445  				defer func() {
  5446  					if r := recover(); r != nil {
  5447  						ec.Error(ctx, ec.Recover(ctx, r))
  5448  					}
  5449  				}()
  5450  				res = ec._Query_defaultScalar(ctx, field)
  5451  				if res == graphql.Null {
  5452  					atomic.AddUint32(&invalids, 1)
  5453  				}
  5454  				return res
  5455  			}
  5456  
  5457  			rrm := func(ctx context.Context) graphql.Marshaler {
  5458  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5459  			}
  5460  
  5461  			out.Concurrently(i, func() graphql.Marshaler {
  5462  				return rrm(innerCtx)
  5463  			})
  5464  		case "slices":
  5465  			field := field
  5466  
  5467  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5468  				defer func() {
  5469  					if r := recover(); r != nil {
  5470  						ec.Error(ctx, ec.Recover(ctx, r))
  5471  					}
  5472  				}()
  5473  				res = ec._Query_slices(ctx, field)
  5474  				return res
  5475  			}
  5476  
  5477  			rrm := func(ctx context.Context) graphql.Marshaler {
  5478  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5479  			}
  5480  
  5481  			out.Concurrently(i, func() graphql.Marshaler {
  5482  				return rrm(innerCtx)
  5483  			})
  5484  		case "scalarSlice":
  5485  			field := field
  5486  
  5487  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5488  				defer func() {
  5489  					if r := recover(); r != nil {
  5490  						ec.Error(ctx, ec.Recover(ctx, r))
  5491  					}
  5492  				}()
  5493  				res = ec._Query_scalarSlice(ctx, field)
  5494  				if res == graphql.Null {
  5495  					atomic.AddUint32(&invalids, 1)
  5496  				}
  5497  				return res
  5498  			}
  5499  
  5500  			rrm := func(ctx context.Context) graphql.Marshaler {
  5501  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5502  			}
  5503  
  5504  			out.Concurrently(i, func() graphql.Marshaler {
  5505  				return rrm(innerCtx)
  5506  			})
  5507  		case "fallback":
  5508  			field := field
  5509  
  5510  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5511  				defer func() {
  5512  					if r := recover(); r != nil {
  5513  						ec.Error(ctx, ec.Recover(ctx, r))
  5514  					}
  5515  				}()
  5516  				res = ec._Query_fallback(ctx, field)
  5517  				if res == graphql.Null {
  5518  					atomic.AddUint32(&invalids, 1)
  5519  				}
  5520  				return res
  5521  			}
  5522  
  5523  			rrm := func(ctx context.Context) graphql.Marshaler {
  5524  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5525  			}
  5526  
  5527  			out.Concurrently(i, func() graphql.Marshaler {
  5528  				return rrm(innerCtx)
  5529  			})
  5530  		case "optionalUnion":
  5531  			field := field
  5532  
  5533  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5534  				defer func() {
  5535  					if r := recover(); r != nil {
  5536  						ec.Error(ctx, ec.Recover(ctx, r))
  5537  					}
  5538  				}()
  5539  				res = ec._Query_optionalUnion(ctx, field)
  5540  				return res
  5541  			}
  5542  
  5543  			rrm := func(ctx context.Context) graphql.Marshaler {
  5544  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5545  			}
  5546  
  5547  			out.Concurrently(i, func() graphql.Marshaler {
  5548  				return rrm(innerCtx)
  5549  			})
  5550  		case "vOkCaseValue":
  5551  			field := field
  5552  
  5553  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5554  				defer func() {
  5555  					if r := recover(); r != nil {
  5556  						ec.Error(ctx, ec.Recover(ctx, r))
  5557  					}
  5558  				}()
  5559  				res = ec._Query_vOkCaseValue(ctx, field)
  5560  				return res
  5561  			}
  5562  
  5563  			rrm := func(ctx context.Context) graphql.Marshaler {
  5564  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5565  			}
  5566  
  5567  			out.Concurrently(i, func() graphql.Marshaler {
  5568  				return rrm(innerCtx)
  5569  			})
  5570  		case "vOkCaseNil":
  5571  			field := field
  5572  
  5573  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5574  				defer func() {
  5575  					if r := recover(); r != nil {
  5576  						ec.Error(ctx, ec.Recover(ctx, r))
  5577  					}
  5578  				}()
  5579  				res = ec._Query_vOkCaseNil(ctx, field)
  5580  				return res
  5581  			}
  5582  
  5583  			rrm := func(ctx context.Context) graphql.Marshaler {
  5584  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5585  			}
  5586  
  5587  			out.Concurrently(i, func() graphql.Marshaler {
  5588  				return rrm(innerCtx)
  5589  			})
  5590  		case "validType":
  5591  			field := field
  5592  
  5593  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5594  				defer func() {
  5595  					if r := recover(); r != nil {
  5596  						ec.Error(ctx, ec.Recover(ctx, r))
  5597  					}
  5598  				}()
  5599  				res = ec._Query_validType(ctx, field)
  5600  				return res
  5601  			}
  5602  
  5603  			rrm := func(ctx context.Context) graphql.Marshaler {
  5604  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5605  			}
  5606  
  5607  			out.Concurrently(i, func() graphql.Marshaler {
  5608  				return rrm(innerCtx)
  5609  			})
  5610  		case "wrappedStruct":
  5611  			field := field
  5612  
  5613  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5614  				defer func() {
  5615  					if r := recover(); r != nil {
  5616  						ec.Error(ctx, ec.Recover(ctx, r))
  5617  					}
  5618  				}()
  5619  				res = ec._Query_wrappedStruct(ctx, field)
  5620  				if res == graphql.Null {
  5621  					atomic.AddUint32(&invalids, 1)
  5622  				}
  5623  				return res
  5624  			}
  5625  
  5626  			rrm := func(ctx context.Context) graphql.Marshaler {
  5627  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5628  			}
  5629  
  5630  			out.Concurrently(i, func() graphql.Marshaler {
  5631  				return rrm(innerCtx)
  5632  			})
  5633  		case "wrappedScalar":
  5634  			field := field
  5635  
  5636  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5637  				defer func() {
  5638  					if r := recover(); r != nil {
  5639  						ec.Error(ctx, ec.Recover(ctx, r))
  5640  					}
  5641  				}()
  5642  				res = ec._Query_wrappedScalar(ctx, field)
  5643  				if res == graphql.Null {
  5644  					atomic.AddUint32(&invalids, 1)
  5645  				}
  5646  				return res
  5647  			}
  5648  
  5649  			rrm := func(ctx context.Context) graphql.Marshaler {
  5650  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5651  			}
  5652  
  5653  			out.Concurrently(i, func() graphql.Marshaler {
  5654  				return rrm(innerCtx)
  5655  			})
  5656  		case "wrappedMap":
  5657  			field := field
  5658  
  5659  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5660  				defer func() {
  5661  					if r := recover(); r != nil {
  5662  						ec.Error(ctx, ec.Recover(ctx, r))
  5663  					}
  5664  				}()
  5665  				res = ec._Query_wrappedMap(ctx, field)
  5666  				if res == graphql.Null {
  5667  					atomic.AddUint32(&invalids, 1)
  5668  				}
  5669  				return res
  5670  			}
  5671  
  5672  			rrm := func(ctx context.Context) graphql.Marshaler {
  5673  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5674  			}
  5675  
  5676  			out.Concurrently(i, func() graphql.Marshaler {
  5677  				return rrm(innerCtx)
  5678  			})
  5679  		case "wrappedSlice":
  5680  			field := field
  5681  
  5682  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5683  				defer func() {
  5684  					if r := recover(); r != nil {
  5685  						ec.Error(ctx, ec.Recover(ctx, r))
  5686  					}
  5687  				}()
  5688  				res = ec._Query_wrappedSlice(ctx, field)
  5689  				if res == graphql.Null {
  5690  					atomic.AddUint32(&invalids, 1)
  5691  				}
  5692  				return res
  5693  			}
  5694  
  5695  			rrm := func(ctx context.Context) graphql.Marshaler {
  5696  				return ec.OperationContext.RootResolverMiddleware(ctx, innerFunc)
  5697  			}
  5698  
  5699  			out.Concurrently(i, func() graphql.Marshaler {
  5700  				return rrm(innerCtx)
  5701  			})
  5702  		case "__type":
  5703  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5704  				return ec._Query___type(ctx, field)
  5705  			}
  5706  
  5707  			out.Values[i] = ec.OperationContext.RootResolverMiddleware(innerCtx, innerFunc)
  5708  
  5709  		case "__schema":
  5710  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5711  				return ec._Query___schema(ctx, field)
  5712  			}
  5713  
  5714  			out.Values[i] = ec.OperationContext.RootResolverMiddleware(innerCtx, innerFunc)
  5715  
  5716  		default:
  5717  			panic("unknown field " + strconv.Quote(field.Name))
  5718  		}
  5719  	}
  5720  	out.Dispatch()
  5721  	if invalids > 0 {
  5722  		return graphql.Null
  5723  	}
  5724  	return out
  5725  }
  5726  
  5727  var subscriptionImplementors = []string{"Subscription"}
  5728  
  5729  func (ec *executionContext) _Subscription(ctx context.Context, sel ast.SelectionSet) func() graphql.Marshaler {
  5730  	fields := graphql.CollectFields(ec.OperationContext, sel, subscriptionImplementors)
  5731  	ctx = graphql.WithFieldContext(ctx, &graphql.FieldContext{
  5732  		Object: "Subscription",
  5733  	})
  5734  	if len(fields) != 1 {
  5735  		ec.Errorf(ctx, "must subscribe to exactly one stream")
  5736  		return nil
  5737  	}
  5738  
  5739  	switch fields[0].Name {
  5740  	case "updated":
  5741  		return ec._Subscription_updated(ctx, fields[0])
  5742  	case "initPayload":
  5743  		return ec._Subscription_initPayload(ctx, fields[0])
  5744  	case "directiveArg":
  5745  		return ec._Subscription_directiveArg(ctx, fields[0])
  5746  	case "directiveNullableArg":
  5747  		return ec._Subscription_directiveNullableArg(ctx, fields[0])
  5748  	case "directiveDouble":
  5749  		return ec._Subscription_directiveDouble(ctx, fields[0])
  5750  	case "directiveUnimplemented":
  5751  		return ec._Subscription_directiveUnimplemented(ctx, fields[0])
  5752  	case "issue896b":
  5753  		return ec._Subscription_issue896b(ctx, fields[0])
  5754  	default:
  5755  		panic("unknown field " + strconv.Quote(fields[0].Name))
  5756  	}
  5757  }
  5758  
  5759  var userImplementors = []string{"User"}
  5760  
  5761  func (ec *executionContext) _User(ctx context.Context, sel ast.SelectionSet, obj *User) graphql.Marshaler {
  5762  	fields := graphql.CollectFields(ec.OperationContext, sel, userImplementors)
  5763  	out := graphql.NewFieldSet(fields)
  5764  	var invalids uint32
  5765  	for i, field := range fields {
  5766  		switch field.Name {
  5767  		case "__typename":
  5768  			out.Values[i] = graphql.MarshalString("User")
  5769  		case "id":
  5770  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5771  				return ec._User_id(ctx, field, obj)
  5772  			}
  5773  
  5774  			out.Values[i] = innerFunc(ctx)
  5775  
  5776  			if out.Values[i] == graphql.Null {
  5777  				atomic.AddUint32(&invalids, 1)
  5778  			}
  5779  		case "friends":
  5780  			field := field
  5781  
  5782  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5783  				defer func() {
  5784  					if r := recover(); r != nil {
  5785  						ec.Error(ctx, ec.Recover(ctx, r))
  5786  					}
  5787  				}()
  5788  				res = ec._User_friends(ctx, field, obj)
  5789  				if res == graphql.Null {
  5790  					atomic.AddUint32(&invalids, 1)
  5791  				}
  5792  				return res
  5793  			}
  5794  
  5795  			out.Concurrently(i, func() graphql.Marshaler {
  5796  				return innerFunc(ctx)
  5797  
  5798  			})
  5799  		case "created":
  5800  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5801  				return ec._User_created(ctx, field, obj)
  5802  			}
  5803  
  5804  			out.Values[i] = innerFunc(ctx)
  5805  
  5806  			if out.Values[i] == graphql.Null {
  5807  				atomic.AddUint32(&invalids, 1)
  5808  			}
  5809  		case "updated":
  5810  			innerFunc := func(ctx context.Context) (res graphql.Marshaler) {
  5811  				return ec._User_updated(ctx, field, obj)
  5812  			}
  5813  
  5814  			out.Values[i] = innerFunc(ctx)
  5815  
  5816  		default:
  5817  			panic("unknown field " + strconv.Quote(field.Name))
  5818  		}
  5819  	}
  5820  	out.Dispatch()
  5821  	if invalids > 0 {
  5822  		return graphql.Null
  5823  	}
  5824  	return out
  5825  }
  5826  
  5827  // endregion **************************** object.gotpl ****************************
  5828  
  5829  // region    ***************************** type.gotpl *****************************
  5830  
  5831  func (ec *executionContext) unmarshalNInnerInput2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐInnerInput(ctx context.Context, v interface{}) (InnerInput, error) {
  5832  	res, err := ec.unmarshalInputInnerInput(ctx, v)
  5833  	return res, graphql.ErrorOnPath(ctx, err)
  5834  }
  5835  
  5836  func (ec *executionContext) unmarshalNInnerInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐInnerInput(ctx context.Context, v interface{}) (*InnerInput, error) {
  5837  	res, err := ec.unmarshalInputInnerInput(ctx, v)
  5838  	return &res, graphql.ErrorOnPath(ctx, err)
  5839  }
  5840  
  5841  func (ec *executionContext) marshalNInnerObject2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐInnerObject(ctx context.Context, sel ast.SelectionSet, v *InnerObject) graphql.Marshaler {
  5842  	if v == nil {
  5843  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
  5844  			ec.Errorf(ctx, "must not be null")
  5845  		}
  5846  		return graphql.Null
  5847  	}
  5848  	return ec._InnerObject(ctx, sel, v)
  5849  }
  5850  
  5851  func (ec *executionContext) unmarshalNRecursiveInputSlice2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐRecursiveInputSlice(ctx context.Context, v interface{}) (RecursiveInputSlice, error) {
  5852  	res, err := ec.unmarshalInputRecursiveInputSlice(ctx, v)
  5853  	return res, graphql.ErrorOnPath(ctx, err)
  5854  }
  5855  
  5856  func (ec *executionContext) unmarshalNTime2timeᚐTime(ctx context.Context, v interface{}) (time.Time, error) {
  5857  	res, err := graphql.UnmarshalTime(v)
  5858  	return res, graphql.ErrorOnPath(ctx, err)
  5859  }
  5860  
  5861  func (ec *executionContext) marshalNTime2timeᚐTime(ctx context.Context, sel ast.SelectionSet, v time.Time) graphql.Marshaler {
  5862  	res := graphql.MarshalTime(v)
  5863  	if res == graphql.Null {
  5864  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
  5865  			ec.Errorf(ctx, "must not be null")
  5866  		}
  5867  	}
  5868  	return res
  5869  }
  5870  
  5871  func (ec *executionContext) unmarshalNUUID2string(ctx context.Context, v interface{}) (string, error) {
  5872  	res, err := graphql.UnmarshalString(v)
  5873  	return res, graphql.ErrorOnPath(ctx, err)
  5874  }
  5875  
  5876  func (ec *executionContext) marshalNUUID2string(ctx context.Context, sel ast.SelectionSet, v string) graphql.Marshaler {
  5877  	res := graphql.MarshalString(v)
  5878  	if res == graphql.Null {
  5879  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
  5880  			ec.Errorf(ctx, "must not be null")
  5881  		}
  5882  	}
  5883  	return res
  5884  }
  5885  
  5886  func (ec *executionContext) marshalNUser2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐUser(ctx context.Context, sel ast.SelectionSet, v User) graphql.Marshaler {
  5887  	return ec._User(ctx, sel, &v)
  5888  }
  5889  
  5890  func (ec *executionContext) marshalNUser2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐUserᚄ(ctx context.Context, sel ast.SelectionSet, v []*User) graphql.Marshaler {
  5891  	ret := make(graphql.Array, len(v))
  5892  	var wg sync.WaitGroup
  5893  	isLen1 := len(v) == 1
  5894  	if !isLen1 {
  5895  		wg.Add(len(v))
  5896  	}
  5897  	for i := range v {
  5898  		i := i
  5899  		fc := &graphql.FieldContext{
  5900  			Index:  &i,
  5901  			Result: &v[i],
  5902  		}
  5903  		ctx := graphql.WithFieldContext(ctx, fc)
  5904  		f := func(i int) {
  5905  			defer func() {
  5906  				if r := recover(); r != nil {
  5907  					ec.Error(ctx, ec.Recover(ctx, r))
  5908  					ret = nil
  5909  				}
  5910  			}()
  5911  			if !isLen1 {
  5912  				defer wg.Done()
  5913  			}
  5914  			ret[i] = ec.marshalNUser2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐUser(ctx, sel, v[i])
  5915  		}
  5916  		if isLen1 {
  5917  			f(i)
  5918  		} else {
  5919  			go f(i)
  5920  		}
  5921  
  5922  	}
  5923  	wg.Wait()
  5924  
  5925  	for _, e := range ret {
  5926  		if e == graphql.Null {
  5927  			return graphql.Null
  5928  		}
  5929  	}
  5930  
  5931  	return ret
  5932  }
  5933  
  5934  func (ec *executionContext) marshalNUser2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐUser(ctx context.Context, sel ast.SelectionSet, v *User) graphql.Marshaler {
  5935  	if v == nil {
  5936  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
  5937  			ec.Errorf(ctx, "must not be null")
  5938  		}
  5939  		return graphql.Null
  5940  	}
  5941  	return ec._User(ctx, sel, v)
  5942  }
  5943  
  5944  func (ec *executionContext) marshalOAutobind2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐAutobind(ctx context.Context, sel ast.SelectionSet, v *Autobind) graphql.Marshaler {
  5945  	if v == nil {
  5946  		return graphql.Null
  5947  	}
  5948  	return ec._Autobind(ctx, sel, v)
  5949  }
  5950  
  5951  func (ec *executionContext) unmarshalOChanges2map(ctx context.Context, v interface{}) (map[string]interface{}, error) {
  5952  	if v == nil {
  5953  		return nil, nil
  5954  	}
  5955  	return v.(map[string]interface{}), nil
  5956  }
  5957  
  5958  func (ec *executionContext) marshalOInvalidIdentifier2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚋinvalidᚑpackagenameᚐInvalidIdentifier(ctx context.Context, sel ast.SelectionSet, v *invalid_packagename.InvalidIdentifier) graphql.Marshaler {
  5959  	if v == nil {
  5960  		return graphql.Null
  5961  	}
  5962  	return ec._InvalidIdentifier(ctx, sel, v)
  5963  }
  5964  
  5965  func (ec *executionContext) marshalOIt2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚋintrospectionᚐIt(ctx context.Context, sel ast.SelectionSet, v *introspection1.It) graphql.Marshaler {
  5966  	if v == nil {
  5967  		return graphql.Null
  5968  	}
  5969  	return ec._It(ctx, sel, v)
  5970  }
  5971  
  5972  func (ec *executionContext) marshalOModelMethods2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐModelMethods(ctx context.Context, sel ast.SelectionSet, v *ModelMethods) graphql.Marshaler {
  5973  	if v == nil {
  5974  		return graphql.Null
  5975  	}
  5976  	return ec._ModelMethods(ctx, sel, v)
  5977  }
  5978  
  5979  func (ec *executionContext) unmarshalOOuterInput2ᚕᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOuterInput(ctx context.Context, v interface{}) ([][]*OuterInput, error) {
  5980  	if v == nil {
  5981  		return nil, nil
  5982  	}
  5983  	var vSlice []interface{}
  5984  	if v != nil {
  5985  		vSlice = graphql.CoerceList(v)
  5986  	}
  5987  	var err error
  5988  	res := make([][]*OuterInput, len(vSlice))
  5989  	for i := range vSlice {
  5990  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithIndex(i))
  5991  		res[i], err = ec.unmarshalOOuterInput2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOuterInput(ctx, vSlice[i])
  5992  		if err != nil {
  5993  			return nil, err
  5994  		}
  5995  	}
  5996  	return res, nil
  5997  }
  5998  
  5999  func (ec *executionContext) unmarshalOOuterInput2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOuterInput(ctx context.Context, v interface{}) ([]*OuterInput, error) {
  6000  	if v == nil {
  6001  		return nil, nil
  6002  	}
  6003  	var vSlice []interface{}
  6004  	if v != nil {
  6005  		vSlice = graphql.CoerceList(v)
  6006  	}
  6007  	var err error
  6008  	res := make([]*OuterInput, len(vSlice))
  6009  	for i := range vSlice {
  6010  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithIndex(i))
  6011  		res[i], err = ec.unmarshalOOuterInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOuterInput(ctx, vSlice[i])
  6012  		if err != nil {
  6013  			return nil, err
  6014  		}
  6015  	}
  6016  	return res, nil
  6017  }
  6018  
  6019  func (ec *executionContext) unmarshalOOuterInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOuterInput(ctx context.Context, v interface{}) (*OuterInput, error) {
  6020  	if v == nil {
  6021  		return nil, nil
  6022  	}
  6023  	res, err := ec.unmarshalInputOuterInput(ctx, v)
  6024  	return &res, graphql.ErrorOnPath(ctx, err)
  6025  }
  6026  
  6027  func (ec *executionContext) marshalOOuterObject2ᚕᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOuterObject(ctx context.Context, sel ast.SelectionSet, v [][]*OuterObject) graphql.Marshaler {
  6028  	if v == nil {
  6029  		return graphql.Null
  6030  	}
  6031  	ret := make(graphql.Array, len(v))
  6032  	var wg sync.WaitGroup
  6033  	isLen1 := len(v) == 1
  6034  	if !isLen1 {
  6035  		wg.Add(len(v))
  6036  	}
  6037  	for i := range v {
  6038  		i := i
  6039  		fc := &graphql.FieldContext{
  6040  			Index:  &i,
  6041  			Result: &v[i],
  6042  		}
  6043  		ctx := graphql.WithFieldContext(ctx, fc)
  6044  		f := func(i int) {
  6045  			defer func() {
  6046  				if r := recover(); r != nil {
  6047  					ec.Error(ctx, ec.Recover(ctx, r))
  6048  					ret = nil
  6049  				}
  6050  			}()
  6051  			if !isLen1 {
  6052  				defer wg.Done()
  6053  			}
  6054  			ret[i] = ec.marshalOOuterObject2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOuterObject(ctx, sel, v[i])
  6055  		}
  6056  		if isLen1 {
  6057  			f(i)
  6058  		} else {
  6059  			go f(i)
  6060  		}
  6061  
  6062  	}
  6063  	wg.Wait()
  6064  
  6065  	return ret
  6066  }
  6067  
  6068  func (ec *executionContext) marshalOOuterObject2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOuterObject(ctx context.Context, sel ast.SelectionSet, v []*OuterObject) graphql.Marshaler {
  6069  	if v == nil {
  6070  		return graphql.Null
  6071  	}
  6072  	ret := make(graphql.Array, len(v))
  6073  	var wg sync.WaitGroup
  6074  	isLen1 := len(v) == 1
  6075  	if !isLen1 {
  6076  		wg.Add(len(v))
  6077  	}
  6078  	for i := range v {
  6079  		i := i
  6080  		fc := &graphql.FieldContext{
  6081  			Index:  &i,
  6082  			Result: &v[i],
  6083  		}
  6084  		ctx := graphql.WithFieldContext(ctx, fc)
  6085  		f := func(i int) {
  6086  			defer func() {
  6087  				if r := recover(); r != nil {
  6088  					ec.Error(ctx, ec.Recover(ctx, r))
  6089  					ret = nil
  6090  				}
  6091  			}()
  6092  			if !isLen1 {
  6093  				defer wg.Done()
  6094  			}
  6095  			ret[i] = ec.marshalOOuterObject2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOuterObject(ctx, sel, v[i])
  6096  		}
  6097  		if isLen1 {
  6098  			f(i)
  6099  		} else {
  6100  			go f(i)
  6101  		}
  6102  
  6103  	}
  6104  	wg.Wait()
  6105  
  6106  	return ret
  6107  }
  6108  
  6109  func (ec *executionContext) marshalOOuterObject2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐOuterObject(ctx context.Context, sel ast.SelectionSet, v *OuterObject) graphql.Marshaler {
  6110  	if v == nil {
  6111  		return graphql.Null
  6112  	}
  6113  	return ec._OuterObject(ctx, sel, v)
  6114  }
  6115  
  6116  func (ec *executionContext) unmarshalORecursiveInputSlice2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐRecursiveInputSliceᚄ(ctx context.Context, v interface{}) ([]RecursiveInputSlice, error) {
  6117  	if v == nil {
  6118  		return nil, nil
  6119  	}
  6120  	var vSlice []interface{}
  6121  	if v != nil {
  6122  		vSlice = graphql.CoerceList(v)
  6123  	}
  6124  	var err error
  6125  	res := make([]RecursiveInputSlice, len(vSlice))
  6126  	for i := range vSlice {
  6127  		ctx := graphql.WithPathContext(ctx, graphql.NewPathWithIndex(i))
  6128  		res[i], err = ec.unmarshalNRecursiveInputSlice2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐRecursiveInputSlice(ctx, vSlice[i])
  6129  		if err != nil {
  6130  			return nil, err
  6131  		}
  6132  	}
  6133  	return res, nil
  6134  }
  6135  
  6136  func (ec *executionContext) unmarshalORecursiveInputSlice2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐRecursiveInputSlice(ctx context.Context, v interface{}) (*RecursiveInputSlice, error) {
  6137  	if v == nil {
  6138  		return nil, nil
  6139  	}
  6140  	res, err := ec.unmarshalInputRecursiveInputSlice(ctx, v)
  6141  	return &res, graphql.ErrorOnPath(ctx, err)
  6142  }
  6143  
  6144  func (ec *executionContext) unmarshalOThirdParty2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐThirdParty(ctx context.Context, v interface{}) (*ThirdParty, error) {
  6145  	if v == nil {
  6146  		return nil, nil
  6147  	}
  6148  	res, err := UnmarshalThirdParty(v)
  6149  	return &res, graphql.ErrorOnPath(ctx, err)
  6150  }
  6151  
  6152  func (ec *executionContext) marshalOThirdParty2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋfollowschemaᚐThirdParty(ctx context.Context, sel ast.SelectionSet, v *ThirdParty) graphql.Marshaler {
  6153  	if v == nil {
  6154  		return graphql.Null
  6155  	}
  6156  	res := MarshalThirdParty(*v)
  6157  	return res
  6158  }
  6159  
  6160  func (ec *executionContext) unmarshalOTime2ᚖtimeᚐTime(ctx context.Context, v interface{}) (*time.Time, error) {
  6161  	if v == nil {
  6162  		return nil, nil
  6163  	}
  6164  	res, err := graphql.UnmarshalTime(v)
  6165  	return &res, graphql.ErrorOnPath(ctx, err)
  6166  }
  6167  
  6168  func (ec *executionContext) marshalOTime2ᚖtimeᚐTime(ctx context.Context, sel ast.SelectionSet, v *time.Time) graphql.Marshaler {
  6169  	if v == nil {
  6170  		return graphql.Null
  6171  	}
  6172  	res := graphql.MarshalTime(*v)
  6173  	return res
  6174  }
  6175  
  6176  // endregion ***************************** type.gotpl *****************************