diff options
-rw-r--r-- | generate.lisp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/generate.lisp b/generate.lisp index de213a4..8bb93e7 100644 --- a/generate.lisp +++ b/generate.lisp @@ -3,7 +3,8 @@ (defmacro obj (&rest fields) (let ((o (gensym)) (f (gensym))) + (setf fields (mapcar (lambda (x) (cons 'list x)) fields)) `(let ((,o (make-hash-table :test #'equal :size ,(length fields)))) - (dolist (,f ',fields) + (dolist (,f ,(cons 'list fields)) (setf (gethash (car ,f) ,o) (cadr ,f))) ,o))) |