An incremental parsing system for programming tools
https://tree-sitter.github.io
Older versions of GCC (<4.9) and LLVM (<3.6) do not have __atomic_load_n which is part of the C11 standard. Fix by falling back to __sync_fetch_and_add with a value of 0 when __atomic_load_n is not available. Fixes #423 Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com> |
||
|---|---|---|
| cli | ||
| docs | ||
| highlight | ||
| lib | ||
| script | ||
| test | ||
| .appveyor.yml | ||
| .gitignore | ||
| .gitmodules | ||
| .travis.yml | ||
| Cargo.lock | ||
| Cargo.toml | ||
| LICENSE | ||
| README.md | ||
tree-sitter
Tree-sitter is a parser generator tool and an incremental parsing library. It can build a concrete syntax tree for a source file and efficiently update the syntax tree as the source file is edited. Tree-sitter aims to be:
- General enough to parse any programming language
- Fast enough to parse on every keystroke in a text editor
- Robust enough to provide useful results even in the presence of syntax errors
- Dependency-free so that the runtime library (which is written in pure C) can be embedded in any application