------------------------------------------------------------ revno: 116871 committer: Daniel Colascione branch nick: trunk timestamp: Sun 2014-03-23 20:06:35 -0700 message: Improve performance of &key parsing diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-03-23 23:14:52 +0000 +++ lisp/ChangeLog 2014-03-24 03:06:35 +0000 @@ -1,3 +1,8 @@ +2014-03-24 Daniel Colascione + + * emacs-lisp/cl-macs.el (cl--do-arglist): Use `plist-member' + instead of cl-loop search function. + 2014-03-23 Lars Ingebrigtsen * calendar/parse-time.el (parse-time-iso8601-regexp) === modified file 'lisp/emacs-lisp/cl-macs.el' --- lisp/emacs-lisp/cl-macs.el 2014-03-23 06:02:36 +0000 +++ lisp/emacs-lisp/cl-macs.el 2014-03-24 03:06:35 +0000 @@ -503,8 +503,7 @@ (varg (if (consp (car arg)) (cl-cadar arg) (car arg))) (def (if (cdr arg) (cadr arg) (or (car cl--bind-defs) (cadr (assq varg cl--bind-defs))))) - (look `(cl-loop for cl--arg on ,restarg by #'cddr - when (eq (car cl--arg) ',karg) return cl--arg))) + (look `(plist-member ,restarg ',karg))) (and def cl--bind-enquote (setq def `',def)) (if (cddr arg) (let* ((temp (or (nth 2 arg) (make-symbol "--cl-var--")))