generated

package
v0.0.0-...-83efb8c Latest Latest
Warning

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

Go to latest
Published: Nov 9, 2024 License: MIT Imports: 14 Imported by: 0

Documentation

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 {
	Book struct {
		Isbn         func(childComplexity int) int
		Metadata     func(childComplexity int) int
		SimilarBooks func(childComplexity int) int
		Title        func(childComplexity int) int
		Year         func(childComplexity int) int
	}

	Entity struct {
		FindBookByIsbn  func(childComplexity int, isbn string) int
		FindLibraryByID func(childComplexity int, id string) int
	}

	Error struct {
		Code    func(childComplexity int) int
		Message func(childComplexity int) int
	}

	KeyValue struct {
		Key   func(childComplexity int) int
		Value func(childComplexity int) int
	}

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

	Query struct {
		Book    func(childComplexity int, isbn string) int
		Books   func(childComplexity int) int
		Library func(childComplexity int, id string) int
		// contains filtered or unexported fields
	}
	// contains filtered or unexported fields
}

type Config

type Config struct {
	Resolvers  ResolverRoot
	Directives DirectiveRoot
	Complexity ComplexityRoot
}

type DirectiveRoot

type DirectiveRoot struct {
	CacheControl func(ctx context.Context, obj interface{}, next graphql.Resolver, maxAge *int, scope *model.CacheControlScope, inheritMaxAge *bool) (res interface{}, err error)
	Stream       func(ctx context.Context, obj interface{}, next graphql.Resolver) (res interface{}, err error)
	Transform    func(ctx context.Context, obj interface{}, next graphql.Resolver, from string) (res interface{}, err error)
}

type EntityResolver

type EntityResolver interface {
	FindBookByIsbn(ctx context.Context, isbn string) (*model.Book, error)
	FindLibraryByID(ctx context.Context, id string) (*model.Library, error)
}

type QueryResolver

type QueryResolver interface {
	Book(ctx context.Context, isbn string) (*model.Book, error)
	Books(ctx context.Context) ([]*model.Book, error)
	Library(ctx context.Context, id string) (*model.Library, error)
}

type ResolverRoot

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

Jump to

Keyboard shortcuts

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