graph

package
v0.0.0-...-c91c6ab Latest Latest
Warning

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

Go to latest
Published: May 21, 2023 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewExecutableSchema

func NewExecutableSchema(cfg Config) graphql.ExecutableSchema

NewExecutableSchema creates an ExecutableSchema from the ResolverRoot interface.

Types

type ComplexityRoot

type ComplexityRoot struct {
	Mutation struct {
		CreateProduct func(childComplexity int, input model.ProductInput) int
		DeleteProduct func(childComplexity int, id string) int
		UpdateProduct func(childComplexity int, id string, input model.ProductInput) int
	}

	Product struct {
		Description func(childComplexity int) int
		ID          func(childComplexity int) int
		IsActive    func(childComplexity int) int
		Name        func(childComplexity int) int
		Price       func(childComplexity int) int
		Stock       func(childComplexity int) int
		Unit        func(childComplexity int) int
	}

	Query struct {
		Product       func(childComplexity int, id string) int
		ProductByName func(childComplexity int, name string) int
		Products      func(childComplexity int) int
	}
}

type Config

type Config struct {
	Resolvers  ResolverRoot
	Directives DirectiveRoot
	Complexity ComplexityRoot
}

type DirectiveRoot

type DirectiveRoot struct {
}

type MutationResolver

type MutationResolver interface {
	CreateProduct(ctx context.Context, input model.ProductInput) (*product.Product, error)
	UpdateProduct(ctx context.Context, id string, input model.ProductInput) (*product.Product, error)
	DeleteProduct(ctx context.Context, id string) (*product.Product, error)
}

type QueryResolver

type QueryResolver interface {
	Product(ctx context.Context, id string) (*product.Product, error)
	ProductByName(ctx context.Context, name string) (*product.Product, error)
	Products(ctx context.Context) ([]*product.Product, error)
}

type Resolver

type Resolver struct {
	// contains filtered or unexported fields
}

func NewResolver

func NewResolver(uc product.Usecase) *Resolver

func (*Resolver) Mutation

func (r *Resolver) Mutation() MutationResolver

Mutation returns MutationResolver implementation.

func (*Resolver) Query

func (r *Resolver) Query() QueryResolver

Query returns QueryResolver implementation.

type ResolverRoot

type ResolverRoot interface {
	Mutation() MutationResolver
	Query() QueryResolver
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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