located.go

 1package graphql
 2
 3import (
 4	"errors"
 5	"github.com/graphql-go/graphql/gqlerrors"
 6	"github.com/graphql-go/graphql/language/ast"
 7)
 8
 9func NewLocatedError(err interface{}, nodes []ast.Node) *gqlerrors.Error {
10	var origError error
11	message := "An unknown error occurred."
12	if err, ok := err.(error); ok {
13		message = err.Error()
14		origError = err
15	}
16	if err, ok := err.(string); ok {
17		message = err
18		origError = errors.New(err)
19	}
20	stack := message
21	return gqlerrors.NewError(
22		message,
23		nodes,
24		stack,
25		nil,
26		[]int{},
27		origError,
28	)
29}
30
31func FieldASTsToNodeASTs(fieldASTs []*ast.Field) []ast.Node {
32	nodes := []ast.Node{}
33	for _, fieldAST := range fieldASTs {
34		nodes = append(nodes, fieldAST)
35	}
36	return nodes
37}