This crate contains all of the code required to convert a stream of tokens into a set of AST nodes.
The parser takes in a stream of tokens and translates recognisable patterns into AST nodes. It implements a recursive-descent style parser with precedence and associativity rules for parsing expressions.
One of the goals of the parser is to be error-tolerant so that it can be used inside of the language server project. The approach to error tolerance is heavily inspired by the excellent microsoft/tolerant-php-parser
package.
Error tolerance support is entirely subjective and will improve over time. The majority of places it is supported is solely based on language server development and the most common places where tolerance is required for autocomplete.