r10067: add keyword
[kmrcl.git] / lists.lisp
index 9793f273d863227009390e794295864af9e63536..c18fe7e1982bf7ba03041b05315b34df815fcd54 100644 (file)
         (setf ,plist (append ,plist (list ,pkey ,value)))))))
 
 
+(defun unique-slot-values (list slot &key (test 'eql))
+  (let ((uniq '()))
+    (dolist (item list (nreverse uniq))
+      (let ((value (slot-value item slot)))
+       (unless (find value uniq :test test)
+         (push value uniq))))))
+