graph

package
v0.0.0-...-4b559b3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 2, 2024 License: MIT Imports: 15 Imported by: 1

Documentation

Overview

This file will not be regenerated automatically.

It serves as dependency injection for your app, add any dependencies you require here.

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrUnknownType  = errors.New("unknown type")
	ErrTypeNotFound = errors.New("type not found")
)

Functions

func NewExecutableSchema

func NewExecutableSchema(cfg Config) graphql.ExecutableSchema

NewExecutableSchema creates an ExecutableSchema from the ResolverRoot interface.

Types

type ComplexityRoot

type ComplexityRoot struct {
	Entity struct {
		FindManufacturerByID             func(childComplexity int, id string) int
		FindProductByManufacturerIDAndID func(childComplexity int, manufacturerID string, id string) int
		FindProductByUpc                 func(childComplexity int, upc string) int
	}

	Manufacturer struct {
		ID   func(childComplexity int) int
		Name func(childComplexity int) int
	}

	Product struct {
		ID           func(childComplexity int) int
		Manufacturer func(childComplexity int) int
		Name         func(childComplexity int) int
		Price        func(childComplexity int) int
		Upc          func(childComplexity int) int
	}

	Query struct {
		TopProducts func(childComplexity int, first *int) int
		// contains filtered or unexported fields
	}
	// contains filtered or unexported fields
}

type Config

type Config struct {
	Schema     *ast.Schema
	Resolvers  ResolverRoot
	Directives DirectiveRoot
	Complexity ComplexityRoot
}

type DirectiveRoot

type DirectiveRoot struct {
}

type EntityResolver

type EntityResolver interface {
	FindManufacturerByID(ctx context.Context, id string) (*model.Manufacturer, error)
	FindProductByManufacturerIDAndID(ctx context.Context, manufacturerID string, id string) (*model.Product, error)
	FindProductByUpc(ctx context.Context, upc string) (*model.Product, error)
}

type QueryResolver

type QueryResolver interface {
	TopProducts(ctx context.Context, first *int) ([]*model.Product, error)
}

type Resolver

type Resolver struct{}

func (*Resolver) Entity

func (r *Resolver) Entity() EntityResolver

Entity returns EntityResolver implementation.

func (*Resolver) Query

func (r *Resolver) Query() QueryResolver

Query returns QueryResolver implementation.

type ResolverRoot

type ResolverRoot interface {
	Entity() EntityResolver
	Query() QueryResolver
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL