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 { CompleteTodo func(childComplexity int, id string) int CreateTodo func(childComplexity int, cmd shared.CreateTodo) int UpdateTodo func(childComplexity int, id string, cmd shared.UpdateTodo) int } Query struct { TodoByID func(childComplexity int, id string) int Todos func(childComplexity int) int TodosByUserID func(childComplexity int, userID string) int Users func(childComplexity int) int UsersByID func(childComplexity int, id string) int } Subscription struct { TodoOverdue func(childComplexity int, userID string) int } Todo struct { CompletedAt func(childComplexity int) int CreatedAt func(childComplexity int) int Done func(childComplexity int) int DueAt func(childComplexity int) int ID func(childComplexity int) int Text func(childComplexity int) int UserID func(childComplexity int) int } TodoMutationResponse struct { Error func(childComplexity int) int Message func(childComplexity int) int Sucess func(childComplexity int) int Todo func(childComplexity int) int } User struct { ID func(childComplexity int) int Name 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 { CreateTodo(ctx context.Context, cmd shared.CreateTodo) (*shared.TodoMutationResponse, error) UpdateTodo(ctx context.Context, id string, cmd shared.UpdateTodo) (*shared.TodoMutationResponse, error) CompleteTodo(ctx context.Context, id string) (*shared.TodoMutationResponse, error) }
type QueryResolver ¶
type QueryResolver interface { Todos(ctx context.Context) ([]*shared.Todo, error) TodosByUserID(ctx context.Context, userID string) ([]*shared.Todo, error) TodoByID(ctx context.Context, id string) (*shared.Todo, error) Users(ctx context.Context) ([]*shared.User, error) UsersByID(ctx context.Context, id string) (*shared.User, error) }
type Resolver ¶
type Resolver struct { UserRepo user.UserRepository TodoRepo todo.TodoRepository SubscriptionSvc todo.SubscriptionService }
func (*Resolver) Mutation ¶
func (r *Resolver) Mutation() MutationResolver
Mutation returns MutationResolver implementation.
func (*Resolver) Query ¶
func (r *Resolver) Query() QueryResolver
Query returns QueryResolver implementation.
func (*Resolver) Subscription ¶
func (r *Resolver) Subscription() SubscriptionResolver
Subscription returns SubscriptionResolver implementation.
type ResolverRoot ¶
type ResolverRoot interface { Mutation() MutationResolver Query() QueryResolver Subscription() SubscriptionResolver }
Click to show internal directories.
Click to hide internal directories.