Open
Description
If you have a grammar like this...
Expr = Expr . `await`
| Place
Place = Id $*Projections
Projections = `.` FieldId
...then a.await
will be parsed as a parse error by Place
. The reason is that it parses a
as an Id
(correctly) but when it sees the .
it commits to that being followed by a projection. Right now the rule is that we commit if we consumed anything but whitespace. We should let users define the "commit" point.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Metadata
Assignees
Labels
No labels