...

Text file src/github.com/99designs/gqlgen/plugin/resolvergen/testdata/resolvertemplate/customResolverTemplate.gotpl

Documentation: github.com/99designs/gqlgen/plugin/resolvergen/testdata/resolvertemplate

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

View as plain text