Consolidate logic for deciding on a lookahead node
This commit is contained in:
parent
41074cbf2d
commit
4a0587061e
3 changed files with 82 additions and 57 deletions
|
|
@ -3,7 +3,7 @@
|
|||
typedef struct {
|
||||
Tree *tree;
|
||||
uint32_t byte_index;
|
||||
Tree *preceding_external_token;
|
||||
Tree *last_external_token;
|
||||
} ReusableNode;
|
||||
|
||||
static inline ReusableNode reusable_node_new(Tree *tree) {
|
||||
|
|
@ -14,7 +14,7 @@ static inline ReusableNode reusable_node_new(Tree *tree) {
|
|||
static inline void reusable_node_pop(ReusableNode *self) {
|
||||
self->byte_index += ts_tree_total_bytes(self->tree);
|
||||
if (self->tree->has_external_tokens) {
|
||||
self->preceding_external_token = ts_tree_last_external_token(self->tree);
|
||||
self->last_external_token = ts_tree_last_external_token(self->tree);
|
||||
}
|
||||
|
||||
while (self->tree) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue