An incremental parsing system for programming tools https://tree-sitter.github.io
Find a file
2018-09-14 00:48:03 -07:00
docs Add favicon to docs site 2018-09-12 20:29:24 -07:00
externals ⬆️ utf8proc, use new UTF8PROC_STATIC macro 2018-05-18 10:25:55 -07:00
include/tree_sitter Add lexer API for detecting boundaries of included ranges 2018-07-17 13:58:26 -07:00
script Forward arguments to jekyll serve in the serve-docs script 2018-08-13 18:03:57 -07:00
src Use smaller allocations for normal leaf nodes 2018-09-14 00:48:03 -07:00
test Use smaller allocations for normal leaf nodes 2018-09-14 00:48:03 -07:00
.clang-format Auto-format: no single-line functions 2015-07-31 16:32:24 -07:00
.clang_complete Add test for an example found during fuzzing 2017-06-30 21:55:50 -07:00
.gitignore Ignore log file 2018-04-02 09:15:11 -07:00
.gitmodules Use my fork of crypto-algorithms 2017-07-10 14:29:14 -07:00
.travis.yml Only build master and PRs on travis 2017-07-12 21:40:57 -07:00
appveyor.yml Disable git's CRLF-conversion feature 2017-08-09 09:41:51 -07:00
LICENSE Add MIT license 2017-05-03 10:32:12 -07:00
project.gyp Simplify treatment of rules that are always aliased one way 2018-08-30 09:57:22 -07:00
README.md Clarify runtime vs parser generator in README 2018-07-10 14:09:22 -07:00
tests.gyp Handle input chunks that end within multi-byte characters 2018-08-02 15:43:30 -07: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

Documentation