Closed goto-bus-stop closed 3 months ago
Many errors emitted by the lexer do not set the error.index property, so they point to the start of the document by default.
error.index
Input a GraphQL document with unexpected characters:
type Query { // Some invalid characters user: User }
Syntax errors point to the correct position
rror: syntax error: Unexpected character "/" ╭─[q.graphql:1:1] │ 1 │ type Query { │ ┬ │ ╰── Unexpected character "/" ───╯ Error: syntax error: Unexpected character "/" ╭─[q.graphql:1:1] │ 1 │ type Query { │ ┬ │ ╰── Unexpected character "/" ───╯
I’d be in favor of eventually removing the Error::new constructor that sets the index to zero, making the index always provided by the caller.
Error::new
Description
Many errors emitted by the lexer do not set the
error.index
property, so they point to the start of the document by default.Steps to reproduce
Input a GraphQL document with unexpected characters:
Expected result
Syntax errors point to the correct position
Actual result