summaryrefslogtreecommitdiff
path: root/def.lisp
diff options
context:
space:
mode:
Diffstat (limited to 'def.lisp')
-rw-r--r--def.lisp7
1 files changed, 6 insertions, 1 deletions
diff --git a/def.lisp b/def.lisp
index aea5bb9..4b0e613 100644
--- a/def.lisp
+++ b/def.lisp
@@ -89,7 +89,10 @@ E.g.
(parse-class-options (kwargs)
(loop :for (key val . more) :on kwargs :by #'cddr
- :collect (list key val))))
+ :if (listp val)
+ :collect (cons key val)
+ :else
+ :collect (list key val))))
(let* ((slot-defs (loop :for expr :in slots-and-options
:while (listp expr)
@@ -144,3 +147,5 @@ E.g.
(values ,return-type)
(optimize (speed 3) (safety 0)))
,@(if docstring (rest body) body)))))
+
+