fix(biome_graphql_parser): allow keyword to be used as identifier #2814
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
It's hard to believe, but GraphQL allows using keyword as identifier. This means that the parser must be able to handle a GraphQL query like this:
This means many assumptions made when handling parsing errors are no longer applicable. In the above example, suppose the query misses the closing brace:
This could either mean the entire expression is a giant query, or there is a query and an enum definition, depending on where the users want to put the closing braces.
This PR adds support for using keywords as identifier, and removes several assumptions made when handling errors.
Test Plan
All tests should pass.