1#ifndef TREE_SITTER_GET_CHANGED_RANGES_H_
 2#define TREE_SITTER_GET_CHANGED_RANGES_H_
 3
 4#ifdef __cplusplus
 5extern "C" {
 6#endif
 7
 8#include "./tree_cursor.h"
 9#include "./subtree.h"
10
11typedef Array(TSRange) TSRangeArray;
12
13void ts_range_array_get_changed_ranges(
14  const TSRange *old_ranges, unsigned old_range_count,
15  const TSRange *new_ranges, unsigned new_range_count,
16  TSRangeArray *differences
17);
18
19bool ts_range_array_intersects(
20  const TSRangeArray *self, unsigned start_index,
21  uint32_t start_byte, uint32_t end_byte
22);
23
24unsigned ts_subtree_get_changed_ranges(
25  const Subtree *old_tree, const Subtree *new_tree,
26  TreeCursor *cursor1, TreeCursor *cursor2,
27  const TSLanguage *language,
28  const TSRangeArray *included_range_differences,
29  TSRange **ranges
30);
31
32#ifdef __cplusplus
33}
34#endif
35
36#endif  // TREE_SITTER_GET_CHANGED_RANGES_H_