comparison src/intervals.c @ 25747:062f4c69ff56

(rotate_right, rotate_left): Add braces to avoid ambiguous else warning. (split_interval_left): Remove unused variables. (previous_interval, adjust_intervals_for_deletion, set_point_both, set_point_both, set_intervals_multibyte_1): Ditto. (icount, idepth, zero_length): Move into #if 0 section below original position where these are used.
author Gerd Moellmann <gerd@gnu.org>
date Thu, 16 Sep 1999 20:19:57 +0000
parents 0a7261c1d487
children 365b6c7f12d3
comparison
equal deleted inserted replaced
25746:8690532ba294 25747:062f4c69ff56
186 return 0; 186 return 0;
187 187
188 return 1; 188 return 1;
189 } 189 }
190 190
191 static int icount;
192 static int idepth;
193 static int zero_length;
194 191
195 /* Traverse an interval tree TREE, performing FUNCTION on each node. 192 /* Traverse an interval tree TREE, performing FUNCTION on each node.
196 Pass FUNCTION two args: an interval, and ARG. */ 193 Pass FUNCTION two args: an interval, and ARG. */
197 194
198 void 195 void
212 position += LENGTH (tree); 209 position += LENGTH (tree);
213 traverse_intervals (tree->right, position, depth + 1, function, arg); 210 traverse_intervals (tree->right, position, depth + 1, function, arg);
214 } 211 }
215 212
216 #if 0 213 #if 0
214
215 static int icount;
216 static int idepth;
217 static int zero_length;
218
217 /* These functions are temporary, for debugging purposes only. */ 219 /* These functions are temporary, for debugging purposes only. */
218 220
219 INTERVAL search_interval, found_interval; 221 INTERVAL search_interval, found_interval;
220 222
221 void 223 void
293 INTERVAL B = interval->left; 295 INTERVAL B = interval->left;
294 int old_total = interval->total_length; 296 int old_total = interval->total_length;
295 297
296 /* Deal with any Parent of A; make it point to B. */ 298 /* Deal with any Parent of A; make it point to B. */
297 if (! ROOT_INTERVAL_P (interval)) 299 if (! ROOT_INTERVAL_P (interval))
298 if (AM_LEFT_CHILD (interval)) 300 {
299 interval->parent->left = B; 301 if (AM_LEFT_CHILD (interval))
300 else 302 interval->parent->left = B;
301 interval->parent->right = B; 303 else
304 interval->parent->right = B;
305 }
302 B->parent = interval->parent; 306 B->parent = interval->parent;
303 307
304 /* Make B the parent of A */ 308 /* Make B the parent of A */
305 i = B->right; 309 i = B->right;
306 B->right = interval; 310 B->right = interval;
337 INTERVAL B = interval->right; 341 INTERVAL B = interval->right;
338 int old_total = interval->total_length; 342 int old_total = interval->total_length;
339 343
340 /* Deal with any parent of A; make it point to B. */ 344 /* Deal with any parent of A; make it point to B. */
341 if (! ROOT_INTERVAL_P (interval)) 345 if (! ROOT_INTERVAL_P (interval))
342 if (AM_LEFT_CHILD (interval)) 346 {
343 interval->parent->left = B; 347 if (AM_LEFT_CHILD (interval))
344 else 348 interval->parent->left = B;
345 interval->parent->right = B; 349 else
350 interval->parent->right = B;
351 }
346 B->parent = interval->parent; 352 B->parent = interval->parent;
347 353
348 /* Make B the parent of A */ 354 /* Make B the parent of A */
349 i = B->left; 355 i = B->left;
350 B->left = interval; 356 B->left = interval;
512 split_interval_left (interval, offset) 518 split_interval_left (interval, offset)
513 INTERVAL interval; 519 INTERVAL interval;
514 int offset; 520 int offset;
515 { 521 {
516 INTERVAL new = make_interval (); 522 INTERVAL new = make_interval ();
517 int position = interval->position;
518 int new_length = offset; 523 int new_length = offset;
519 524
520 new->position = interval->position; 525 new->position = interval->position;
521 interval->position = interval->position + offset; 526 interval->position = interval->position + offset;
522 new->parent = interval; 527 new->parent = interval;
669 INTERVAL 674 INTERVAL
670 previous_interval (interval) 675 previous_interval (interval)
671 register INTERVAL interval; 676 register INTERVAL interval;
672 { 677 {
673 register INTERVAL i; 678 register INTERVAL i;
674 register int position_of_previous;
675 679
676 if (NULL_INTERVAL_P (interval)) 680 if (NULL_INTERVAL_P (interval))
677 return NULL_INTERVAL; 681 return NULL_INTERVAL;
678 682
679 if (! NULL_LEFT_CHILD (interval)) 683 if (! NULL_LEFT_CHILD (interval))
1283 struct buffer *buffer; 1287 struct buffer *buffer;
1284 int start, length; 1288 int start, length;
1285 { 1289 {
1286 register int left_to_delete = length; 1290 register int left_to_delete = length;
1287 register INTERVAL tree = BUF_INTERVALS (buffer); 1291 register INTERVAL tree = BUF_INTERVALS (buffer);
1288 register int deleted;
1289 Lisp_Object parent; 1292 Lisp_Object parent;
1290 int offset; 1293 int offset;
1291 1294
1292 XSETFASTINT (parent, (EMACS_INT) tree->parent); 1295 XSETFASTINT (parent, (EMACS_INT) tree->parent);
1293 offset = (BUFFERP (parent) ? BUF_BEG (XBUFFER (parent)) : 0); 1296 offset = (BUFFERP (parent) ? BUF_BEG (XBUFFER (parent)) : 0);
1775 void 1778 void
1776 set_point_both (buffer, charpos, bytepos) 1779 set_point_both (buffer, charpos, bytepos)
1777 register struct buffer *buffer; 1780 register struct buffer *buffer;
1778 register int charpos, bytepos; 1781 register int charpos, bytepos;
1779 { 1782 {
1780 register INTERVAL to, from, toprev, fromprev, target; 1783 register INTERVAL to, from, toprev, fromprev;
1781 int buffer_point; 1784 int buffer_point;
1782 register Lisp_Object obj;
1783 int old_position = BUF_PT (buffer); 1785 int old_position = BUF_PT (buffer);
1784 int backwards = (charpos < old_position ? 1 : 0); 1786 int backwards = (charpos < old_position ? 1 : 0);
1785 int have_overlays; 1787 int have_overlays;
1786 int original_position; 1788 int original_position;
1787 1789
2176 set_intervals_multibyte_1 (i, multi_flag, start, start_byte, end, end_byte) 2178 set_intervals_multibyte_1 (i, multi_flag, start, start_byte, end, end_byte)
2177 INTERVAL i; 2179 INTERVAL i;
2178 int multi_flag; 2180 int multi_flag;
2179 int start, start_byte, end, end_byte; 2181 int start, start_byte, end, end_byte;
2180 { 2182 {
2181 INTERVAL left, right;
2182
2183 /* Fix the length of this interval. */ 2183 /* Fix the length of this interval. */
2184 if (multi_flag) 2184 if (multi_flag)
2185 i->total_length = end - start; 2185 i->total_length = end - start;
2186 else 2186 else
2187 i->total_length = end_byte - start_byte; 2187 i->total_length = end_byte - start_byte;