aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/github.com/graphql-go/graphql/located.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/graphql-go/graphql/located.go')
-rw-r--r--vendor/github.com/graphql-go/graphql/located.go37
1 files changed, 37 insertions, 0 deletions
diff --git a/vendor/github.com/graphql-go/graphql/located.go b/vendor/github.com/graphql-go/graphql/located.go
new file mode 100644
index 00000000..6ed8ec83
--- /dev/null
+++ b/vendor/github.com/graphql-go/graphql/located.go
@@ -0,0 +1,37 @@
+package graphql
+
+import (
+ "errors"
+ "github.com/graphql-go/graphql/gqlerrors"
+ "github.com/graphql-go/graphql/language/ast"
+)
+
+func NewLocatedError(err interface{}, nodes []ast.Node) *gqlerrors.Error {
+ var origError error
+ message := "An unknown error occurred."
+ if err, ok := err.(error); ok {
+ message = err.Error()
+ origError = err
+ }
+ if err, ok := err.(string); ok {
+ message = err
+ origError = errors.New(err)
+ }
+ stack := message
+ return gqlerrors.NewError(
+ message,
+ nodes,
+ stack,
+ nil,
+ []int{},
+ origError,
+ )
+}
+
+func FieldASTsToNodeASTs(fieldASTs []*ast.Field) []ast.Node {
+ nodes := []ast.Node{}
+ for _, fieldAST := range fieldASTs {
+ nodes = append(nodes, fieldAST)
+ }
+ return nodes
+}