Help us shape the future of Go! Take the 2026 Go Developer Survey

generated

package
v1.19.0 Latest Latest
Warning

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

Go to latest
Published: Sep 24, 2026 License: MIT Imports: 14 Imported by: 1

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 {
	Cat struct {
		Name func(childComplexity int) int
	}

	DetatchedQuestion struct {
		Body func(childComplexity int) int
		Upc  func(childComplexity int) int
	}

	Entity struct {
		FindProductByUpc func(childComplexity int, upc string) int
		FindUserByID     func(childComplexity int, id string) int
	}

	Mutation struct {
		AddReview func(childComplexity int, authorID string, upc string, review string) int
	}

	OtherQuestion struct {
		Body func(childComplexity int) int
		Upc  func(childComplexity int) int
	}

	Product struct {
		Reviews func(childComplexity int) int
		Upc     func(childComplexity int) int
	}

	Query struct {
		Cat func(childComplexity int) int
		Me  func(childComplexity int) int
		// contains filtered or unexported fields
	}

	Question struct {
		Body    func(childComplexity int) int
		Subject func(childComplexity int) int
		Upc     func(childComplexity int) int
	}

	Rating struct {
		Body  func(childComplexity int) int
		Score func(childComplexity int) int
		Upc   func(childComplexity int) int
	}

	Review struct {
		Attachments func(childComplexity int) int
		Author      func(childComplexity int) int
		Body        func(childComplexity int) int
		Comment     func(childComplexity int) int
		Product     func(childComplexity int) int
	}

	User struct {
		ID       func(childComplexity int) int
		RealName func(childComplexity int) int
		Reviews  func(childComplexity int) int
		Username func(childComplexity int) int
	}

	Video struct {
		Size    func(childComplexity int) int
		Subject func(childComplexity int) int
		Upc     func(childComplexity int) int
	}
	// 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 EntityRepresentation added in v1.6.0

type EntityRepresentation map[string]any

EntityRepresentation is the JSON representation of an entity sent by the Router used as the inputs for us to resolve.

We make it a map because we know the top level JSON is always an object.

type EntityResolver

type EntityResolver interface {
	FindProductByUpc(ctx context.Context, upc string) (*model.Product, error)
	FindUserByID(ctx context.Context, id string) (*model.User, error)
}

type EntityWithIndex added in v1.6.0

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

type MutationResolver

type MutationResolver interface {
	AddReview(ctx context.Context, authorID string, upc string, review string) (*model.Review, error)
}

type ProductResolver

type ProductResolver interface {
	Reviews(ctx context.Context, obj *model.Product) ([]*model.Review, error)
}

type QueryResolver

type QueryResolver interface {
	Me(ctx context.Context) (*model.User, error)
	Cat(ctx context.Context) (*model.Cat, error)
}

type ResolverRoot

type ResolverRoot interface {
	Entity() EntityResolver
	Mutation() MutationResolver
	Product() ProductResolver
	Query() QueryResolver
	Review() ReviewResolver
	User() UserResolver
}

type ReviewResolver

type ReviewResolver interface {
	Attachments(ctx context.Context, obj *model.Review) ([]model.Attachment, error)
	Comment(ctx context.Context, obj *model.Review) (model.Comment, error)
}

type UserResolver

type UserResolver interface {
	Username(ctx context.Context, obj *model.User) (string, error)
	Reviews(ctx context.Context, obj *model.User) ([]*model.Review, error)
	RealName(ctx context.Context, obj *model.User) (string, error)
}

Jump to

Keyboard shortcuts

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