173 releases

new 0.0.207 Mar 25, 2024
0.0.203 Feb 26, 2024
0.0.190 Dec 18, 2023
0.0.187 Nov 27, 2023
0.0.26 Nov 30, 2020

#317 in Parser implementations

Download history 4078/week @ 2023-12-06 4792/week @ 2023-12-13 4332/week @ 2023-12-20 2099/week @ 2023-12-27 5045/week @ 2024-01-03 5551/week @ 2024-01-10 5725/week @ 2024-01-17 5125/week @ 2024-01-24 3908/week @ 2024-01-31 3644/week @ 2024-02-07 4397/week @ 2024-02-14 5305/week @ 2024-02-21 6571/week @ 2024-02-28 4363/week @ 2024-03-06 5183/week @ 2024-03-13 4280/week @ 2024-03-20

21,838 downloads per month
Used in 54 crates (5 directly)

MIT/Apache

255KB
7.5K SLoC

The Rust parser.

NOTE: The crate is undergoing refactors, don't believe everything the docs say :-)

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 crate 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 the syntax crate.

Dependencies

~1MB
~13K SLoC