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