github.com/99designs/gqlgen@v0.17.45/plugin/resolvergen/resolver.gotpl (about) 1 {{ reserveImport "context" }} 2 {{ reserveImport "fmt" }} 3 {{ reserveImport "io" }} 4 {{ reserveImport "strconv" }} 5 {{ reserveImport "time" }} 6 {{ reserveImport "sync" }} 7 {{ reserveImport "errors" }} 8 {{ reserveImport "bytes" }} 9 10 {{ reserveImport "github.com/vektah/gqlparser/v2" }} 11 {{ reserveImport "github.com/vektah/gqlparser/v2/ast" }} 12 {{ reserveImport "github.com/99designs/gqlgen/graphql" }} 13 {{ reserveImport "github.com/99designs/gqlgen/graphql/introspection" }} 14 15 {{ .Imports }} 16 17 {{ if .HasRoot }} 18 type {{.ResolverType}} struct {} 19 {{ end }} 20 21 {{ range $resolver := .Resolvers -}} 22 {{ if $resolver.Comment -}} 23 // {{ $resolver.Comment }} 24 {{- else if not $.OmitTemplateComment -}} 25 // {{ $resolver.Field.GoFieldName }} is the resolver for the {{ $resolver.Field.Name }} field. 26 {{- end }} 27 func (r *{{lcFirst $resolver.Object.Name}}{{ucFirst $.ResolverType}}) {{$resolver.Field.GoFieldName}}{{ with $resolver.PrevDecl }}{{ $resolver.Field.ShortResolverSignature .Type }}{{ else }}{{ $resolver.Field.ShortResolverDeclaration }}{{ end }}{ 28 {{ $resolver.Implementation }} 29 } 30 31 {{ end }} 32 33 {{ range $object := .Objects -}} 34 {{ if not $.OmitTemplateComment -}} 35 // {{ucFirst $object.Name}} returns {{ $object.ResolverInterface | ref }} implementation. 36 {{- end }} 37 func (r *{{$.ResolverType}}) {{ucFirst $object.Name}}() {{ $object.ResolverInterface | ref }} { return &{{lcFirst $object.Name}}{{ucFirst $.ResolverType}}{r} } 38 {{ end }} 39 40 {{ range $object := .Objects -}} 41 type {{lcFirst $object.Name}}{{ucFirst $.ResolverType}} struct { *{{$.ResolverType}} } 42 {{ end }} 43 44 {{ if (ne .RemainingSource "") }} 45 // !!! WARNING !!! 46 // The code below was going to be deleted when updating resolvers. It has been copied here so you have 47 // one last chance to move it out of harms way if you want. There are two reasons this happens: 48 // - When renaming or deleting a resolver the old code will be put in here. You can safely delete 49 // it when you're done. 50 // - You have helper methods in this file. Move them out to keep these resolver files clean. 51 {{ .RemainingSource }} 52 {{ end }}