cubefs
39 строк · 786.0 Байт
1package gqlerrors
2
3import (
4"errors"
5"github.com/graphql-go/graphql/language/ast"
6)
7
8// NewLocatedError creates a graphql.Error with location info
9// @deprecated 0.4.18
10// Already exists in `graphql.NewLocatedError()`
11func NewLocatedError(err interface{}, nodes []ast.Node) *Error {
12var origError error
13message := "An unknown error occurred."
14if err, ok := err.(error); ok {
15message = err.Error()
16origError = err
17}
18if err, ok := err.(string); ok {
19message = err
20origError = errors.New(err)
21}
22stack := message
23return NewError(
24message,
25nodes,
26stack,
27nil,
28[]int{},
29origError,
30)
31}
32
33func FieldASTsToNodeASTs(fieldASTs []*ast.Field) []ast.Node {
34nodes := []ast.Node{}
35for _, fieldAST := range fieldASTs {
36nodes = append(nodes, fieldAST)
37}
38return nodes
39}
40