aboutsummaryrefslogtreecommitdiffstats
path: root/src/search.c
diff options
context:
space:
mode:
authorTom Tromey2011-02-14 08:39:19 -0700
committerTom Tromey2011-02-14 08:39:19 -0700
commit5d8ea1203d1e659bc77d953784a85a6e7da0ce95 (patch)
tree1da71b86f9592b2f3390f0cd4d30ce41e74fbb55 /src/search.c
parent42f6055717e74ea9541c5cf6fd0fc6501bd907fd (diff)
downloademacs-5d8ea1203d1e659bc77d953784a85a6e7da0ce95.tar.gz
emacs-5d8ea1203d1e659bc77d953784a85a6e7da0ce95.zip
Hide implementation of `struct buffer'
* composite.c (fill_gstring_header) (composition_compute_stop_pos, composition_adjust_point) (Ffind_composition_internal): Use B_. * intervals.c (set_point_both, get_local_map): Use B_. * callproc.c (Fcall_process, Fcall_process_region): Use B_. * process.c (get_process, list_processes_1, Fstart_process) (Fmake_serial_process, Fmake_network_process) (read_process_output, send_process, exec_sentinel) (status_notify, setup_process_coding_systems): Use B_. * bytecode.c (Fbyte_code): Use B_. * syntax.c (update_syntax_table, dec_bytepos, Fsyntax_table) (Fset_syntax_table, Fmodify_syntax_entry, skip_chars) (skip_syntaxes, scan_lists): Use B_. * lread.c (readchar, unreadchar, openp, readevalloop) (Feval_buffer, Feval_region): Use B_. * print.c (printchar, strout, print_string, PRINTDECLARE) (PRINTPREPARE, PRINTFINISH, temp_output_buffer_setup) (print_object): Use B_. * font.c (font_at): Use B_. * fns.c (Fbase64_encode_region, Fbase64_decode_region, Fmd5): Use B_. * callint.c (check_mark, Fcall_interactively): Use B_. * editfns.c (region_limit, Fmark_marker, save_excursion_save) (save_excursion_restore, Fprevious_char, Fchar_before) (general_insert_function, Finsert_char, Finsert_byte) (make_buffer_string_both, Finsert_buffer_substring) (Fcompare_buffer_substrings, subst_char_in_region_unwind) (subst_char_in_region_unwind_1, Fsubst_char_in_region) (Ftranslate_region_internal, save_restriction_restore) (Fchar_equal): Use B_. * data.c (swap_in_symval_forwarding, set_internal) (Fmake_local_variable, Fkill_local_variable, Flocal_variable_p): Use B_. * undo.c (record_point, record_insert, record_delete) (record_marker_adjustment, record_first_change) (record_property_change, Fundo_boundary, truncate_undo_list) (Fprimitive_undo): Use B_. * search.c (compile_pattern_1, compile_pattern, looking_at_1) (string_match_1, fast_looking_at, newline_cache_on_off) (search_command, search_buffer, simple_search, boyer_moore) (Freplace_match): Use B_. * indent.c (buffer_display_table, recompute_width_table) (width_run_cache_on_off, current_column, scan_for_column) (Findent_to, position_indentation, compute_motion, vmotion): Use B_. * casefiddle.c (casify_object, casify_region): Use B_. * casetab.c (Fcurrent_case_table, set_case_table): Use B_. * cmds.c (Fself_insert_command, internal_self_insert): Use B_. * fileio.c (Fexpand_file_name, Ffile_directory_p) (Ffile_regular_p, Ffile_selinux_context) (Fset_file_selinux_context, Ffile_modes, Fset_file_modes) (Fset_file_times, Ffile_newer_than_file_p, decide_coding_unwind) (Finsert_file_contents, choose_write_coding_system) (Fwrite_region, build_annotations, Fverify_visited_file_modtime) (Fset_visited_file_modtime, auto_save_error, auto_save_1) (Fdo_auto_save, Fset_buffer_auto_saved): Use B_. * minibuf.c (read_minibuf, get_minibuffer, Fread_buffer): Use B_. * marker.c (Fmarker_buffer, Fset_marker, set_marker_restricted) (set_marker_both, set_marker_restricted_both, unchain_marker): Use B_. * insdel.c (check_markers, insert_char, insert_1_both) (insert_from_string_1, insert_from_gap, insert_from_buffer_1) (adjust_after_replace, replace_range, del_range_2) (modify_region, prepare_to_modify_buffer) (Fcombine_after_change_execute): Use B_. * filelock.c (unlock_all_files, Flock_buffer, Funlock_buffer) (unlock_buffer): Use B_. * keymap.c (Flocal_key_binding, Fuse_local_map) (Fcurrent_local_map, push_key_description) (Fdescribe_buffer_bindings): Use B_. * keyboard.c (command_loop_1, read_char_minibuf_menu_prompt) (read_key_sequence): Use B_. * fringe.c (get_logical_cursor_bitmap) (get_logical_fringe_bitmap, update_window_fringes): Use B_. * xfns.c (x_create_tip_frame, Fx_show_tip): Use B_. * xfaces.c (compute_char_face): Use B_. * character.c (chars_in_text, Fget_byte): Use B_. * category.c (check_category_table, Fcategory_table) (Fset_category_table, char_category_set): Use B_. * coding.c (decode_coding, encode_coding) (make_conversion_work_buffer, decode_coding_gap) (decode_coding_object, encode_coding_object) (Fdetect_coding_region, Ffind_coding_systems_region_internal) (Funencodable_char_position, Fcheck_coding_systems_region): Use B_. * charset.c (Ffind_charset_region): Use B_. * window.c (window_display_table, unshow_buffer, window_loop) (window_min_size_2, set_window_buffer, Fset_window_buffer) (select_window, Fforce_window_update, temp_output_buffer_show) (Fset_window_configuration, save_window_save): Use B_. * xdisp.c (pos_visible_p, init_iterator, reseat_1) (message_dolog, update_echo_area, ensure_echo_area_buffers) (with_echo_area_buffer, setup_echo_area_for_printing) (set_message_1, update_menu_bar, update_tool_bar) (text_outside_line_unchanged_p, redisplay_internal) (try_scrolling, try_cursor_movement, redisplay_window) (try_window_reusing_current_matrix, row_containing_pos) (try_window_id, get_overlay_arrow_glyph_row, display_line) (Fcurrent_bidi_paragraph_direction, display_mode_lines) (decode_mode_spec_coding, decode_mode_spec, display_count_lines) (get_window_cursor_type, note_mouse_highlight): Use B_. * frame.c (make_frame_visible_1): Use B_. * dispnew.c (Fframe_or_buffer_changed_p): Use B_. * dispextern.h (WINDOW_WANTS_HEADER_LINE_P) (WINDOW_WANTS_MODELINE_P): Use B_. * syntax.h (Vstandard_syntax_table): Update. (CURRENT_SYNTAX_TABLE, SETUP_BUFFER_SYNTAX_TABLE): Use B_. * intervals.h (TEXT_PROP_MEANS_INVISIBLE): Update. (TEXT_PROP_MEANS_INVISIBLE): Use B_. * character.h (FETCH_CHAR_ADVANCE): Update. (INC_BOTH, ASCII_CHAR_WIDTH, DEC_BOTH): Use B_. * category.h (Vstandard_category_table): Update. * lisp.h (DEFVAR_BUFFER_DEFAULTS): Update for change to field names. (DOWNCASE_TABLE, UPCASE_TABLE): Use B_. * buffer.c (swapfield_): New macro. (Fbuffer_swap_text): Use swapfield_ where appropriate. (Fbuffer_live_p, Fget_file_buffer, get_truename_buffer) (Fget_buffer_create, clone_per_buffer_values) (Fmake_indirect_buffer, reset_buffer) (reset_buffer_local_variables, Fbuffer_name, Fbuffer_file_name) (Fbuffer_local_value, buffer_lisp_local_variables) (Fset_buffer_modified_p, Frestore_buffer_modified_p) (Frename_buffer, Fother_buffer, Fbuffer_enable_undo) (Fkill_buffer, Fset_buffer_major_mode, set_buffer_internal_1) (set_buffer_temp, Fset_buffer, set_buffer_if_live) (Fbarf_if_buffer_read_only, Fbury_buffer, Ferase_buffer) (Fbuffer_swap_text, Fset_buffer_multibyte) (swap_out_buffer_local_variables, record_overlay_string) (overlay_strings, init_buffer_once, init_buffer, syms_of_buffer): Use B_. * buffer.h (struct buffer): Rename all Lisp_Object fields. (BUFFER_INTERNAL_FIELD, B_): New macro. (FETCH_CHAR, FETCH_CHAR_AS_MULTIBYTE): Use B_.
Diffstat (limited to 'src/search.c')
-rw-r--r--src/search.c48
1 files changed, 24 insertions, 24 deletions
diff --git a/src/search.c b/src/search.c
index 09dae0ed0f5..a80e20a8a8a 100644
--- a/src/search.c
+++ b/src/search.c
@@ -157,7 +157,7 @@ compile_pattern_1 (struct regexp_cache *cp, Lisp_Object pattern, Lisp_Object tra
157 157
158 /* If the compiled pattern hard codes some of the contents of the 158 /* If the compiled pattern hard codes some of the contents of the
159 syntax-table, it can only be reused with *this* syntax table. */ 159 syntax-table, it can only be reused with *this* syntax table. */
160 cp->syntax_table = cp->buf.used_syntax ? current_buffer->syntax_table : Qt; 160 cp->syntax_table = cp->buf.used_syntax ? B_ (current_buffer, syntax_table) : Qt;
161 161
162 re_set_whitespace_regexp (NULL); 162 re_set_whitespace_regexp (NULL);
163 163
@@ -236,7 +236,7 @@ compile_pattern (Lisp_Object pattern, struct re_registers *regp, Lisp_Object tra
236 && EQ (cp->buf.translate, (! NILP (translate) ? translate : make_number (0))) 236 && EQ (cp->buf.translate, (! NILP (translate) ? translate : make_number (0)))
237 && cp->posix == posix 237 && cp->posix == posix
238 && (EQ (cp->syntax_table, Qt) 238 && (EQ (cp->syntax_table, Qt)
239 || EQ (cp->syntax_table, current_buffer->syntax_table)) 239 || EQ (cp->syntax_table, B_ (current_buffer, syntax_table)))
240 && !NILP (Fequal (cp->whitespace_regexp, Vsearch_spaces_regexp)) 240 && !NILP (Fequal (cp->whitespace_regexp, Vsearch_spaces_regexp))
241 && cp->buf.charset_unibyte == charset_unibyte) 241 && cp->buf.charset_unibyte == charset_unibyte)
242 break; 242 break;
@@ -285,17 +285,17 @@ looking_at_1 (Lisp_Object string, int posix)
285 save_search_regs (); 285 save_search_regs ();
286 286
287 /* This is so set_image_of_range_1 in regex.c can find the EQV table. */ 287 /* This is so set_image_of_range_1 in regex.c can find the EQV table. */
288 XCHAR_TABLE (current_buffer->case_canon_table)->extras[2] 288 XCHAR_TABLE (B_ (current_buffer, case_canon_table))->extras[2]
289 = current_buffer->case_eqv_table; 289 = B_ (current_buffer, case_eqv_table);
290 290
291 CHECK_STRING (string); 291 CHECK_STRING (string);
292 bufp = compile_pattern (string, 292 bufp = compile_pattern (string,
293 (NILP (Vinhibit_changing_match_data) 293 (NILP (Vinhibit_changing_match_data)
294 ? &search_regs : NULL), 294 ? &search_regs : NULL),
295 (!NILP (current_buffer->case_fold_search) 295 (!NILP (B_ (current_buffer, case_fold_search))
296 ? current_buffer->case_canon_table : Qnil), 296 ? B_ (current_buffer, case_canon_table) : Qnil),
297 posix, 297 posix,
298 !NILP (current_buffer->enable_multibyte_characters)); 298 !NILP (B_ (current_buffer, enable_multibyte_characters)));
299 299
300 immediate_quit = 1; 300 immediate_quit = 1;
301 QUIT; /* Do a pending quit right away, to avoid paradoxical behavior */ 301 QUIT; /* Do a pending quit right away, to avoid paradoxical behavior */
@@ -400,14 +400,14 @@ string_match_1 (Lisp_Object regexp, Lisp_Object string, Lisp_Object start, int p
400 } 400 }
401 401
402 /* This is so set_image_of_range_1 in regex.c can find the EQV table. */ 402 /* This is so set_image_of_range_1 in regex.c can find the EQV table. */
403 XCHAR_TABLE (current_buffer->case_canon_table)->extras[2] 403 XCHAR_TABLE (B_ (current_buffer, case_canon_table))->extras[2]
404 = current_buffer->case_eqv_table; 404 = B_ (current_buffer, case_eqv_table);
405 405
406 bufp = compile_pattern (regexp, 406 bufp = compile_pattern (regexp,
407 (NILP (Vinhibit_changing_match_data) 407 (NILP (Vinhibit_changing_match_data)
408 ? &search_regs : NULL), 408 ? &search_regs : NULL),
409 (!NILP (current_buffer->case_fold_search) 409 (!NILP (B_ (current_buffer, case_fold_search))
410 ? current_buffer->case_canon_table : Qnil), 410 ? B_ (current_buffer, case_canon_table) : Qnil),
411 posix, 411 posix,
412 STRING_MULTIBYTE (string)); 412 STRING_MULTIBYTE (string));
413 immediate_quit = 1; 413 immediate_quit = 1;
@@ -586,7 +586,7 @@ fast_looking_at (Lisp_Object regexp, EMACS_INT pos, EMACS_INT pos_byte, EMACS_IN
586 s2 = 0; 586 s2 = 0;
587 } 587 }
588 re_match_object = Qnil; 588 re_match_object = Qnil;
589 multibyte = ! NILP (current_buffer->enable_multibyte_characters); 589 multibyte = ! NILP (B_ (current_buffer, enable_multibyte_characters));
590 } 590 }
591 591
592 buf = compile_pattern (regexp, 0, Qnil, 0, multibyte); 592 buf = compile_pattern (regexp, 0, Qnil, 0, multibyte);
@@ -608,7 +608,7 @@ fast_looking_at (Lisp_Object regexp, EMACS_INT pos, EMACS_INT pos_byte, EMACS_IN
608static void 608static void
609newline_cache_on_off (struct buffer *buf) 609newline_cache_on_off (struct buffer *buf)
610{ 610{
611 if (NILP (buf->cache_long_line_scans)) 611 if (NILP (B_ (buf, cache_long_line_scans)))
612 { 612 {
613 /* It should be off. */ 613 /* It should be off. */
614 if (buf->newline_cache) 614 if (buf->newline_cache)
@@ -996,15 +996,15 @@ search_command (Lisp_Object string, Lisp_Object bound, Lisp_Object noerror,
996 } 996 }
997 997
998 /* This is so set_image_of_range_1 in regex.c can find the EQV table. */ 998 /* This is so set_image_of_range_1 in regex.c can find the EQV table. */
999 XCHAR_TABLE (current_buffer->case_canon_table)->extras[2] 999 XCHAR_TABLE (B_ (current_buffer, case_canon_table))->extras[2]
1000 = current_buffer->case_eqv_table; 1000 = B_ (current_buffer, case_eqv_table);
1001 1001
1002 np = search_buffer (string, PT, PT_BYTE, lim, lim_byte, n, RE, 1002 np = search_buffer (string, PT, PT_BYTE, lim, lim_byte, n, RE,
1003 (!NILP (current_buffer->case_fold_search) 1003 (!NILP (B_ (current_buffer, case_fold_search))
1004 ? current_buffer->case_canon_table 1004 ? B_ (current_buffer, case_canon_table)
1005 : Qnil), 1005 : Qnil),
1006 (!NILP (current_buffer->case_fold_search) 1006 (!NILP (B_ (current_buffer, case_fold_search))
1007 ? current_buffer->case_eqv_table 1007 ? B_ (current_buffer, case_eqv_table)
1008 : Qnil), 1008 : Qnil),
1009 posix); 1009 posix);
1010 if (np <= 0) 1010 if (np <= 0)
@@ -1133,7 +1133,7 @@ search_buffer (Lisp_Object string, EMACS_INT pos, EMACS_INT pos_byte,
1133 (NILP (Vinhibit_changing_match_data) 1133 (NILP (Vinhibit_changing_match_data)
1134 ? &search_regs : &search_regs_1), 1134 ? &search_regs : &search_regs_1),
1135 trt, posix, 1135 trt, posix,
1136 !NILP (current_buffer->enable_multibyte_characters)); 1136 !NILP (B_ (current_buffer, enable_multibyte_characters)));
1137 1137
1138 immediate_quit = 1; /* Quit immediately if user types ^G, 1138 immediate_quit = 1; /* Quit immediately if user types ^G,
1139 because letting this function finish 1139 because letting this function finish
@@ -1254,7 +1254,7 @@ search_buffer (Lisp_Object string, EMACS_INT pos, EMACS_INT pos_byte,
1254 EMACS_INT raw_pattern_size; 1254 EMACS_INT raw_pattern_size;
1255 EMACS_INT raw_pattern_size_byte; 1255 EMACS_INT raw_pattern_size_byte;
1256 unsigned char *patbuf; 1256 unsigned char *patbuf;
1257 int multibyte = !NILP (current_buffer->enable_multibyte_characters); 1257 int multibyte = !NILP (B_ (current_buffer, enable_multibyte_characters));
1258 unsigned char *base_pat; 1258 unsigned char *base_pat;
1259 /* Set to positive if we find a non-ASCII char that need 1259 /* Set to positive if we find a non-ASCII char that need
1260 translation. Otherwise set to zero later. */ 1260 translation. Otherwise set to zero later. */
@@ -1451,7 +1451,7 @@ simple_search (EMACS_INT n, unsigned char *pat,
1451 EMACS_INT pos, EMACS_INT pos_byte, 1451 EMACS_INT pos, EMACS_INT pos_byte,
1452 EMACS_INT lim, EMACS_INT lim_byte) 1452 EMACS_INT lim, EMACS_INT lim_byte)
1453{ 1453{
1454 int multibyte = ! NILP (current_buffer->enable_multibyte_characters); 1454 int multibyte = ! NILP (B_ (current_buffer, enable_multibyte_characters));
1455 int forward = n > 0; 1455 int forward = n > 0;
1456 /* Number of buffer bytes matched. Note that this may be different 1456 /* Number of buffer bytes matched. Note that this may be different
1457 from len_byte in a multibyte buffer. */ 1457 from len_byte in a multibyte buffer. */
@@ -1671,7 +1671,7 @@ boyer_moore (EMACS_INT n, unsigned char *base_pat,
1671 register EMACS_INT i; 1671 register EMACS_INT i;
1672 register int j; 1672 register int j;
1673 unsigned char *pat, *pat_end; 1673 unsigned char *pat, *pat_end;
1674 int multibyte = ! NILP (current_buffer->enable_multibyte_characters); 1674 int multibyte = ! NILP (B_ (current_buffer, enable_multibyte_characters));
1675 1675
1676 unsigned char simple_translate[0400]; 1676 unsigned char simple_translate[0400];
1677 /* These are set to the preceding bytes of a byte to be translated 1677 /* These are set to the preceding bytes of a byte to be translated
@@ -2639,7 +2639,7 @@ since only regular expressions have distinguished subexpressions. */)
2639 EMACS_INT length = SBYTES (newtext); 2639 EMACS_INT length = SBYTES (newtext);
2640 unsigned char *substed; 2640 unsigned char *substed;
2641 EMACS_INT substed_alloc_size, substed_len; 2641 EMACS_INT substed_alloc_size, substed_len;
2642 int buf_multibyte = !NILP (current_buffer->enable_multibyte_characters); 2642 int buf_multibyte = !NILP (B_ (current_buffer, enable_multibyte_characters));
2643 int str_multibyte = STRING_MULTIBYTE (newtext); 2643 int str_multibyte = STRING_MULTIBYTE (newtext);
2644 Lisp_Object rev_tbl; 2644 Lisp_Object rev_tbl;
2645 int really_changed = 0; 2645 int really_changed = 0;