# HG changeset patch # User Stefan Monnier # Date 1052009065 0 # Node ID fe838fc4d9a910860f77dc71d4da9943233632cc # Parent 9c84256c54562bad3ca84b9caa37919ed01de9a7 (cl-map-keymap): Redefine as alias. (cl-map-keymap-recursively): Use map-keymap. (cl-macroexpand-all): Don't quote functions. diff -r 9c84256c5456 -r fe838fc4d9a9 lisp/emacs-lisp/cl-extra.el --- a/lisp/emacs-lisp/cl-extra.el Sun May 04 00:34:16 2003 +0000 +++ b/lisp/emacs-lisp/cl-extra.el Sun May 04 00:44:25 2003 +0000 @@ -203,26 +203,12 @@ (not (apply 'every cl-pred cl-seq cl-rest))) ;;; Support for `loop'. -(defun cl-map-keymap (cl-func cl-map) - (while (symbolp cl-map) (setq cl-map (symbol-function cl-map))) - (if (listp cl-map) - (let ((cl-p cl-map)) - (while (consp (setq cl-p (cdr cl-p))) - (cond ((consp (car cl-p)) - (funcall cl-func (car (car cl-p)) (cdr (car cl-p)))) - ((or (vectorp (car cl-p)) (char-table-p (car cl-p))) - (cl-map-keymap cl-func (car cl-p))) - ((eq (car cl-p) 'keymap) - (setq cl-p nil))))) - (let ((cl-i -1)) - (while (< (setq cl-i (1+ cl-i)) (length cl-map)) - (if (aref cl-map cl-i) - (funcall cl-func cl-i (aref cl-map cl-i))))))) +(defalias 'cl-map-keymap 'map-keymap) (defun cl-map-keymap-recursively (cl-func-rec cl-map &optional cl-base) (or cl-base (setq cl-base (copy-sequence [0]))) - (cl-map-keymap + (map-keymap (function (lambda (cl-key cl-bind) (aset cl-base (1- (length cl-base)) cl-key) @@ -721,11 +707,10 @@ (sublis sub (nreverse decls)) (list (list* 'list '(quote apply) - (list 'list '(quote quote) - (list 'function - (list* 'lambda - (append new (cadadr form)) - (sublis sub body)))) + (list 'function + (list* 'lambda + (append new (cadadr form)) + (sublis sub body))) (nconc (mapcar (function (lambda (x) (list 'list '(quote quote) x)))