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 {
	Address struct {
		ID       func(childComplexity int) int
		Location func(childComplexity int) int
	}

	Query struct {
		Search     func(childComplexity int, input *model.SearchArgs) int
		User       func(childComplexity int, id external.ObjectID) int
		UserByTier func(childComplexity int, tier model.Tier, darkMode *model.Prefs) int
	}

	User struct {
		Address           func(childComplexity int) int
		Created           func(childComplexity int) int
		CustomResolver    func(childComplexity int) int
		ID                func(childComplexity int) int
		IsBanned          func(childComplexity int) int
		Modified          func(childComplexity int) int
		Name              func(childComplexity int) int
		PrimitiveResolver func(childComplexity int) int
		PtrPrefs          func(childComplexity int) int
		Tier              func(childComplexity int) int
		ValPrefs          func(childComplexity int) int
	}
}

type Config

type Config struct {
	Resolvers  ResolverRoot
	Directives DirectiveRoot
	Complexity ComplexityRoot
}

type DirectiveRoot

type DirectiveRoot struct {
}

type QueryResolver

type QueryResolver interface {
	User(ctx context.Context, id external.ObjectID) (*model.User, error)
	Search(ctx context.Context, input *model.SearchArgs) ([]*model.User, error)
	UserByTier(ctx context.Context, tier model.Tier, darkMode *model.Prefs) ([]*model.User, error)
}

type Resolver

type Resolver struct {
}

func (*Resolver) Query

func (r *Resolver) Query() QueryResolver

func (*Resolver) User

func (r *Resolver) User() UserResolver

type ResolverRoot

type ResolverRoot interface {
	Query() QueryResolver
	User() UserResolver
}

type UserResolver

type UserResolver interface {
	PrimitiveResolver(ctx context.Context, obj *model.User) (string, error)
	CustomResolver(ctx context.Context, obj *model.User) (*model.Point, error)
}

Directories

Path Synopsis
external
model
server