emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/emacs-lisp/cl-extra.el [lexbind]


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/lisp/emacs-lisp/cl-extra.el [lexbind]
Date: Tue, 14 Oct 2003 19:32:22 -0400

Index: emacs/lisp/emacs-lisp/cl-extra.el
diff -c emacs/lisp/emacs-lisp/cl-extra.el:1.22.2.1 
emacs/lisp/emacs-lisp/cl-extra.el:1.22.2.2
*** emacs/lisp/emacs-lisp/cl-extra.el:1.22.2.1  Fri Apr  4 01:20:16 2003
--- emacs/lisp/emacs-lisp/cl-extra.el   Tue Oct 14 19:32:20 2003
***************
*** 1,6 ****
  ;;; cl-extra.el --- Common Lisp features, part 2 -*-byte-compile-dynamic: 
t;-*-
  
! ;; Copyright (C) 1993,2000  Free Software Foundation, Inc.
  
  ;; Author: Dave Gillespie <address@hidden>
  ;; Keywords: extensions
--- 1,6 ----
  ;;; cl-extra.el --- Common Lisp features, part 2 -*-byte-compile-dynamic: 
t;-*-
  
! ;; Copyright (C) 1993,2000,2003  Free Software Foundation, Inc.
  
  ;; Author: Dave Gillespie <address@hidden>
  ;; Keywords: extensions
***************
*** 203,228 ****
    (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)))))))
  
  (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
     (function
      (lambda (cl-key cl-bind)
        (aset cl-base (1- (length cl-base)) cl-key)
--- 203,214 ----
    (not (apply 'every cl-pred cl-seq cl-rest)))
  
  ;;; Support for `loop'.
! (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])))
!   (map-keymap
     (function
      (lambda (cl-key cl-bind)
        (aset cl-base (1- (length cl-base)) cl-key)
***************
*** 721,731 ****
                      (sublis sub (nreverse decls))
                      (list
                       (list* 'list '(quote apply)
!                             (list 'list '(quote quote)
!                                   (list 'function
!                                         (list* 'lambda
!                                                (append new (cadadr form))
!                                                (sublis sub body))))
                              (nconc (mapcar (function
                                              (lambda (x)
                                                (list 'list '(quote quote) x)))
--- 707,716 ----
                      (sublis sub (nreverse decls))
                      (list
                       (list* 'list '(quote apply)
!                             (list 'function
!                                   (list* 'lambda
!                                          (append new (cadadr form))
!                                          (sublis sub body)))
                              (nconc (mapcar (function
                                              (lambda (x)
                                                (list 'list '(quote quote) x)))
***************
*** 733,739 ****
                                     '((quote --cl-rest--)))))))
                 (list (car form) (list* 'lambda (cadadr form) body))))
           (let ((found (assq (cadr form) env)))
!            (if (eq (cadr (caddr found)) 'cl-labels-args)
                 (cl-macroexpand-all (cadr (caddr (cadddr found))) env)
               form))))
        ((memq (car form) '(defun defmacro))
--- 718,725 ----
                                     '((quote --cl-rest--)))))))
                 (list (car form) (list* 'lambda (cadadr form) body))))
           (let ((found (assq (cadr form) env)))
!            (if (and found (ignore-errors
!                             (eq (cadr (caddr found)) 'cl-labels-args)))
                 (cl-macroexpand-all (cadr (caddr (cadddr found))) env)
               form))))
        ((memq (car form) '(defun defmacro))
***************
*** 763,766 ****
--- 749,753 ----
  
  (run-hooks 'cl-extra-load-hook)
  
+ ;;; arch-tag: bcd03437-0871-43fb-a8f1-ad0e0b5427ed
  ;;; cl-extra.el ends here




reply via email to

[Prev in Thread] Current Thread [Next in Thread]