Skip to content
Snippets Groups Projects
Commit 730839ac authored by pmai's avatar pmai
Browse files

Add result-value form to dovector, to bring it in line with dolist.

From the unicode patch-set by Brian Spilsbury.
parent f967c8ad
No related branches found
No related tags found
No related merge requests found
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain. ;;; Carnegie Mellon University, and has been placed in the public domain.
;;; ;;;
(ext:file-comment (ext:file-comment
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/extensions.lisp,v 1.25 2001/03/13 16:52:14 pw Exp $") "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/extensions.lisp,v 1.26 2002/09/19 17:48:17 pmai Exp $")
;;; ;;;
;;; ********************************************************************** ;;; **********************************************************************
;;; ;;;
...@@ -172,7 +172,7 @@ ...@@ -172,7 +172,7 @@
,setter)))) ,setter))))
(defmacro dovector ((elt vector) &rest forms) (defmacro dovector ((elt vector &optional default) &rest forms)
"Just like dolist, but with one-dimensional arrays." "Just like dolist, but with one-dimensional arrays."
(let ((index (gensym)) (let ((index (gensym))
(length (gensym)) (length (gensym))
...@@ -180,7 +180,7 @@ ...@@ -180,7 +180,7 @@
`(let ((,vec ,vector)) `(let ((,vec ,vector))
(do ((,index 0 (1+ ,index)) (do ((,index 0 (1+ ,index))
(,length (length ,vec))) (,length (length ,vec)))
((>= ,index ,length) nil) ((>= ,index ,length) ,default)
(let ((,elt (aref ,vec ,index))) (let ((,elt (aref ,vec ,index)))
,@forms))))) ,@forms)))))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment