...

Package validator

import "github.com/vektah/gqlparser/v2/validator"
Overview
Index
Subdirectories

Overview ▾

Index ▾

Variables
func AddRule(name string, f ruleFunc)
func IsValidFloatString(val reflect.Value, kind reflect.Kind) bool
func IsValidIntString(val reflect.Value, kind reflect.Kind) bool
func LoadSchema(inputs ...*Source) (*Schema, error)
func OrList(items ...string) string
func QuotedOrList(items ...string) string
func SuggestionList(input string, options []string) []string
func Validate(schema *Schema, doc *QueryDocument) gqlerror.List
func ValidateSchemaDocument(sd *SchemaDocument) (*Schema, error)
func VariableValues(schema *ast.Schema, op *ast.OperationDefinition, variables map[string]interface{}) (map[string]interface{}, error)
func Walk(schema *ast.Schema, document *ast.QueryDocument, observers *Events)
type AddErrFunc
type ErrorOption
    func At(position *ast.Position) ErrorOption
    func Message(msg string, args ...interface{}) ErrorOption
    func SuggestListQuoted(prefix string, typed string, suggestions []string) ErrorOption
    func SuggestListUnquoted(prefix string, typed string, suggestions []string) ErrorOption
    func Suggestf(suggestion string, args ...interface{}) ErrorOption
type Events
    func (o *Events) OnDirective(f func(walker *Walker, directive *ast.Directive))
    func (o *Events) OnDirectiveList(f func(walker *Walker, directives []*ast.Directive))
    func (o *Events) OnField(f func(walker *Walker, field *ast.Field))
    func (o *Events) OnFragment(f func(walker *Walker, fragment *ast.FragmentDefinition))
    func (o *Events) OnFragmentSpread(f func(walker *Walker, fragmentSpread *ast.FragmentSpread))
    func (o *Events) OnInlineFragment(f func(walker *Walker, inlineFragment *ast.InlineFragment))
    func (o *Events) OnOperation(f func(walker *Walker, operation *ast.OperationDefinition))
    func (o *Events) OnValue(f func(walker *Walker, value *ast.Value))
    func (o *Events) OnVariable(f func(walker *Walker, variable *ast.VariableDefinition))
type Walker

Package files

error.go messaging.go prelude.go schema.go suggestionList.go validator.go vars.go walk.go

Variables

var ErrUnexpectedType = fmt.Errorf("Unexpected Type")
var Prelude = &ast.Source{
    Name:    "prelude.graphql",
    Input:   preludeGraphql,
    BuiltIn: true,
}

func AddRule

func AddRule(name string, f ruleFunc)

addRule to rule set. f is called once each time `Validate` is executed.

func IsValidFloatString

func IsValidFloatString(val reflect.Value, kind reflect.Kind) bool

func IsValidIntString

func IsValidIntString(val reflect.Value, kind reflect.Kind) bool

func LoadSchema

func LoadSchema(inputs ...*Source) (*Schema, error)

func OrList

func OrList(items ...string) string

Given [ A, B, C ] return 'A, B, or C'.

func QuotedOrList

func QuotedOrList(items ...string) string

Given [ A, B, C ] return '"A", "B", or "C"'.

func SuggestionList

func SuggestionList(input string, options []string) []string

Given an invalid input string and a list of valid options, returns a filtered list of valid options sorted based on their similarity with the input.

func Validate

func Validate(schema *Schema, doc *QueryDocument) gqlerror.List

func ValidateSchemaDocument

func ValidateSchemaDocument(sd *SchemaDocument) (*Schema, error)

func VariableValues

func VariableValues(schema *ast.Schema, op *ast.OperationDefinition, variables map[string]interface{}) (map[string]interface{}, error)

VariableValues coerces and validates variable values

func Walk

func Walk(schema *ast.Schema, document *ast.QueryDocument, observers *Events)

type AddErrFunc

type AddErrFunc func(options ...ErrorOption)

type ErrorOption

type ErrorOption func(err *gqlerror.Error)

func At

func At(position *ast.Position) ErrorOption

func Message

func Message(msg string, args ...interface{}) ErrorOption

func SuggestListQuoted

func SuggestListQuoted(prefix string, typed string, suggestions []string) ErrorOption

func SuggestListUnquoted

func SuggestListUnquoted(prefix string, typed string, suggestions []string) ErrorOption

func Suggestf

func Suggestf(suggestion string, args ...interface{}) ErrorOption

type Events

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

func (*Events) OnDirective

func (o *Events) OnDirective(f func(walker *Walker, directive *ast.Directive))

func (*Events) OnDirectiveList

func (o *Events) OnDirectiveList(f func(walker *Walker, directives []*ast.Directive))

func (*Events) OnField

func (o *Events) OnField(f func(walker *Walker, field *ast.Field))

func (*Events) OnFragment

func (o *Events) OnFragment(f func(walker *Walker, fragment *ast.FragmentDefinition))

func (*Events) OnFragmentSpread

func (o *Events) OnFragmentSpread(f func(walker *Walker, fragmentSpread *ast.FragmentSpread))

func (*Events) OnInlineFragment

func (o *Events) OnInlineFragment(f func(walker *Walker, inlineFragment *ast.InlineFragment))

func (*Events) OnOperation

func (o *Events) OnOperation(f func(walker *Walker, operation *ast.OperationDefinition))

func (*Events) OnValue

func (o *Events) OnValue(f func(walker *Walker, value *ast.Value))

func (*Events) OnVariable

func (o *Events) OnVariable(f func(walker *Walker, variable *ast.VariableDefinition))

type Walker

type Walker struct {
    Context   context.Context
    Observers *Events
    Schema    *ast.Schema
    Document  *ast.QueryDocument

    CurrentOperation *ast.OperationDefinition
    // contains filtered or unexported fields
}

Subdirectories

Name Synopsis
..
rules