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 }}