246 releases
Uses new Rust 2024
0.0.301 | Aug 25, 2025 |
---|---|
0.0.296 | Jul 28, 2025 |
0.0.272 | Mar 31, 2025 |
0.0.248 | Dec 9, 2024 |
0.0.26 | Nov 30, 2020 |
#19 in Programming languages
37,828 downloads per month
Used in 534 crates
(37 directly)
1MB
32K
SLoC
Syntax Tree library used throughout the rust-analyzer.
Properties:
- easy and fast incremental re-parsing
- graceful handling of errors
- full-fidelity representation (any text can be precisely represented as a syntax tree)
For more information, see the RFC. Current implementation is inspired by the Swift one.
The most interesting modules here are syntax_node
(which defines concrete
syntax tree) and ast
(which defines abstract syntax tree on top of the
CST). The actual parser live in a separate parser
crate, though the
lexer lives in this crate.
See api_walkthrough
test in this file for a quick API tour!
Dependencies
~3–14MB
~90K SLoC