An incremental parsing system for programming tools https://tree-sitter.github.io
Find a file
Max Brunsfeld a7125feb49
Merge pull request #780 from tree-sitter/fewer-node-allocs
Allocate parent node data alongside the array of children
2020-10-25 09:41:05 -07:00
cli Tweak cancellation logic for CLI commands 2020-10-23 12:15:44 -07:00
docs Shorter wording. 2020-10-23 15:11:53 -04:00
highlight Remove duplication of LossyUtf8 helper 2020-10-14 11:35:50 -07:00
lib Suppress false non-null error in subtree_clone 2020-10-25 09:13:12 -07:00
script Add heap-profiling script 2020-10-23 13:20:57 -07:00
tags Remove duplication of LossyUtf8 helper 2020-10-14 11:35:50 -07:00
test Add heap-profiling script 2020-10-23 13:20:57 -07:00
.appveyor.yml Build and test wasm on CI 2019-04-26 14:38:13 -07:00
.gitattributes lib: remove utf8proc dependency (#436) 2019-10-14 11:18:39 -07:00
.gitignore Start work on restructuring query implementation to deal w/ optionals and repeats better 2020-05-07 12:41:25 -07:00
.travis.yml Disable clang static analyzer on CI 2020-10-23 18:44:58 -07:00
Cargo.lock Tweak cancellation logic for CLI commands 2020-10-23 12:15:44 -07:00
Cargo.toml Move code into cli directory 2019-01-04 16:50:52 -08:00
CONTRIBUTING.md Tweak readmes 2020-05-12 16:16:48 -07:00
LICENSE Add boilerplate 2018-05-17 14:46:29 -07:00
Makefile Fix compilation warnings (#635) 2020-06-03 12:19:57 -07:00
README.md Tweak readmes 2020-05-12 16:16:48 -07:00
tree-sitter.pc.in Add a simple Makefile-based build system. 2020-04-21 23:49:19 -04:00

tree-sitter

Build Status Build status

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