Fix some issues with directive definitions
I found some issues with directive definitions: - I couldn't use `on FIELD_DEFINITION`, I believe because `FIELD` was parsed first in `executableDirectiveLocation`. I've combined both `executableDirectiveLocation` and `typetypeSystemDirectiveLocation` into one function which can reorder them to ensure every directive location gets a fair chance at parsing. Not actually to do with directives, some literals weren't being parsed correctly. - The GraphQL spec defines list to be `[]` or `[Value]`, but empty literal lists weren't being parsed correctly because of using `some` instead of `many`. - The GraphQL spec defines objects to be `{}` or `{Name: Value}`, but empty literal objects had the same issue.
This commit is contained in:
@ -11,6 +11,10 @@ and this project adheres to
|
||||
- `Language.GraphQL.Execute.OrderedMap` is a map data structure, that preserves
|
||||
insertion order.
|
||||
|
||||
### Fixed
|
||||
- Parser now accepts empty lists and objects.
|
||||
- Parser now accepts all directive locations.
|
||||
|
||||
## [0.11.1.0] - 2021-02-07
|
||||
### Added
|
||||
- `Validate.Rules`:
|
||||
@ -109,7 +113,7 @@ and this project adheres to
|
||||
`locations`.
|
||||
- Parsing comments in the front of definitions.
|
||||
- Some missing labels were added to the parsers, some labels were fixed to
|
||||
refer to the AST nodes being parsed.
|
||||
refer to the AST nodes being parsed.
|
||||
|
||||
### Added
|
||||
- `AST` reexports `AST.Parser`.
|
||||
|
Reference in New Issue
Block a user