comparison lisp/cl-extra.el @ 5583:10f179710250

Deprecate #'remassoc, #'remassq, #'remrassoc, #'remrassq. src/ChangeLog addition: 2011-10-09 Aidan Kehoe <kehoea@parhasard.net> * fns.c (remassoc_no_quit): * fns.c (remrassq_no_quit): * fns.c (syms_of_fns): * fontcolor-tty.c (Fregister_tty_color): * fontcolor-tty.c (Funregister_tty_color): * fontcolor-tty.c (Ffind_tty_color): * lisp.h: Remove Fremassq, Fremrassq, Fremassoc, Fremrassoc, they're XEmacs-specific functions and Lisp callers should use (delete* ... :key #'car) anyway. Keep the non-Lisp-visible _no_quit versions, calling FdeleteX from C with the appropriate arguments is ungainly. lisp/ChangeLog addition: 2011-10-09 Aidan Kehoe <kehoea@parhasard.net> * obsolete.el: * obsolete.el (assq-delete-all): * packages.el (package-provide): * packages.el (package-suppress): * mule/cyrillic.el ("Cyrillic-KOI8"): * mule/cyrillic.el (koi8-u): * mule/general-late.el (posix-charset-to-coding-system-hash): * mule/latin.el: * mule/latin.el (for): * cl-extra.el: * cl-extra.el (cl-extra): * loadup.el (load-history): Change any uses of #'remassq, #'remassoc and friends to calling #'delete* with an appropriate key argument. Provide compatibility implementations, mark them obsolete. man/ChangeLog addition: 2011-10-09 Aidan Kehoe <kehoea@parhasard.net> * lispref/lists.texi (Association Lists): Don't document #'remassoc, #'remassq and friends in detail; they're XEmacs-specific and (delete* ... :key #'car) is preferable.
author Aidan Kehoe <kehoea@parhasard.net>
date Sun, 09 Oct 2011 12:55:51 +0100
parents d4f334808463
children bd80d9103fc8
comparison
equal deleted inserted replaced
5582:873d7425c1ad 5583:10f179710250
872 (ecase (signum integer) 872 (ecase (signum integer)
873 (0 0) 873 (0 0)
874 (-1 (1- (length (format "%b" (- integer))))) 874 (-1 (1- (length (format "%b" (- integer)))))
875 (1 (length (format "%b" integer))))) 875 (1 (length (format "%b" integer)))))
876 876
877 ;; These are here because labels and symbol-macrolet are not available in
878 ;; obsolete.el. They are, however, all marked as obsolete in that file.
879 (symbol-macrolet ((not-nil '#:not-nil))
880 (labels ((car-or-not-nil (object)
881 (if (consp object) (car object) not-nil))
882 (cdr-or-not-nil (object)
883 (if (consp object) (cdr object) not-nil)))
884 (defalias 'remassoc
885 #'(lambda (key alist)
886 (delete* key alist :test #'equal
887 :key (if key #'car-safe #'car-or-not-nil))))
888 (defalias 'remrassoc
889 #'(lambda (key alist)
890 (delete* key alist :test #'equal
891 :key (if key #'cdr-safe #'cdr-or-not-nil))))
892 (defalias 'remrassq
893 #'(lambda (key alist)
894 (delete* key alist :test #'eq
895 :key (if key #'cdr-safe #'cdr-or-not-nil))))
896 (defalias 'remassq
897 #'(lambda (key alist)
898 (delete* key alist :test #'eq
899 :key (if key #'car-safe #'car-or-not-nil))))))
900
877 (run-hooks 'cl-extra-load-hook) 901 (run-hooks 'cl-extra-load-hook)
878 902
879 ;; XEmacs addition 903 ;; XEmacs addition
880 (provide 'cl-extra) 904 (provide 'cl-extra)
881 905