Mercurial > hg > xemacs-beta
view lisp/loaddefs.el @ 5013:ae48681c47fa
changes to VOID_TO_LISP et al.
-------------------- ChangeLog entries follow: --------------------
src/ChangeLog addition:
2010-02-08 Ben Wing <ben@xemacs.org>
* casetab.c (compute_canon_mapper):
* casetab.c (initialize_identity_mapper):
* casetab.c (compute_up_or_eqv_mapper):
* casetab.c (recompute_case_table):
* casetab.c (set_case_table):
* chartab.c (copy_mapper):
* chartab.c (copy_char_table_range):
* chartab.c (get_range_char_table_1):
* console.c (find_nonminibuffer_frame_not_on_console_predicate):
* console.c (find_nonminibuffer_frame_not_on_console):
* console.c (nuke_all_console_slots):
* device.c:
* device.c (find_nonminibuffer_frame_not_on_device_predicate):
* device.c (find_nonminibuffer_frame_not_on_device):
* dialog-msw.c (dialog_proc):
* dialog-msw.c (handle_question_dialog_box):
* dialog-x.c (maybe_run_dbox_text_callback):
* eval.c:
* eval.c (safe_run_hook_trapping_problems_1):
* eval.c (safe_run_hook_trapping_problems):
* event-msw.c:
* event-msw.c (mswindows_wnd_proc):
* event-msw.c (mswindows_find_frame):
* faces.c (update_face_inheritance_mapper):
* frame-msw.c (mswindows_init_frame_1):
* frame-msw.c (mswindows_get_mouse_position):
* frame-msw.c (mswindows_get_frame_parent):
* glade.c (connector):
* glade.c (Fglade_xml_signal_connect):
* glade.c (Fglade_xml_signal_autoconnect):
* glade.c (Fglade_xml_textdomain):
* glyphs-msw.c (mswindows_subwindow_instantiate):
* glyphs-msw.c (mswindows_widget_instantiate):
* glyphs.c (check_instance_cache_mapper):
* glyphs.c (check_window_subwindow_cache):
* glyphs.c (check_image_instance_structure):
* gui-x.c (snarf_widget_value_mapper):
* gui-x.c (popup_selection_callback):
* gui-x.c (button_item_to_widget_value):
* keymap.c (map_keymap_mapper):
* keymap.c (Fmap_keymap):
* menubar-gtk.c (__torn_off_sir):
* menubar-gtk.c (__activate_menu):
* menubar-gtk.c (menu_convert):
* menubar-gtk.c (__generic_button_callback):
* menubar-gtk.c (menu_descriptor_to_widget_1):
* menubar-msw.c:
* menubar-msw.c (EMPTY_ITEM_ID):
* menubar-x.c (menu_item_descriptor_to_widget_value_1):
* menubar-x.c (pre_activate_callback):
* menubar-x.c (command_builder_operate_menu_accelerator):
* menubar-x.c (command_builder_find_menu_accelerator):
* print.c (print_internal):
* process-unix.c (close_process_descs_mapfun):
* process.c (get_process_from_usid):
* process.c (init_process_io_handles):
* profile.c (sigprof_handler):
* profile.c (get_profiling_info_timing_maphash):
* profile.c (Fget_profiling_info):
* profile.c (set_profiling_info_timing_maphash):
* profile.c (mark_profiling_info_maphash):
* scrollbar-msw.c (mswindows_create_scrollbar_instance):
* scrollbar-msw.c (mswindows_free_scrollbar_instance):
* scrollbar-msw.c (mswindows_handle_scrollbar_event):
* specifier.c (recompute_cached_specifier_everywhere_mapfun):
* specifier.c (recompute_cached_specifier_everywhere):
* syntax.c (copy_to_mirrortab):
* syntax.c (copy_if_not_already_present):
* syntax.c (update_just_this_syntax_table):
* text.c (new_dfc_convert_now_damn_it):
* text.h (LISP_STRING_TO_EXTERNAL):
* tooltalk.c:
* tooltalk.c (tooltalk_message_callback):
* tooltalk.c (tooltalk_pattern_callback):
* tooltalk.c (Fcreate_tooltalk_message):
* tooltalk.c (Fcreate_tooltalk_pattern):
* ui-byhand.c (__generic_toolbar_callback):
* ui-byhand.c (generic_toolbar_insert_item):
* ui-byhand.c (__emacs_gtk_ctree_recurse_internal):
* ui-byhand.c (Fgtk_ctree_recurse):
* ui-gtk.c (__internal_callback_destroy):
* ui-gtk.c (__internal_callback_marshal):
* ui-gtk.c (Fgtk_signal_connect):
* ui-gtk.c (gtk_type_to_lisp):
* ui-gtk.c (lisp_to_gtk_type):
* ui-gtk.c (lisp_to_gtk_ret_type):
* lisp-disunion.h:
* lisp-disunion.h (NON_LVALUE):
* lisp-union.h:
* lisp.h (LISP_HASH):
Rename:
LISP_TO_VOID -> STORE_LISP_IN_VOID
VOID_TO_LISP -> GET_LISP_FROM_VOID
These new names are meant to clearly identify that the Lisp object
is the source and void the sink, and that they can't be used the
other way around -- they aren't exact opposites despite the old
names. The names are also important given the new functions
created just below. Also, clarify comments in lisp-union.h and
lisp-disunion.h about the use of the functions.
* lisp.h:
New functions STORE_VOID_IN_LISP and GET_VOID_FROM_LISP. These
are different from the above in that the source is a void *
(previously, you had to use make_opaque_ptr()).
* eval.c (restore_lisp_object):
* eval.c (record_unwind_protect_restoring_lisp_object):
* eval.c (struct restore_int):
* eval.c (restore_int):
* eval.c (record_unwind_protect_restoring_int):
* eval.c (free_pointer):
* eval.c (record_unwind_protect_freeing):
* eval.c (free_dynarr):
* eval.c (record_unwind_protect_freeing_dynarr):
* eval.c (unbind_to_1):
Use STORE_VOID_IN_LISP and GET_VOID_FROM_LISP to eliminate the
use of make_opaque_ptr() and mostly eliminate Lisp consing
entirely in the use of these various record_unwind_protect_*
functions as well as internal_bind_* (e.g. internal_bind_int).
* tests.c:
* tests.c (Ftest_store_void_in_lisp):
* tests.c (syms_of_tests):
* tests.c (vars_of_tests):
Add an C-assert-style test to test STORE_VOID_IN_LISP and
GET_VOID_FROM_LISP to make sure the same value comes back that
was put in.
| author | Ben Wing <ben@xemacs.org> |
|---|---|
| date | Mon, 08 Feb 2010 06:42:16 -0600 |
| parents | 5aa1854ad537 |
| children | 308d34e9f07d |
line wrap: on
line source
;;; loaddefs.el --- define standard autoloads of other files ;; Copyright (C) 1985-7, 1992-5, 1997 Free Software Foundation, Inc. ;; Maintainer: XEmacs Development Team ;; Keywords: internal ;; This file is part of XEmacs. ;; XEmacs is free software; you can redistribute it and/or modify it ;; under the terms of the GNU General Public License as published by ;; the Free Software Foundation; either version 2, or (at your option) ;; any later version. ;; XEmacs is distributed in the hope that it will be useful, but ;; WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ;; General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with XEmacs; see the file COPYING. If not, write to the ;; Free Software Foundation, 59 Temple Place - Suite 330, ;; Boston, MA 02111-1307, USA. ;;; Synched up with: Not synched with FSF. ;;; Commentary: ;; The following commentary is completely out of date. I would like to ;; delete it, but it serves as a useful reminder as to how things used to ;; work. ;; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ;; Special formatting conventions are used in this file! ;; a backslash-newline is used at the beginning of a documentation string ;; when that string should be stored in the file lib-src/DOCnnn, not in core. ;; Such strings read into Lisp as numbers (during the pure-loading phase). ;; But you must obey certain rules to make sure the string is understood ;; and goes into lib-src/DOCnnn properly. Otherwise, the string will not go ;; anywhere! ;; The doc string must appear in the standard place in a call to ;; defun, autoload, defvar or defconst. No Lisp macros are recognized. ;; The open-paren starting the definition must appear in column 0. ;; In defvar and defconst, there is an additional rule: ;; The double-quote that starts the string must be on the same ;; line as the defvar or defconst. ;; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ;; ********************************************************************** ;; You should never need to write autoloads by hand and put them here. ;; It is no longer necessary. Instead use autoload.el to maintain them ;; for you. Just insert ";;;###autoload" before defuns or defmacros you ;; want to be autoloaded, or other forms you want copied into loaddefs.el ;; (defvars, key definitions, etc.). For example, ;; ;;;###autoload ;; (defun foobar () ....) ;; ;;;###autoload (define-key global-map "f" 'foobar) ;; ;;;###autoload ;; (defvar foobar-var nil "\ ;; This is foobar-var's doc-string.") ;; Then do M-x update-file-autoloads on the file to update loaddefs.el. ;; You can also use M-x update-directory-autoloads to update the autoloads ;; in loaddefs.el for all .el files in the lisp/ directory, or M-x ;; update-autoloads-here to update the autoloads for each file that ;; already has an autoload section in this file. ;; ********************************************************************** ;;; Code: ;; These variables are used by autoloadable packages. ;; They are defined here so that they do not get overridden ;; by the loading of those packages. ;; Names in directory that end in one of these ;; are ignored in completion, ;; making it more likely you will get a unique match. (setq completion-ignored-extensions ;; this is way way way bogus. ;; completely wtf? ;; the only things that should be here are those that are ;; (a) universally recognizable, and ;; (b) obvious backup files, or ;; (c) obvious binary files that are generated on a ;; PER-SOURCE-FILE basis, so that they will actually ;; cause annoyance. This excludes executables (.exe, .com) ;; and libraries (.a, .lib, .dll). ; '(".o" ".elc" "~" ".bin" ".lbin" ".fasl" ; ".dvi" ".toc" ;".log" ; ".aux" ".a" ".ln" ; ".lof" ".blg" ".bbl" ".glo" ".idx" ".lot" ".fmt" ; ".diff" ".oi" ".class"))) '(".o" ".obj" ".elc" "~" ".bin" ".lbin" ;; #### these are doubtful, esp. the latter. ".dvi" ;; possibly doubtful, too. ".class")) ;; This needs to be redone better. -slb ;(setq debug-ignored-errors ; '(beginning-of-line ; beginning-of-buffer ; end-of-line ; end-of-buffer ; end-of-file buffer-read-only ; "\\`Previous command was not a yank\\'" ; "\\`Minibuffer is not active for completion\\'" ; "\\`No \\(following\\|preceding\\) item in .*-history\\'" ; "\\`No recursive edit is in progress\\'" ; "\\`Changes to be undone are outside visible portion of buffer\\'" ; "\\`No further undo information\\'" ; "\\`No undo information in this buffer\\'" ; "\\`Buffer modified since last undo/redo, cannot redo" ; "\\`Save not confirmed\\'" ; "\\`Canceled\\'" ; "\\`\\(Revert\\|Steal\\|Recover-file\\) cancelled\\.\\'" ; ;; comint ; "\\`Not at command line\\'" ; "\\`Empty input ring\\'" ; "\\`No history\\'" ; "\\`Not found\\'" ;; To common? ; "\\`Current buffer has no process\\'" ; ;; dabbrev ; "\\`No \\(further \\)?dynamic expansion for .* found\\.?\\'" ; ;; Completion ; "\\`To complete, the point must be after a symbol at least [0-9]* character long\\.\\'" ; "\\`The string \".*\" is too short to be saved as a completion\\.\\'" ; ;; Compile ; "\\`No more errors\\( yet\\|\\)\\'" ; ;; Gnus ; ;"\\`NNTP: Connection closed\\.\\'" ; ;; info ; "\\`Node has no Previous\\'" ; "\\`No \".*\" in index\\'" ; ;; imenu ; ;"\\`No items suitable for an index found in this buffer\\.\\'" ; ;"\\`The mode \".*\" does not take full advantage of imenu\\.el yet\\.\\'" ; ;; ispell ; "\\`No word found to check!\\'" ; ;; man ; "\\`.* not found\\'" ; "\\`No more history\\.\\'" ; ;; etags ; "\\`File .* is not a valid tag table\\'" ; "\\`File .* is not a valid tags file\\'" ; "\\`All files processed\\.\\'" ; "No TAGS file name supplied\\'" ; "\\`Nothing to complete\\'" ; ;; BBDB ; "\\`no previous record\\'" ; "\\`no next record\\'")) (make-variable-buffer-local 'indent-tabs-mode) ;;; Load in generated autoloads (made by autoload.el). ;; (let ((dir load-path) ;; purify-flag) ;; (while dir ;; (condition-case nil ;; (load (concat (car dir) "auto-autoloads")) ;; (t nil)) ;; (pop dir))) ;;; Local Variables: ;;; no-byte-compile: t ;;; no-update-autoloads: t ;;; End: ;;; loaddefs.el ends here
