Niranjan Hasabnis
c0e2b43d34
Fixing Rust formatting issue
2021-05-21 15:43:10 +00:00
Niranjan Hasabnis
c31acb8fec
Changing API name; Adding unit test and Rust bindings
2021-05-21 01:50:10 +00:00
Andrew Hlynskyi
3c0152a331
chore(fmt): Apply 'cargo fmt' to the whole code base
2021-05-19 23:21:43 +03:00
Andrew Hlynskyi
b57266cbb8
test(binding_rust): Use some redundancy to trigger more clear comliler error on the master
2021-04-22 21:00:58 +03:00
Andrew Hlynskyi
2d9a2a1855
test(binding_rust): test query captures/matches lifetime is separate from nodes lifetime
2021-04-22 21:00:58 +03:00
Max Brunsfeld
72143b17ff
Fix handling of queries with field names at the roots of patterns
...
Fixes #1018
2021-03-27 09:36:13 -07:00
Max Brunsfeld
89e1157a29
Fix handling of repetitions in query analysis
...
Fixes #1007
2021-03-19 11:00:31 -07:00
Andrew Hlynskyi
192f51324e
Added more test for byte and point ranges
2021-03-17 19:11:20 +02:00
Max Brunsfeld
bc0ef5f373
Add negated field patterns to queries
2021-03-12 14:38:02 -08:00
Max Brunsfeld
a40045a419
When editing, properly invalidate trees that depend on get_column
2021-03-11 14:46:13 -08:00
Max Brunsfeld
9dc88061d5
query: Fix last child operator with multiple children
...
Fixes #806
2021-03-09 13:40:15 -08:00
Max Brunsfeld
6ba11d7778
Fix query analysis with top-level non-terminal extras
...
Fixes https://github.com/tree-sitter/tree-sitter/issues/968#issuecomment-792314281
2021-03-08 09:33:35 -08:00
Max Brunsfeld
5a2534ac4a
Fix crash on unterminated alternation in query
...
Fixes #968
2021-03-07 08:48:03 -08:00
Max Brunsfeld
f18c36ca62
Fix handling of extra nodes in query analysis
...
Fixes #967
2021-03-06 14:35:41 -08:00
Max Brunsfeld
db6e1d9bdc
Add ts_query_cursor_did_exceed_match_limit API
2021-03-05 15:02:49 -08:00
Max Brunsfeld
047d33eecf
Remove bad logic for detecting later siblings with the same field
...
Co-authored-by: Douglas Creager <dcreager@dcreager.net>
2021-03-05 14:50:16 -08:00
hvithrafn
05f79f0f90
Update dependencies; fix breakage
2021-02-26 10:55:20 -07:00
Max Brunsfeld
c25fa9910e
Fix query match failure when indefinite steps have no captures
...
Fixes #937
2021-02-25 21:41:49 -08:00
Max Brunsfeld
e49a56ea4c
Merge pull request #939 from tree-sitter/partial-order-precedence
...
Allow precedences to be specified using strings and a partial ordering relation
2021-02-25 13:16:01 -08:00
Max Brunsfeld
344797c110
Implement named precedence comparison
2021-02-24 16:02:56 -08:00
Douglas Creager
a29c8d9264
Move allocation tracking into lib crate
...
We have several test cases defined in the `cli` crate that depend on the
`lib` crate's `allocation-tracking` feature. The implementation of the
actual allocation tracker used to live in the `cli` crate, close to the
test cases that use it. The `allocation-tracking` feature in the `lib`
crate was just used to tell the tree-sitter implementation to expect
that the allocation tracker exists, and to use it.
That pattern meant that we had a circular dependency: `cli` depends on
`lib`, but `lib` required some code that was implemented in `cli`.
That, in turn, caused linker errors — but only when compiling in certain
configurations! [1]
This patch moves all of the allocation tracking implementation into the
`lib` crate, gated on the existing `allocation-tracking` feature, which
fixes the circular dependency.
Note that this patch does **not** fix the fact that feature unification
causes the `lib` crate to be built with the `allocation-tracking`
feature enabled, even though it's not a default. Fixing that depends on
the forthcoming version 2 feature resolver [2], or using the `dev_dep`
workaround [3] in the meantime.
[1] https://github.com/tree-sitter/tree-sitter/issues/919
[2] https://doc.rust-lang.org/nightly/cargo/reference/features.html#feature-resolver-version-2
[3] https://github.com/tree-sitter/tree-sitter/issues/919#issuecomment-777107086
2021-02-23 09:16:37 -05:00
Max Brunsfeld
73e252e39b
Add unit test for child_by_field_name w/ hidden nodes
2021-02-10 16:14:24 -08:00
Max Brunsfeld
6dbe6a3a90
Merge branch 'master' into actions-ci
2021-02-05 10:19:05 -08:00
Max Brunsfeld
391fc8c340
Update unit tests to expect ruby grammar change
2020-12-20 19:34:45 -08:00
Max Brunsfeld
026231e93d
Merge branch 'master' into HEAD
2020-12-03 09:44:33 -08:00
Max Brunsfeld
b661050a61
Simplify setup for enabling/disabling allocation recording in the C lib
2020-12-02 15:35:13 -08:00
Patrick Thomson
0b4661e401
Really fix the tests.
2020-11-23 11:41:16 -05:00
Patrick Thomson
c1a8985712
Merge remote-tracking branch 'origin/master' into query-testy
2020-11-23 11:10:53 -05:00
Max Brunsfeld
b267f90e64
Update unit tests to reflect python and ruby grammar changes
2020-11-16 10:51:08 -08:00
Patrick Thomson
c9c886d971
Merge remote-tracking branch 'origin/master' into query-testy
2020-11-10 16:16:53 -05:00
Max Brunsfeld
99cd283e39
query: Fix detection of repeated field names
...
Fixes #790
2020-11-02 14:07:39 -08:00
Max Brunsfeld
c2c63baf5b
query: Fix escape sequence parsing in anonymous node patterns
...
Fixes #776
Fixes #760
2020-10-28 13:55:13 -07:00
Max Brunsfeld
a2d760e426
Ensure nodes are aliased consistently within syntax error nodes
...
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
2020-10-27 15:46:09 -07:00
Patrick Thomson
1aee60a7c0
propitiate the tests
2020-10-26 14:35:18 -04:00
Max Brunsfeld
0a46033391
Remove duplication of LossyUtf8 helper
2020-10-14 11:35:50 -07:00
Max Brunsfeld
857a9ed07b
query: Handle captured wildcard nodes at the root of patterns
2020-10-08 12:34:08 -07:00
Max Brunsfeld
d1c95193c1
query: Fix invalid use of slice::from_raw_parts
2020-10-05 12:08:53 -07:00
Max Brunsfeld
ba239ce4ab
Make query error line numbers consistently display 1-indexed
2020-09-24 15:03:51 -07:00
Max Brunsfeld
518916f221
Return correct path and line in query errors from the CLI
2020-09-24 13:47:27 -07:00
Max Brunsfeld
297e2bcb28
static query analysis: Fix handling of fields in hidden nodes
2020-09-23 16:55:48 -07:00
Max Brunsfeld
cb343cad5e
Avoid reusing the root node during incremental parsing
...
Fixes #712
2020-09-23 12:59:27 -07:00
Max Brunsfeld
21c3bbc4b4
Account for supertypes during query analysis
2020-09-23 10:55:31 -07:00
Max Brunsfeld
8835dfda99
Fix test for supertypes in queries
2020-09-21 13:11:54 -07:00
Max Brunsfeld
b5a9adb555
Allow queries to match on supertypes
...
Co-authored-by: Ayman Nadeem <aymannadeem@github.com>
2020-09-21 12:34:48 -07:00
Max Brunsfeld
36a8821f3e
Fix behavior of the last child operator in tree queries
2020-09-02 12:10:04 -07:00
Max Brunsfeld
4aba684d66
Control recursion depth explicitly during query analysis
2020-08-24 16:55:56 -07:00
Max Brunsfeld
2eb04094f8
Handle aliased parent nodes in query analysis
2020-08-21 14:12:04 -07:00
Max Brunsfeld
456b1f6771
Fix handling of alternations and optional nodes in query analysis
2020-08-20 16:28:54 -07:00
Max Brunsfeld
9daec9cb22
Tweak impossible pattern error messages
2020-08-20 13:35:11 -07:00
Max Brunsfeld
4301110c12
query: Indicate specific step that's impossible
2020-08-20 13:06:38 -07:00