[climacs-cvs] CVS esa
thenriksen
thenriksen at common-lisp.net
Tue May 16 14:45:59 UTC 2006
Update of /project/climacs/cvsroot/esa
In directory clnet:/tmp/cvs-serv518
Modified Files:
esa-command-parser.lisp
Log Message:
Fixed handling of *unsupplied-argument-marker* for commands with >1
arguments.
Previously, every argument would be treated as if it was
*unsupplied-argument-marker* if just a single one was. Was this on
purpose? It looked like a slight oversight regarding the behavior of
DO.
--- /project/climacs/cvsroot/esa/esa-command-parser.lisp 2006/05/10 09:52:05 1.1
+++ /project/climacs/cvsroot/esa/esa-command-parser.lisp 2006/05/16 14:45:58 1.2
@@ -108,11 +108,13 @@
(let (result)
;; only required args for now.
(do ((required-args required-args (cdr required-args))
- (arg (car required-args) (car required-args))
+ (arg (car required-args) (cadr required-args))
(command-args command-args (cdr command-args))
- (command-arg (car command-args) (car command-args)))
+ (command-arg (car command-args) (cadr command-args)))
((null required-args) (cons command-name (nreverse result)))
(destructuring-bind (name ptype &rest args) arg
- (push (esa-parse-one-arg stream name ptype args command-arg)
+ (push (if (eq command-arg *unsupplied-argument-marker*)
+ (esa-parse-one-arg stream name ptype args command-arg)
+ command-arg)
result)
(maybe-clear-input)))))))))
More information about the Climacs-cvs
mailing list