this issue tracks the implementation of error recovery and is intended for discussion of potential ideas, strategies etc. below is the todo list for making error recovery as a feature: - [ ] implement sensible infrastructure for error recovery - [ ] something like a .recover method on Parser which could specify and configure a strategy; implementing like that allows for context aware recovery - [ ] implement builtin strategies: - [ ] noop - do nothing and return error as is - [ ] skip a single token strategy - when an error happens, try to go to the next token and parse again, emitting an error beforehand - [ ] go to after delimiter `P`, like a newline (`text::newline`) - [ ] custom - a way to do error recovery yourself (**VERY IMPORTANT!!**) or compose other strategies together - [ ] test the builtin strategies to hell to be sure they work fr and dont explode on an edgecase - [ ] make internal documentation for implementing builtin strategies - [ ] document the user facing api and how to even do error recovery
this issue tracks the implementation of error recovery and is intended for discussion of potential ideas, strategies etc.
below is the todo list for making error recovery as a feature:
P, like a newline (text::newline)