tree-sitter/lib
Alex Pinkus eaf9b170f1 Don't start with duplicate states in ts_query__analyze_patterns
This change exposes a new `primary_state_ids` field on the `TSLanguage`
struct, and populates it by tracking the first encountered state with a
given `core_id`. (For posterity: the initial change just exposed
`core_id` and deduplicated within `ts_analyze_query`).

With this `primary_state_ids` field in place, the
`ts_query__analyze_patterns` function only needs to populate its
subgraphs with starting states that are _primary_, since non-primary
states behave identically to primary ones. This leads to large savings
across the board, since most states are not primary.
2022-01-16 11:17:47 -08:00
..
binding_rust Don't start with duplicate states in ts_query__analyze_patterns 2022-01-16 11:17:47 -08:00
binding_web Add realloc to wasm exports 2022-01-03 16:07:39 +00:00
include/tree_sitter Don't start with duplicate states in ts_query__analyze_patterns 2022-01-16 11:17:47 -08:00
src Don't start with duplicate states in ts_query__analyze_patterns 2022-01-16 11:17:47 -08:00
.ccls rust: Change QueryCursor::captures to expose the full match 2019-10-03 12:45:58 -07:00
Cargo.toml lib: 0.20.2 2021-12-30 16:35:21 -08:00
README.md lib: remove utf8proc dependency (#436) 2019-10-14 11:18:39 -07:00

Subdirectories

  • src - C source code for the Tree-sitter library
  • include - C headers for the Tree-sitter library
  • binding_rust - Rust bindings to the Tree-sitter library
  • binding_web - JavaScript bindings to the Tree-sitter library, using WebAssembly