comparison man/internals/internals.texi @ 4953:304aebb79cd3

function renamings to track names of char typedefs -------------------- ChangeLog entries follow: -------------------- man/ChangeLog addition: 2010-01-27 Ben Wing <ben@xemacs.org> * internals/internals.texi (lrecords): * internals/internals.texi (The DFC API): * internals/internals.texi (Conversion to and from External Data): * internals/internals.texi (Mule-izing Code): * internals/internals.texi (Pervasive changes throughout XEmacs sources): * internals/internals.texi (Ben's README): * internals/internals.texi (Future Work -- Localized Text/Messages): * emodules.texi (Defining Variables): Rename: write_c_string -> write_cistring build_intstring -> build_istring build_string -> build_cistring build_ext_string -> build_extstring make_ext_string -> make_extstring buffer_insert_c_string -> buffer_insert_ascstring intern_int -> intern_istring See comment in src/ChangeLog about this. modules/ChangeLog addition: 2010-01-27 Ben Wing <ben@xemacs.org> * postgresql/postgresql.c (print_pgconn): * postgresql/postgresql.c (print_pgresult): * postgresql/postgresql.c (Fpq_conn_defaults): * postgresql/postgresql.c (Fpq_pgconn): * postgresql/postgresql.c (Fpq_res_status): * postgresql/postgresql.c (Fpq_result_error_message): * postgresql/postgresql.c (Fpq_fname): * postgresql/postgresql.c (Fpq_get_value): * postgresql/postgresql.c (Fpq_cmd_status): * postgresql/postgresql.c (Fpq_cmd_tuples): * postgresql/postgresql.c (Fpq_notifies): * postgresql/postgresql.c (Fpq_get_line): * postgresql/postgresql.c (Fpq_get_line_async): * postgresql/postgresql.c (FROB): * postgresql/postgresql.c (init_postgresql_from_environment): * ldap/eldap.c: * ldap/eldap.c (Fldap_open): * ldap/eldap.c (Fldap_search_basic): * canna/canna_api.c: * canna/canna_api.c (make_euc_string): Rename: write_c_string -> write_cistring build_intstring -> build_istring build_string -> build_cistring build_ext_string -> build_extstring make_ext_string -> make_extstring buffer_insert_c_string -> buffer_insert_ascstring intern_int -> intern_istring See comment in src/ChangeLog about this. src/ChangeLog addition: 2010-01-27 Ben Wing <ben@xemacs.org> * .gdbinit.in.in: * README: * abbrev.c (write_abbrev): * abbrev.c (describe_abbrev): * alloc.c (make_extstring): * alloc.c (build_istring): * alloc.c (build_cistring): * alloc.c (build_ascstring): * alloc.c (build_extstring): * alloc.c (build_msg_istring): * alloc.c (build_defer_istring): * buffer.c (Fgenerate_new_buffer_name): * buffer.c (init_buffer_2): * console-tty.c (tty_init_console): * console-x.c (get_display_arg_connection): * console-x.c (x_perhaps_init_unseen_key_defaults): * database.c (dbm_map): * database.c (dbm_get): * database.c (berkdb_get): * database.c (berkdb_map): * device-gtk.c (FROB_PIXMAP): * device-gtk.c (Fgtk_style_info): * device-msw.c (msprinter_default_printer): * device-msw.c (sync_printer_with_devmode): * device-x.c (coding_system_of_xrm_database): * device-x.c (x_init_device): * device-x.c (signal_if_x_error): * device-x.c (Fx_get_resource): * device-x.c (Fx_server_vendor): * device-x.c (Fx_get_font_path): * dialog-x.c (maybe_run_dbox_text_callback): * doc.c (extract_object_file_name): * doc.c (unparesseuxify_doc_string): * doc.c (get_doc_string): * doc.c (get_object_file_name): * doc.c (Fdocumentation): * doc.c (Fsnarf_documentation): * doc.c (Fsubstitute_command_keys): * editfns.c (init_editfns): * editfns.c (Ftemp_directory): * editfns.c (Fuser_login_name): * editfns.c (Fuser_real_login_name): * editfns.c (Fuser_home_directory): * editfns.c (Fformat_time_string): * editfns.c (Fcurrent_time_string): * editfns.c (Fcurrent_time_zone): * emacs.c: * emacs.c (main_1): * emodules.c (Flist_modules): * emodules.c (emodules_load): * emodules.c (emodules_doc_sym): * emodules.c (vars_of_module): * event-Xt.c (x_has_keysym): * event-gtk.c (emacs_gtk_format_magic_event): * event-gtk.c (dragndrop_data_received): * event-gtk.c (gtk_reset_key_mapping): * event-msw.c (mswindows_dde_callback): * event-msw.c (mswindows_wnd_proc): * faces.c (complex_vars_of_faces): * file-coding.c (find_coding_system): * file-coding.c (setup_eol_coding_systems): * file-coding.c (make_coding_system_1): * file-coding.c (snarf_coding_system): * fileio.c: * fileio.c (lisp_strerror): * fileio.c (Ffile_name_directory): * fileio.c (Ffile_name_as_directory): * fileio.c (Fdirectory_file_name): * fileio.c (if): * fileio.c (Ffile_symlink_p): * fileio.c (Fencrypt_string): * fileio.c (Fdecrypt_string): * filelock.c (lock_file): * filelock.c (Ffile_locked_p): * floatfns.c (matherr): * font-mgr.c (build_fcapi_string): * font-mgr.c (make_xlfd_font_regexp): * frame-msw.c (mswindows_window_id): * frame-msw.c (mswindows_frame_property): * frame-x.c: * frame-x.c (color_to_string): * frame-x.c (maybe_set_frame_title_format): * frame-x.c (x_cde_transfer_callback): * frame-x.c (Fx_window_id): * glade.c (connector): * glade.c (Fglade_xml_textdomain): * glade.c (syms_of_glade): * glyphs-eimage.c (jpeg_instantiate): * glyphs-eimage.c (png_instantiate): * glyphs-eimage.c (tiff_instantiate): * glyphs-gtk.c (font_instantiate): * glyphs-gtk.c (BUILD_GLYPH_INST): * glyphs-x.c (x_locate_pixmap_file): * glyphs-x.c (font_instantiate): * glyphs-x.c (x_widget_property): * glyphs-x.c (BUILD_GLYPH_INST): * glyphs.c (print_image_instance): * glyphs.c (bitmap_to_lisp_data): * glyphs.c (pixmap_to_lisp_data): * gpmevent.c (turn_off_gpm): * gpmevent.c (Fgpm_enabled_p): * gpmevent.c (Fgpm_enable): * gtk-glue.c (__make_string_mapper): * gtk-glue.c (xemacs_gtklist_to_list): * gtk-xemacs.c (FROB_FACE): * gtk-xemacs.c (xemacs_gtk_convert_color): * hpplay.c (player_error_internal): * hpplay.c (myHandler): * insdel.c (buffer_insert_ascstring_1): * insdel.h: * insdel.h (buffer_insert_ascstring): * intl.c (Fcurrent_locale): * intl.c (Fset_current_locale): * keymap.c (make_key_description): * keymap.c (Ftext_char_description): * keymap.c (describe_command): * keymap.c (describe_map): * lisp.h: * lread.c: * lread.c (locate_file_in_directory_mapper): * lread.c (locate_file_construct_suffixed_files_mapper): * mule-charset.c (Fmake_charset): * nt.c (Fmswindows_short_file_name): * nt.c (Fmswindows_long_file_name): * objects-gtk.c (__get_gtk_font_truename): * objects-gtk.c (__gtk_font_list_internal): * objects-msw.c (font_enum_callback_2): * objects-msw.c (create_hfont_from_font_spec): * objects-msw.c (mswindows_font_list): * objects-msw.c (mswindows_font_spec_matches_charset_stage_2): * objects-tty.c (tty_initialize_font_instance): * objects-x.c (x_font_truename): * objects-x.c (x_font_instance_truename): * objects-x.c (x_font_instance_properties): * objects-x.c (x_font_list): * print.c (write_cistring): * print.c (print_vector_internal): * print.c (print_cons): * process-nt.c (nt_canonicalize_host_name): * process-unix.c (unix_create_process): * process-unix.c (unix_canonicalize_host_name): * process.c (status_message): * process.c (status_notify): * process.c (init_xemacs_process): * process.c (syms_of_process): * redisplay-tty.c (term_get_fkeys_1): * redisplay-tty.c (CONDITIONAL_REASSIGN): * search.c (compile_pattern_1): * select-common.h (selection_data_to_lisp_data): * select-gtk.c (atom_to_symbol): * select-gtk.c (PROCESSING_GTK_CODE): * select-msw.c (mswindows_get_foreign_selection): * select-x.c (x_atom_to_symbol): * select-x.c (Fx_get_cutbuffer_internal): * symbols.c (intern_istring): * symbols.c (intern): * symbols.c (intern_converting_underscores_to_dashes): * symbols.c (Fintern): * sysdep.c (init_system_name): * sysdll.c (dll_error): * sysdll.c (dll_open): * syswindows.h: * syswindows.h (build_tstr_string): * tests.c (DFC_CHECK_LENGTH): * tests.c (DFC_CHECK_CONTENT): * tests.c (DFC_RESULT_PASS): * tests.c (Ftest_data_format_conversion): * text.c: * text.c (new_dfc_convert_now_damn_it): * text.h: * text.h (build_wext_string): * tooltalk.c (tt_build_c_string): * tooltalk.c (Ftooltalk_default_procid): * tooltalk.c (Ftooltalk_default_session): * tooltalk.c (init_tooltalk): * ui-byhand.c (Fgtk_clist_get_text): * ui-byhand.c (Fgtk_clist_get_pixtext): * ui-byhand.c (Fgtk_label_get): * ui-byhand.c (Fgtk_notebook_query_tab_label_packing): * ui-gtk.c (emacs_gtk_object_printer): * ui-gtk.c (emacs_gtk_boxed_printer): * ui-gtk.c (gtk_type_to_lisp): * ui-gtk.c (symbol_to_enum): * ui-gtk.c (enum_to_symbol): * unexaix.c (report_error): * unexaix.c (ERROR0): * unexec.c (report_error): * unexec.c (ERROR0): * unicode.c (unicode_to_ichar): * win32.c (tstr_to_local_file_format): * win32.c (Fmswindows_cygwin_to_win32_path): * win32.c (struct read_link_hash): * xemacs.def.in.in: Rename: write_c_string -> write_cistring build_intstring -> build_istring build_string -> build_cistring build_ext_string -> build_extstring make_ext_string -> make_extstring buffer_insert_c_string -> buffer_insert_ascstring intern_int -> intern_istring These functions have been renamed so that the naming harmonizes with the typedefs for strings: `cistring' along with CIbyte *, `istring' along with Ibyte *, `extstring' along with Extbyte *, `ascstring' along with Ascbyte *. Also make buffer_insert_ascstring take Ascbyte * and assert that its argument is ASCII.
author Ben Wing <ben@xemacs.org>
date Wed, 27 Jan 2010 00:35:36 -0600
parents 5d120deb60ca
children e813cf16c015
comparison
equal deleted inserted replaced
4952:19a72041c5ed 4953:304aebb79cd3
8641 it as an indication that more verbose output should be given. 8641 it as an indication that more verbose output should be given.
8642 8642
8643 Sub-objects are printed using @code{print_internal()}, which takes 8643 Sub-objects are printed using @code{print_internal()}, which takes
8644 exactly the same arguments as are passed to the print method. 8644 exactly the same arguments as are passed to the print method.
8645 8645
8646 Literal C strings should be printed using @code{write_c_string()}, 8646 Literal C strings should be printed using @code{write_cistring()},
8647 or @code{write_string_1()} for non-null-terminated strings. 8647 or @code{write_string_1()} for non-null-terminated strings.
8648 8648
8649 Functions that do not have a readable representation should check the 8649 Functions that do not have a readable representation should check the
8650 @code{print_readably} flag and signal an error if it is set. 8650 @code{print_readably} flag and signal an error if it is set.
8651 8651
11800 source and sink, and usually data is output as @code{alloca()} rather than 11800 source and sink, and usually data is output as @code{alloca()} rather than
11801 @code{malloc()}. For this reason, convenience macros are defined for many types 11801 @code{malloc()}. For this reason, convenience macros are defined for many types
11802 of conversions involving raw data and/or Lisp strings, especially when 11802 of conversions involving raw data and/or Lisp strings, especially when
11803 the output is an @code{alloca()}ed string. (When the destination is a 11803 the output is an @code{alloca()}ed string. (When the destination is a
11804 Lisp_String, there are other functions that should be used instead -- 11804 Lisp_String, there are other functions that should be used instead --
11805 @code{build_ext_string()} and @code{make_ext_string()}, for example.) The convenience 11805 @code{build_extstring()} and @code{make_extstring()}, for example.) The convenience
11806 macros are of two types -- the older kind that store the result into a 11806 macros are of two types -- the older kind that store the result into a
11807 specified variable, and the newer kind that return the result. The newer 11807 specified variable, and the newer kind that return the result. The newer
11808 kind of macros don't exist when the output is sized data, because that 11808 kind of macros don't exist when the output is sized data, because that
11809 would have two return values. NOTE: All convenience macros are 11809 would have two return values. NOTE: All convenience macros are
11810 ultimately defined in terms of TO_EXTERNAL_FORMAT and TO_INTERNAL_FORMAT. 11810 ultimately defined in terms of TO_EXTERNAL_FORMAT and TO_INTERNAL_FORMAT.
12862 sink, and usually data is output as @code{alloca()}, or sometimes 12862 sink, and usually data is output as @code{alloca()}, or sometimes
12863 @code{xmalloc()}. For this reason, convenience macros are defined for 12863 @code{xmalloc()}. For this reason, convenience macros are defined for
12864 many types of conversions involving raw data and/or Lisp strings, 12864 many types of conversions involving raw data and/or Lisp strings,
12865 especially when the output is an @code{alloca()}ed string. (When the 12865 especially when the output is an @code{alloca()}ed string. (When the
12866 destination is a Lisp string, there are other functions that should be 12866 destination is a Lisp string, there are other functions that should be
12867 used instead -- @code{build_ext_string()} and @code{make_ext_string()}, 12867 used instead -- @code{build_extstring()} and @code{make_extstring()},
12868 for example.) The convenience macros are of two types -- the older kind 12868 for example.) The convenience macros are of two types -- the older kind
12869 that store the result into a specified variable, and the newer kind that 12869 that store the result into a specified variable, and the newer kind that
12870 return the result. The newer kind of macros don't exist when the output 12870 return the result. The newer kind of macros don't exist when the output
12871 is sized data, because that would have two return values. NOTE: All 12871 is sized data, because that would have two return values. NOTE: All
12872 convenience macros are ultimately defined in terms of 12872 convenience macros are ultimately defined in terms of
13023 13023
13024 @itemize @bullet 13024 @itemize @bullet
13025 @item 13025 @item
13026 Check all uses of @code{XSTRING_DATA}. 13026 Check all uses of @code{XSTRING_DATA}.
13027 @item 13027 @item
13028 Check all uses of @code{build_string} and @code{make_string}. 13028 Check all uses of @code{build_cistring} and @code{make_string}.
13029 @item 13029 @item
13030 Check all uses of @code{tolower} and @code{toupper}. 13030 Check all uses of @code{tolower} and @code{toupper}.
13031 @item 13031 @item
13032 Check object print methods. 13032 Check object print methods.
13033 @item 13033 @item
13034 Check for use of functions such as @code{write_c_string}, 13034 Check for use of functions such as @code{write_cistring},
13035 @code{write_fmt_string}, @code{stderr_out}, @code{stdout_out}. 13035 @code{write_fmt_string}, @code{stderr_out}, @code{stdout_out}.
13036 @item 13036 @item
13037 Check all occurrences of @code{char} and correct to one of the other 13037 Check all occurrences of @code{char} and correct to one of the other
13038 typedefs described above. 13038 typedefs described above.
13039 @item 13039 @item
14347 @code{strcpy()}, @code{sprintf()}, etc. except for the argument 14347 @code{strcpy()}, @code{sprintf()}, etc. except for the argument
14348 declaration differences. We use these whenever we have @code{Intbyte *} 14348 declaration differences. We use these whenever we have @code{Intbyte *}
14349 strings, which is quite often. 14349 strings, which is quite often.
14350 14350
14351 @item 14351 @item
14352 new fun @code{build_intstring()} takes an @code{Intbyte *}. also new 14352 new fun @code{build_istring()} takes an @code{Intbyte *}. also new
14353 funs @code{build_msg_intstring} (like @code{build_intstring()}) and 14353 funs @code{build_msg_intstring} (like @code{build_istring()}) and
14354 @code{build_msg_string} (like @code{build_string()}) to do a 14354 @code{build_msg_string} (like @code{build_cistring()}) to do a
14355 @code{GETTEXT()} before building the string. (elimination of old 14355 @code{GETTEXT()} before building the string. (elimination of old
14356 @code{build_translated_string()}, replaced by 14356 @code{build_translated_string()}, replaced by
14357 @code{build_msg_string()}). 14357 @code{build_msg_string()}).
14358 14358
14359 @item 14359 @item
14360 function @code{intern_int()} for @code{Intbyte *} arguments, like 14360 function @code{intern_istring()} for @code{Intbyte *} arguments, like
14361 @code{intern()}. 14361 @code{intern()}.
14362 14362
14363 @item 14363 @item
14364 numerous places throughout code where @code{char *} replaced with 14364 numerous places throughout code where @code{char *} replaced with
14365 something else, e.g. @code{Char_ASCII *}, @code{Intbyte *}, 14365 something else, e.g. @code{Char_ASCII *}, @code{Intbyte *},
15341 15341
15342 @item 15342 @item
15343 menu item to revert to most recent auto save. 15343 menu item to revert to most recent auto save.
15344 15344
15345 @item 15345 @item
15346 consider renaming @code{build_string} -> @code{build_intstring} and 15346 consider renaming @code{build_cistring} -> @code{build_istring} and
15347 @code{build_c_string} to @code{build_string}. (consistent with 15347 @code{build_c_string} to @code{build_cistring}. (consistent with
15348 @code{build_msg_string} et al; many more @code{build_c_string} than 15348 @code{build_msg_string} et al; many more @code{build_c_string} than
15349 @code{build_string}) 15349 @code{build_cistring})
15350 @end itemize 15350 @end itemize
15351 15351
15352 @heading oct 20, 2001 15352 @heading oct 20, 2001
15353 15353
15354 fixed problem causing crash due to invalid internal-format data, fixed 15354 fixed problem causing crash due to invalid internal-format data, fixed
25687 report_file_error ("string" ... ) 25687 report_file_error ("string" ... )
25688 signal_simple_error ("string" ... ) 25688 signal_simple_error ("string" ... )
25689 signal_simple_error_2 ("string" ... ) 25689 signal_simple_error_2 ("string" ... )
25690 25690
25691 build_translated_string ("string") 25691 build_translated_string ("string")
25692 #### add this and use it instead of @code{build_string()} in some places. 25692 #### add this and use it instead of @code{build_cistring()} in some places.
25693 25693
25694 yes_or_no_p ("string" ... ) 25694 yes_or_no_p ("string" ... )
25695 #### add this instead of funcalling Qyes_or_no_p directly. 25695 #### add this instead of funcalling Qyes_or_no_p directly.
25696 25696
25697 barf_or_query_if_file_exists #### restructure this 25697 barf_or_query_if_file_exists #### restructure this