stash/vendor/github.com/vektah/gqlparser/v2
kermieisinthehouse 265d5f4c70
Apple Silicon Support, Bump Go to 1.17, refactor docker/build/x86_64/Dockerfile (#1646)
* Bump Go to 1.17, refactor build/x86_64 Dockerfile to make better use of multi-stage
* Bump to 1.17 from 1.16
* Bump packr version, provide needed legacy env var
* Add apple silicon support, fix macos build chain
* Update unused travis ci
2021-09-08 15:30:15 +10:00
..
ast Stash box client interface (#751) 2020-09-17 19:57:18 +10:00
formatter Stash box client interface (#751) 2020-09-17 19:57:18 +10:00
gqlerror Stash box client interface (#751) 2020-09-17 19:57:18 +10:00
lexer Stash box client interface (#751) 2020-09-17 19:57:18 +10:00
parser Stash box client interface (#751) 2020-09-17 19:57:18 +10:00
validator Stash box client interface (#751) 2020-09-17 19:57:18 +10:00
.gitignore Stash box client interface (#751) 2020-09-17 19:57:18 +10:00
gqlparser.go Stash box client interface (#751) 2020-09-17 19:57:18 +10:00
LICENSE Stash box client interface (#751) 2020-09-17 19:57:18 +10:00
readme.md Stash box client interface (#751) 2020-09-17 19:57:18 +10:00

gqlparser CircleCI Go Report Card Coverage Status

This is a parser for graphql, written to mirror the graphql-js reference implementation as closely while remaining idiomatic and easy to use.

spec target: June 2018 (Schema definition language, block strings as descriptions, error paths & extension)

This parser is used by gqlgen, and it should be reasonablly stable.

Guiding principles:

  • maintainability: It should be easy to stay up to date with the spec
  • well tested: It shouldnt need a graphql server to validate itself. Changes to this repo should be self contained.
  • server agnostic: It should be usable by any of the graphql server implementations, and any graphql client tooling.
  • idiomatic & stable api: It should follow go best practices, especially around forwards compatibility.
  • fast: Where it doesnt impact on the above it should be fast. Avoid unnecessary allocs in hot paths.
  • close to reference: Where it doesnt impact on the above, it should stay close to the graphql/graphql-js reference implementation.