Documentation

The Rust parser.

The parser doesn't know about concrete representation of tokens and syntax trees. Abstract TokenSource and TreeSink traits are used instead. As a consequence, this crates does not contain a lexer.

The Parser struct from the parser module is a cursor into the sequence of tokens. Parsing routines use Parser to inspect current state and advance the parsing.

The actual parsing happens in the grammar module.

Tests for this crate live in syntax crate.