aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/github.com/99designs/gqlgen/codegen/object_build.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/99designs/gqlgen/codegen/object_build.go')
-rw-r--r--vendor/github.com/99designs/gqlgen/codegen/object_build.go18
1 files changed, 9 insertions, 9 deletions
diff --git a/vendor/github.com/99designs/gqlgen/codegen/object_build.go b/vendor/github.com/99designs/gqlgen/codegen/object_build.go
index ee2b2f1c..279d1eb6 100644
--- a/vendor/github.com/99designs/gqlgen/codegen/object_build.go
+++ b/vendor/github.com/99designs/gqlgen/codegen/object_build.go
@@ -9,7 +9,7 @@ import (
"golang.org/x/tools/go/loader"
)
-func (cfg *Config) buildObjects(types NamedTypes, prog *loader.Program, imports *Imports) (Objects, error) {
+func (cfg *Config) buildObjects(types NamedTypes, prog *loader.Program) (Objects, error) {
var objects Objects
for _, typ := range cfg.schema.Types {
@@ -17,7 +17,7 @@ func (cfg *Config) buildObjects(types NamedTypes, prog *loader.Program, imports
continue
}
- obj, err := cfg.buildObject(types, typ, imports)
+ obj, err := cfg.buildObject(types, typ)
if err != nil {
return nil, err
}
@@ -27,7 +27,7 @@ func (cfg *Config) buildObjects(types NamedTypes, prog *loader.Program, imports
return nil, err
}
if def != nil {
- for _, bindErr := range bindObject(def.Type(), obj, imports, cfg.StructTag) {
+ for _, bindErr := range bindObject(def.Type(), obj, cfg.StructTag) {
log.Println(bindErr.Error())
log.Println(" Adding resolver method")
}
@@ -81,12 +81,11 @@ func sanitizeArgName(name string) string {
return name
}
-func (cfg *Config) buildObject(types NamedTypes, typ *ast.Definition, imports *Imports) (*Object, error) {
+func (cfg *Config) buildObject(types NamedTypes, typ *ast.Definition) (*Object, error) {
obj := &Object{NamedType: types[typ.Name]}
typeEntry, entryExists := cfg.Models[typ.Name]
- imp := imports.findByPath(cfg.Exec.ImportPath())
- obj.ResolverInterface = &Ref{GoType: obj.GQLType + "Resolver", Import: imp}
+ obj.ResolverInterface = &Ref{GoType: obj.GQLType + "Resolver"}
if typ == cfg.schema.Query {
obj.Root = true
@@ -104,12 +103,15 @@ func (cfg *Config) buildObject(types NamedTypes, typ *ast.Definition, imports *I
obj.Satisfies = append(obj.Satisfies, typ.Interfaces...)
+ for _, intf := range cfg.schema.GetImplements(typ) {
+ obj.Implements = append(obj.Implements, types[intf.Name])
+ }
+
for _, field := range typ.Fields {
if typ == cfg.schema.Query && field.Name == "__type" {
obj.Fields = append(obj.Fields, Field{
Type: &Type{types["__Schema"], []string{modPtr}, ast.NamedType("__Schema", nil), nil},
GQLName: "__schema",
- NoErr: true,
GoFieldType: GoFieldMethod,
GoReceiverName: "ec",
GoFieldName: "introspectSchema",
@@ -122,7 +124,6 @@ func (cfg *Config) buildObject(types NamedTypes, typ *ast.Definition, imports *I
obj.Fields = append(obj.Fields, Field{
Type: &Type{types["__Type"], []string{modPtr}, ast.NamedType("__Schema", nil), nil},
GQLName: "__type",
- NoErr: true,
GoFieldType: GoFieldMethod,
GoReceiverName: "ec",
GoFieldName: "introspectType",
@@ -162,7 +163,6 @@ func (cfg *Config) buildObject(types NamedTypes, typ *ast.Definition, imports *I
if err != nil {
return nil, errors.Errorf("default value for %s.%s is not valid: %s", typ.Name, field.Name, err.Error())
}
- newArg.StripPtr()
}
args = append(args, newArg)
}