Crates.io | yak-sitter |
lib.rs | yak-sitter |
version | |
source | src |
created_at | 2023-07-18 22:42:41.362565 |
updated_at | 2024-11-30 13:35:56.549516 |
description | opinionated tree-sitter facade which lets you store data visible to nodes and provides other improvements |
homepage | |
repository | https://github.com/Jakobeha/type-sitter/ |
max_upload_size | |
id | 919812 |
Cargo.toml error: | TOML parse error at line 17, column 1 | 17 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include` |
size | 0 |
This library provides an API almost identical to tree-sitter
, but with the following changes:
Custom
data of arbitrary type, which each node can access via shared reference. Typically the custom data will contain a map of nodes to additional metadata, or a diagnostic logger (assuming all diagnostics have at least one source location). Then, you won't need to pass around this extra information to functions which deal with nodes, you can retrieve it from the nodes directly.TreeCursor
is split into LocalTreeCursor
and GlobalTreeCursor
. When GlobalTreeCursor
is reset to a node it can still go to parents and siblings, albeit with a performance penalty. LocalTreeCursor
is the original TreeCursor
since its behavior a bit confusing.The library is an attempt to integrate tree-sitter with an existing project (https://github.com/Jakobeha/nominalscript), hence the name. Regardless, if you want any changes or have any suggestions, feel free to submit a github issue or PR