Max Brunsfeld
|
34de822738
|
Re-enable subtree object pool after accidentally disabling it
|
2018-06-19 16:33:33 -07:00 |
|
Max Brunsfeld
|
d7c1f84d7b
|
Remove resume method, make parse resume by default
Also, add a `reset` method to explicitly discard an outstanding parse.
Co-Authored-By: Ashi Krishnan <queerviolet@github.com>
|
2018-06-19 15:33:29 -07:00 |
|
Max Brunsfeld
|
a24f7764d8
|
Get rid of string_input source file
There's not much in there now.
|
2018-06-19 11:27:55 -07:00 |
|
Max Brunsfeld
|
b0b3b2e5f3
|
Consolidate TSInput interface down to one function
|
2018-06-19 09:34:40 -07:00 |
|
Max Brunsfeld
|
703541e838
|
Explicitly initialize variable in ts_tree_cursor_goto_next_sibling
|
2018-06-18 10:48:32 -07:00 |
|
Max Brunsfeld
|
b29c5dbf15
|
Rephrase ts_subtree_array_copy to avoid conspicuous null case
This avoids a false positive error from the clang static analyzer, which
doesn't understand the invariants of the Array type.
|
2018-06-15 17:07:35 -07:00 |
|
Max Brunsfeld
|
75cf95bddc
|
Fix double free when an external token is copied
|
2018-06-15 16:18:08 -07:00 |
|
Max Brunsfeld
|
52a5e4125e
|
Revert "Fix another const mismatch warning"
This reverts commit 776230782b.
|
2018-06-15 13:22:37 -07:00 |
|
Max Brunsfeld
|
4b5dab2d18
|
Convert keywords back to word token at runtime if needed
|
2018-06-15 13:15:02 -07:00 |
|
Max Brunsfeld
|
776230782b
|
Fix another const mismatch warning
|
2018-06-14 12:38:52 -07:00 |
|
Max Brunsfeld
|
30b0d1c833
|
Fix const/non-const mismatch in array_splice function
Co-Authored-By: Ashi Krishnan <queerviolet@github.com>
|
2018-06-14 12:03:59 -07:00 |
|
Max Brunsfeld
|
6e72c2943d
|
Avoid missing field initializer warnings w/o default field syntax
The default field syntax aint working on windows
|
2018-06-14 11:12:04 -07:00 |
|
Max Brunsfeld
|
f3014cb767
|
Cache parent nodes to speed up ts_node_parent in common cases
|
2018-05-29 16:00:32 -07:00 |
|
Max Brunsfeld
|
69d8c6f5e6
|
Check that language is present in both parse() and resume()
|
2018-05-23 15:41:16 -07:00 |
|
Max Brunsfeld
|
e16f0338d6
|
Add APIs for pausing a parse after N operations and resuming later
|
2018-05-23 15:02:39 -07:00 |
|
Max Brunsfeld
|
babb8261a3
|
Extract an iterator from TreeCursor methods
|
2018-05-22 14:43:21 -07:00 |
|
Max Brunsfeld
|
c0763c69c4
|
Fix handling of aliases in TreeCursor
|
2018-05-22 14:43:21 -07:00 |
|
Max Brunsfeld
|
80630ce504
|
Store nodes' public-facing positions, not pre-padding positions
|
2018-05-22 08:50:04 -07:00 |
|
Max Brunsfeld
|
1fece241aa
|
Add ts_parser_set_enabled API
|
2018-05-21 17:28:12 -07:00 |
|
Max Brunsfeld
|
39c3de3fc8
|
Don't reuse nodes within ambiguities
|
2018-05-21 16:04:10 -07:00 |
|
Max Brunsfeld
|
78f28b14ce
|
Remove unused field
|
2018-05-18 14:27:52 -07:00 |
|
Max Brunsfeld
|
3c01382b95
|
Avoid warnings about repeated typedefs
|
2018-05-17 17:59:50 -07:00 |
|
Max Brunsfeld
|
5ec3769cb4
|
Make ts_tree_cursor_current_node take the cursor as const
|
2018-05-17 14:24:32 -07:00 |
|
Max Brunsfeld
|
074c051094
|
Change the TSInputEdit struct to work with old/new start and end positions
|
2018-05-17 11:14:51 -07:00 |
|
Max Brunsfeld
|
95be6e3bee
|
Make it clear which field of TSNode can be used as a unique id
|
2018-05-16 16:20:33 -07:00 |
|
Max Brunsfeld
|
e3670be42f
|
Avoid one heap allocation when instantiating a TSTreeCursor
|
2018-05-16 16:05:08 -07:00 |
|
Max Brunsfeld
|
6fc8d9871c
|
Hide the details of TSNode's fields in the public API
|
2018-05-16 15:44:04 -07:00 |
|
Max Brunsfeld
|
ebddb1a0b5
|
Add ts_tree_cursor_goto_first_child_for_byte method
Atom needs this for efficiently seeking to the leaf node at a given position,
visiting all of its ancestors along the way.
|
2018-05-16 13:51:21 -07:00 |
|
Max Brunsfeld
|
043a2fc0d9
|
Assert absence of memory leaks in randomized multi-threaded tree test
|
2018-05-11 16:53:47 -07:00 |
|
Max Brunsfeld
|
fe53506175
|
Declare subtrees as const wherever possible
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
|
2018-05-11 15:06:13 -07:00 |
|
Max Brunsfeld
|
20c183b7cd
|
Rename ts_subtree_make_* -> ts_subtree_new_*
|
2018-05-11 13:02:12 -07:00 |
|
Max Brunsfeld
|
bf1bb1604f
|
Rename TSExternalTokenState -> ExternalScannerState
|
2018-05-11 12:57:41 -07:00 |
|
Max Brunsfeld
|
199a94cc26
|
Allow the parser to print dot graphs to any file
|
2018-05-11 12:48:51 -07:00 |
|
Max Brunsfeld
|
e75ecd1bb1
|
Rework API completely
|
2018-05-11 10:46:13 -07:00 |
|
Max Brunsfeld
|
33f7643040
|
Rename Parser -> TSParser
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
|
2018-05-10 15:16:24 -07:00 |
|
Max Brunsfeld
|
35510a612d
|
Rename Tree -> Subtree
|
2018-05-10 15:11:14 -07:00 |
|
Max Brunsfeld
|
09e663c7d1
|
Make ts_tree_edit return a new tree rather than mutating its argument
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
|
2018-05-10 12:23:05 -07:00 |
|
Max Brunsfeld
|
df79ff5997
|
Refactor ts_tree_edit
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
|
2018-05-10 12:04:18 -07:00 |
|
Max Brunsfeld
|
eff7283325
|
Add assertion to satisfy clang static analyzer
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
|
2018-05-10 09:48:50 -07:00 |
|
Max Brunsfeld
|
59694e60fa
|
Rename ts_tree_assign_parents -> ts_tree_balance
|
2018-05-10 09:13:46 -07:00 |
|
Max Brunsfeld
|
78d158899e
|
Use atomic operations for updating syntax tree reference counts
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
|
2018-05-09 17:36:03 -07:00 |
|
Max Brunsfeld
|
666dfb76d2
|
Remove document parameter from ts_node_type, ts_node_string
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
|
2018-05-09 16:47:47 -07:00 |
|
Max Brunsfeld
|
92255bbfdd
|
Remove document parameter from ts_node_type, ts_node_string
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
|
2018-05-09 15:28:28 -07:00 |
|
Max Brunsfeld
|
8d805feab1
|
Allow ReusableNode to advance off the end of the tree
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
|
2018-05-09 14:15:11 -07:00 |
|
Max Brunsfeld
|
5fa6d39578
|
Fix alias handling in ts_tree_string
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
|
2018-05-09 14:14:56 -07:00 |
|
Max Brunsfeld
|
19e3750f13
|
Make ts_node_next_sibling work more like ts_node_prev_sibling
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
|
2018-05-09 13:46:46 -07:00 |
|
Max Brunsfeld
|
f857d64d54
|
Avoid recursion in ts_node__prev_sibling
|
2018-05-09 13:23:47 -07:00 |
|
Max Brunsfeld
|
973e4a44f0
|
Start work on removing parent pointers
Co-Authored-By: Rick Winfrey <rewinfrey@github.com>
|
2018-05-09 12:22:19 -07:00 |
|
Max Brunsfeld
|
f620843591
|
Remove unused ReusableNode function
|
2018-05-08 11:42:15 -07:00 |
|
Max Brunsfeld
|
f00d2ade46
|
Remove unused function
|
2018-04-09 19:37:53 -07:00 |
|