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 |
|
Max Brunsfeld
|
d47346abc0
|
Avoid pushing duplicate start states in query analysis
|
2020-08-20 10:07:22 -07:00 |
|
Max Brunsfeld
|
aac75e35b1
|
Optimize iteration over state successors during query analysis
|
2020-08-19 14:56:57 -07:00 |
|
Max Brunsfeld
|
bd42729a41
|
query: Avoid early-returning captures due to predicates
|
2020-08-18 13:01:45 -07:00 |
|
Max Brunsfeld
|
604f9e8148
|
query: Assign is_definite correctly for steps within nested sub-patterns
|
2020-08-18 10:55:03 -07:00 |
|
Max Brunsfeld
|
91fc9f5399
|
Use is_definite flag in ts_query_cursor_next_capture
|
2020-08-17 16:50:59 -07:00 |
|
Max Brunsfeld
|
c3f9b2b377
|
Fix query analysis bugs found in ruby tags query
|
2020-08-17 09:57:06 -07:00 |
|
Max Brunsfeld
|
1ea29053e1
|
Merge branch 'master' into query-pattern-is-definite
|
2020-08-14 09:31:55 -07:00 |
|
Max Brunsfeld
|
af655547e5
|
Fix handling of queries with many patterns with leading repetitions
|
2020-07-31 12:47:58 -07:00 |
|
Max Brunsfeld
|
411f69d13b
|
query: Optimize 'longest-match' filtering
|
2020-07-30 13:34:34 -07:00 |
|
Max Brunsfeld
|
df5510acfc
|
query: Remove limit on number of in-progress states
|
2020-07-30 12:59:34 -07:00 |
|
Max Brunsfeld
|
de2b71d465
|
Fix query bug when max permutations are exceeded
|
2020-07-23 16:05:50 -07:00 |
|
Tuấn-Anh Nguyễn
|
740d864e67
|
Add '.' as a valid start of a predicate, in addition to '#'
See https://github.com/ubolonton/emacs-tree-sitter/issues/38
|
2020-07-19 15:46:39 +07:00 |
|
Max Brunsfeld
|
4535efce69
|
query: Prevent dropping of matches when exceeding range maximum
Fixes #685
|
2020-07-17 09:39:06 -07:00 |
|
Max Brunsfeld
|
cc37da7457
|
Query analysis: fix propagation of uncertainty from later siblings
|
2020-06-26 16:46:12 -07:00 |
|
Max Brunsfeld
|
645aacb1e7
|
Optimize query analysis using binary search
|
2020-06-26 15:40:34 -07:00 |
|
Max Brunsfeld
|
997ef45992
|
Handle parent nodes with simple aliases in query analysis
|
2020-06-26 15:05:10 -07:00 |
|
Max Brunsfeld
|
19baa5fd5e
|
Clean up and document query analysis code
|
2020-06-25 17:56:43 -07:00 |
|
Max Brunsfeld
|
891de051e2
|
Fix population of subgraph nodes when analyzing queries
|
2020-06-25 15:06:27 -07:00 |
|
Max Brunsfeld
|
9fb39b8954
|
Start work on handling alternatives when analyzing queries
|
2020-06-25 15:06:27 -07:00 |
|
Max Brunsfeld
|
e3cf5df039
|
Use actual step indices when walking subgraphs
|
2020-06-25 15:06:27 -07:00 |
|
Max Brunsfeld
|
7f955419a8
|
Start work on recognizing impossible patterns
|
2020-06-25 15:06:27 -07:00 |
|
Max Brunsfeld
|
4c2f36a07b
|
Mark steps as definite on query construction
* Add a ts_query_pattern_is_definite API, just for debugging this
* Store state_count on TSLanguage structs, to allow for scanning parse tables
|
2020-06-25 15:06:27 -07:00 |
|
Max Brunsfeld
|
deeeb67a3b
|
query: Fix handling of alternations under field names (#661)
|
2020-06-24 14:20:56 -07:00 |
|
Thomas Vigouroux
|
81d533d2d1
|
Fix compilation warnings (#635)
* lib: fix compilation warnings
* ci: add CFLAGS
|
2020-06-03 12:19:57 -07:00 |
|
Max Brunsfeld
|
47d607da8d
|
Add alternative syntax in queries (#630)
* Add alternative syntax in queries
* Add tests and tweak error handling for alternatives in queries
|
2020-06-01 13:23:07 -07:00 |
|
Max Brunsfeld
|
462c86903f
|
Improve tree queries' ability to handle large numbers of nested matches (#624)
* query: Acquire capture lists lazily, allow more concurrent states
* Fix some static analysis warnings
|
2020-05-18 13:40:24 -07:00 |
|
Max Brunsfeld
|
fce5c50f81
|
Fix wasm query tests
|
2020-05-11 16:19:42 -07:00 |
|
Max Brunsfeld
|
68f43b5865
|
Make query syntax backward-compatible
|
2020-05-11 13:23:44 -07:00 |
|
Max Brunsfeld
|
85c998d572
|
Change the wildcard syntax in tree queries
1. Use '_' instead of '*'.
2. Add '*' as a postfix operator for zero-or-more repetitions
Signed-off-by: Patrick Thomson <patrickt@github.com>
|
2020-05-11 13:04:04 -07:00 |
|
Max Brunsfeld
|
40262483a9
|
Change query syntax for predicates
Signed-off-by: Patrick Thomson <patrickt@github.com>
|
2020-05-11 12:35:51 -07:00 |
|
Max Brunsfeld
|
9c0535cea6
|
Fix logic for aborting failed matches
|
2020-05-08 14:15:25 -07:00 |
|
Max Brunsfeld
|
b0671aea6a
|
Reorder some code in ts_query_cursor__advance
|
2020-05-08 12:13:21 -07:00 |
|
Max Brunsfeld
|
b47c170c75
|
Query: fix bugs and add tests for top-level and nested repetitions
|
2020-05-08 12:10:01 -07:00 |
|
Max Brunsfeld
|
3ad71625dd
|
Fix query bugs, expand and clean up query tests
|
2020-05-07 14:22:15 -07:00 |
|
Max Brunsfeld
|
1011be76b7
|
Handle trailing optional nodes in queries
|
2020-05-07 12:41:25 -07:00 |
|
Max Brunsfeld
|
3456a21f0d
|
Start work on restructuring query implementation to deal w/ optionals and repeats better
|
2020-05-07 12:41:25 -07:00 |
|
Max Brunsfeld
|
322b311c2c
|
Clear QueryCursor state between exec calls
|
2020-03-26 16:10:39 -07:00 |
|
Max Brunsfeld
|
65f2874b9e
|
query: Optimize handling of patterns with a wildcard at the root
Avoid adding and removing states for these patterns on every node in the tree
by just skipping the wildcard step of the matching process
|
2020-03-16 14:02:31 -07:00 |
|
Max Brunsfeld
|
b5483c67ab
|
query: allow repetition operator to be used on non-terminal nodes
|
2020-03-13 16:12:39 -07:00 |
|
Max Brunsfeld
|
6f636a0357
|
query: Add postfix '+' operator for token repetition
Co-Authored-By: Patrick Thomson <patrickt@users.noreply.github.com>
|
2020-03-12 15:10:58 -07:00 |
|
Max Brunsfeld
|
e3aad995f6
|
query: Fix handling of patterns with wildcards at the root
|
2020-03-11 13:14:16 -07:00 |
|
Max Brunsfeld
|
741eed01b7
|
query: Handle escape sequences and escaped quotes in string literals
|
2020-03-10 15:50:06 -07:00 |
|
Max Brunsfeld
|
570b83e2b2
|
query: Add immediate child operator
|
2020-02-19 11:47:52 -08:00 |
|
Max Brunsfeld
|
950a89a525
|
query: Differentiate between wildcard '*' and named wildcard '(*)'
|
2020-02-19 09:42:29 -08:00 |
|
Max Brunsfeld
|
1d6ea51b63
|
query: Make * operator only match named nodes
|
2020-02-18 21:32:52 -08:00 |
|
Max Brunsfeld
|
de8e3ee188
|
query: Allow multiple captures on a single node
|
2020-02-11 16:02:32 -08:00 |
|
Max Brunsfeld
|
f3747863df
|
Add ts_query_disable_pattern API
|
2020-01-15 17:08:55 -08:00 |
|
Max Brunsfeld
|
3c4a24752b
|
Tweak naming of TSQuery's pattern map variables
|
2020-01-15 17:08:07 -08:00 |
|