Documentation
¶
Index ¶
- Constants
- Variables
- func GetArgumentValues(argDefs []*graphql.Argument, argASTs []*ast.Argument, ...) (map[string]any, error)
- func GetPathFieldSubSelections(info graphql.ResolveInfo, field ...string) (names []string, err error)
- func MakeExecutableSchema(config ExecutableSchema) (graphql.Schema, error)
- func MakeExecutableSchemaWithContext(ctx context.Context, config ExecutableSchema) (graphql.Schema, error)
- func MergeExtensions(obj *ast.ObjectDefinition, extensions ...*ast.ObjectDefinition) *ast.ObjectDefinition
- func ReadSourceFiles(p string, recursive ...bool) (string, error)
- func UnaliasedPathArray(info graphql.ResolveInfo) []any
- type DependencyMap
- type DirectiveMap
- type EnumResolver
- type ExecutableSchema
- type FieldResolve
- type FieldResolveMap
- type InterfaceResolver
- type ObjectResolver
- type Resolver
- type ResolverMap
- type ScalarResolver
- type SchemaDirectiveVisitor
- type SchemaDirectiveVisitorMap
- type UnionResolver
- type VisitArgumentDefinitionParams
- type VisitEnumParams
- type VisitEnumValueParams
- type VisitFieldDefinitionParams
- type VisitInputFieldDefinitionParams
- type VisitInputObjectParams
- type VisitInterfaceParams
- type VisitObjectParams
- type VisitScalarParams
- type VisitSchemaParams
- type VisitUnionParams
Constants ¶
const ( DefaultRootQueryName = "Query" DefaultRootMutationName = "Mutation" DefaultRootSubscriptionName = "Subscription" )
default root type names
const IntrospectionQuery = `` /* 1304-byte string literal not displayed */
Variables ¶
var HideDirective = graphql.NewDirective(graphql.DirectiveConfig{ Name: directiveHide, Description: "Hide a field, useful when generating types from the AST where the backend type has more fields than the graphql type", Locations: []string{graphql.DirectiveLocationFieldDefinition}, Args: graphql.FieldConfigArgument{}, })
HideDirective hides a define field
Functions ¶
func GetArgumentValues ¶
func GetArgumentValues(argDefs []*graphql.Argument, argASTs []*ast.Argument, variableVariables map[string]any) (map[string]any, error)
Prepares an object map of argument values given a list of argument definitions and list of argument AST nodes.
func GetPathFieldSubSelections ¶
func GetPathFieldSubSelections(info graphql.ResolveInfo, field ...string) (names []string, err error)
GetPathFieldSubSelections gets the subselectiond for a path
func MakeExecutableSchema ¶
func MakeExecutableSchema(config ExecutableSchema) (graphql.Schema, error)
MakeExecutableSchema is shorthand for ExecutableSchema{}.Make(ctx context.Context)
func MakeExecutableSchemaWithContext ¶
func MakeExecutableSchemaWithContext(ctx context.Context, config ExecutableSchema) (graphql.Schema, error)
MakeExecutableSchemaWithContext make a schema and supply a context
func MergeExtensions ¶
func MergeExtensions(obj *ast.ObjectDefinition, extensions ...*ast.ObjectDefinition) *ast.ObjectDefinition
Merges object definitions
func ReadSourceFiles ¶
ReadSourceFiles reads all source files from a specified path
func UnaliasedPathArray ¶
func UnaliasedPathArray(info graphql.ResolveInfo) []any
UnaliasedPathArray gets the path array for a resolve function without aliases
Types ¶
type DependencyMap ¶
type DirectiveMap ¶
DirectiveMap a map of directives
type EnumResolver ¶
EnumResolver config for enum values
type ExecutableSchema ¶
type ExecutableSchema struct { TypeDefs any // a string, []string, or func() []string Resolvers map[string]any // a map of Resolver, Directive, Scalar, Enum, Object, InputObject, Union, or Interface SchemaDirectives SchemaDirectiveVisitorMap // Map of SchemaDirectiveVisitor Extensions []graphql.Extension // GraphQL extensions Debug bool // Prints debug messages during compile // contains filtered or unexported fields }
ExecutableSchema configuration for making an executable schema this attempts to provide similar functionality to Apollo graphql-tools https://www.apollographql.com/docs/graphql-tools/generate-schema
func (*ExecutableSchema) ConcatenateTypeDefs ¶
func (c *ExecutableSchema) ConcatenateTypeDefs() (*ast.Document, error)
ConcatenateTypeDefs combines one ore more typeDefs into an ast Document
func (*ExecutableSchema) Document ¶
func (c *ExecutableSchema) Document() *ast.Document
Document returns the document
type FieldResolve ¶
type FieldResolve struct { Resolve graphql.FieldResolveFn Subscribe graphql.FieldResolveFn }
FieldResolve field resolver
type FieldResolveMap ¶
type FieldResolveMap map[string]*FieldResolve
FieldResolveMap map of field resolve functions
type InterfaceResolver ¶
type InterfaceResolver struct { ResolveType graphql.ResolveTypeFn Fields FieldResolveMap }
InterfaceResolver config for interface resolve
type ObjectResolver ¶
type ObjectResolver struct { IsTypeOf graphql.IsTypeOfFn Fields FieldResolveMap }
ObjectResolver config for object resolver map
type Resolver ¶
type Resolver interface {
// contains filtered or unexported methods
}
Resolver interface to a resolver configuration
type ResolverMap ¶
ResolverMap a map of resolver configurations. Accept generic interfaces and identify types at build
type ScalarResolver ¶
type ScalarResolver struct { Serialize graphql.SerializeFn ParseValue graphql.ParseValueFn ParseLiteral graphql.ParseLiteralFn }
ScalarResolver config for a scalar resolve map
type SchemaDirectiveVisitor ¶
type SchemaDirectiveVisitor struct { VisitSchema func(p VisitSchemaParams) error VisitScalar func(p VisitScalarParams) error VisitObject func(p VisitObjectParams) error VisitFieldDefinition func(p VisitFieldDefinitionParams) error VisitArgumentDefinition func(p VisitArgumentDefinitionParams) error VisitInterface func(p VisitInterfaceParams) error VisitUnion func(p VisitUnionParams) error VisitEnum func(p VisitEnumParams) error VisitEnumValue func(p VisitEnumValueParams) error VisitInputObject func(p VisitInputObjectParams) error VisitInputFieldDefinition func(p VisitInputFieldDefinitionParams) error }
SchemaDirectiveVisitor defines a schema visitor. This attempts to provide similar functionality to Apollo graphql-tools https://www.apollographql.com/docs/graphql-tools/schema-directives/
type SchemaDirectiveVisitorMap ¶
type SchemaDirectiveVisitorMap map[string]*SchemaDirectiveVisitor
SchemaDirectiveVisitorMap a map of schema directive visitors
type UnionResolver ¶
type UnionResolver struct {
ResolveType graphql.ResolveTypeFn
}
UnionResolver config for interface resolve
type VisitArgumentDefinitionParams ¶
type VisitArgumentDefinitionParams struct { Context context.Context Config *graphql.ArgumentConfig Node *ast.InputValueDefinition Args map[string]any }
VisitArgumentDefinitionParams params
type VisitEnumParams ¶
type VisitEnumParams struct { Context context.Context Config *graphql.EnumConfig Node *ast.EnumDefinition Args map[string]any }
VisitEnumParams params
type VisitEnumValueParams ¶
type VisitEnumValueParams struct { Context context.Context Config *graphql.EnumValueConfig Node *ast.EnumValueDefinition Args map[string]any }
VisitEnumValueParams params
type VisitFieldDefinitionParams ¶
type VisitFieldDefinitionParams struct { Context context.Context Config *graphql.Field Node *ast.FieldDefinition Args map[string]any ParentName string ParentKind string }
VisitFieldDefinitionParams params
type VisitInputFieldDefinitionParams ¶
type VisitInputFieldDefinitionParams struct { Context context.Context Config *graphql.InputObjectFieldConfig Node *ast.InputValueDefinition Args map[string]any }
VisitInputFieldDefinitionParams params
type VisitInputObjectParams ¶
type VisitInputObjectParams struct { Context context.Context Config *graphql.InputObjectConfig Node *ast.InputObjectDefinition Args map[string]any }
VisitInputObjectParams params
type VisitInterfaceParams ¶
type VisitInterfaceParams struct { Context context.Context Config *graphql.InterfaceConfig Node *ast.InterfaceDefinition Args map[string]any }
VisitInterfaceParams params
type VisitObjectParams ¶
type VisitObjectParams struct { Context context.Context Config *graphql.ObjectConfig Node *ast.ObjectDefinition Extensions []*ast.ObjectDefinition Args map[string]any }
VisitObjectParams params
type VisitScalarParams ¶
type VisitScalarParams struct { Context context.Context Config *graphql.ScalarConfig Node *ast.ScalarDefinition Args map[string]any }
VisitScalarParams params
type VisitSchemaParams ¶
type VisitSchemaParams struct { Context context.Context Config *graphql.SchemaConfig Node *ast.SchemaDefinition Args map[string]any }
VisitSchemaParams params
type VisitUnionParams ¶
type VisitUnionParams struct { Context context.Context Config *graphql.UnionConfig Node *ast.UnionDefinition Args map[string]any }
VisitUnionParams params