// Code generated by github.com/99designs/gqlgen, DO NOT EDIT.

package usefunctionsyntaxforexecutioncontext

import (
	"context"
)

type Stub struct {
	MutationResolver struct {
		CreateUser func(ctx context.Context, input CreateUserInput) (*User, error)
		DeleteUser func(ctx context.Context, id string) (*MutationResponse, error)
	}
	QueryResolver struct {
		GetUser   func(ctx context.Context, id string) (*User, error)
		ListUsers func(ctx context.Context, filter *UserFilter) ([]*User, error)
		GetEntity func(ctx context.Context, id string) (Entity, error)
	}
	SubscriptionResolver struct {
		UserCreated func(ctx context.Context) (<-chan *User, error)
	}
}

func (r *Stub) Mutation() MutationResolver {
	return &stubMutation{r}
}
func (r *Stub) Query() QueryResolver {
	return &stubQuery{r}
}
func (r *Stub) Subscription() SubscriptionResolver {
	return &stubSubscription{r}
}

type stubMutation struct{ *Stub }

func (r *stubMutation) CreateUser(ctx context.Context, input CreateUserInput) (*User, error) {
	return r.MutationResolver.CreateUser(ctx, input)
}
func (r *stubMutation) DeleteUser(ctx context.Context, id string) (*MutationResponse, error) {
	return r.MutationResolver.DeleteUser(ctx, id)
}

type stubQuery struct{ *Stub }

func (r *stubQuery) GetUser(ctx context.Context, id string) (*User, error) {
	return r.QueryResolver.GetUser(ctx, id)
}
func (r *stubQuery) ListUsers(ctx context.Context, filter *UserFilter) ([]*User, error) {
	return r.QueryResolver.ListUsers(ctx, filter)
}
func (r *stubQuery) GetEntity(ctx context.Context, id string) (Entity, error) {
	return r.QueryResolver.GetEntity(ctx, id)
}

type stubSubscription struct{ *Stub }

func (r *stubSubscription) UserCreated(ctx context.Context) (<-chan *User, error) {
	return r.SubscriptionResolver.UserCreated(ctx)
}
