aboutsummaryrefslogtreecommitdiffstats
path: root/src/buffer.h
diff options
context:
space:
mode:
authorStefan Monnier2022-10-02 01:30:44 -0400
committerStefan Monnier2022-10-02 01:30:44 -0400
commit1303f55161ae40cc98ccddc37755b58b68840798 (patch)
treef7fb6040be18969a4b40795f1d5da17056c4bc54 /src/buffer.h
parentab2926aad3e15c6cfa0e4b31ae9274c47a58baf2 (diff)
downloademacs-1303f55161ae40cc98ccddc37755b58b68840798.tar.gz
emacs-1303f55161ae40cc98ccddc37755b58b68840798.zip
New ITREE_FOREACH macro
* src/itree.h (interval_tree_iter_start): Adjust type. (interval_tree_nodes): Delete declaration. (ITREE_FOREACH, ITREE_FOREACH_ABORT, ITREE_FOREACH_NARROW): New macros. * src/itree.c (interval_tree_contains, interval_tree_insert_gap): Use the new ITREE_FOREACH macro. (interval_tree_nodes): Delete function. (interval_tree_iter_start): Return the iterator. (interval_generator_next, interval_tree_destroy): Don't accept a NULL arg any more. * src/xdisp.c (load_overlay_strings, strings_with_newlines): * src/textprop.c (get_char_property_and_overlay): * src/buffer.c (copy_overlays, delete_all_overlays) (set_overlays_multibyte, swap_buffer_overlays, overlays_in) (next_overlay_change, previous_overlay_change, overlay_touches_p) (overlay_strings, Foverlay_lists, report_overlay_modification) (evaporate_overlays): Use the new ITREE_FOREACH macro. * src/buffer.h (buffer_overlay_iter_start1) (buffer_overlay_iter_start, buffer_overlay_iter_next) (buffer_overlay_iter_finish, buffer_overlay_iter_narrow): Delete declarations.
Diffstat (limited to 'src/buffer.h')
-rw-r--r--src/buffer.h33
1 files changed, 0 insertions, 33 deletions
diff --git a/src/buffer.h b/src/buffer.h
index ad3b2ad6df5..a4e3934cad2 100644
--- a/src/buffer.h
+++ b/src/buffer.h
@@ -1442,39 +1442,6 @@ remove_buffer_overlay (struct buffer *b, struct Lisp_Overlay *ov)
1442 ov->buffer = NULL; 1442 ov->buffer = NULL;
1443} 1443}
1444 1444
1445INLINE void
1446buffer_overlay_iter_start1 (struct buffer *b, ptrdiff_t begin, ptrdiff_t end,
1447 enum interval_tree_order order, const char* file, int line)
1448{
1449 if (b->overlays)
1450 interval_tree_iter_start (b->overlays, begin, end, order, file, line);
1451}
1452
1453#define buffer_overlay_iter_start(b, begin, end, order) \
1454 buffer_overlay_iter_start1 ((b), (begin), (end), (order), __FILE__, __LINE__)
1455
1456INLINE struct interval_node*
1457buffer_overlay_iter_next (struct buffer *b)
1458{
1459 if (! b->overlays)
1460 return NULL;
1461 return interval_generator_next (b->overlays->iter);
1462}
1463
1464INLINE void
1465buffer_overlay_iter_finish (struct buffer *b)
1466{
1467 if (b->overlays)
1468 interval_tree_iter_finish (b->overlays->iter);
1469}
1470
1471INLINE void
1472buffer_overlay_iter_narrow (struct buffer *b, ptrdiff_t begin, ptrdiff_t end)
1473{
1474 if (b->overlays)
1475 interval_generator_narrow (b->overlays->iter, begin, end);
1476}
1477
1478/* Return the start of OV in its buffer, or -1 if OV is not associated 1445/* Return the start of OV in its buffer, or -1 if OV is not associated
1479 with any buffer. */ 1446 with any buffer. */
1480 1447