args.gotpl

 1	{{- if . }}args := map[string]interface{}{} {{end}}
 2	{{- range $i, $arg := . }}
 3		var arg{{$i}} {{$arg.Signature }}
 4		if tmp, ok := field.Args[{{$arg.GQLName|quote}}]; ok {
 5			var err error
 6			{{$arg.Unmarshal (print "arg" $i) "tmp" }}
 7			if err != nil {
 8				ec.Error(ctx, err)
 9				{{- if $arg.Object.Stream }}
10					return nil
11				{{- else }}
12					return graphql.Null
13				{{- end }}
14			}
15		} {{ if $arg.Default }} else {
16			var tmp interface{} = {{ $arg.Default | dump }}
17			var err error
18			{{$arg.Unmarshal (print "arg" $i) "tmp" }}
19			if err != nil {
20				ec.Error(ctx, err)
21				{{- if $arg.Object.Stream }}
22					return nil
23				{{- else }}
24					return graphql.Null
25				{{- end }}
26			}
27		}
28		{{end }}
29		args[{{$arg.GQLName|quote}}] = arg{{$i}}
30	{{- end -}}