diff lisp/cl-macs.el @ 5305:09fed7053634

Handle slightly more complex type specifications, #'coerce, #'typep. 2010-11-17 Aidan Kehoe <kehoea@parhasard.net> * cl-extra.el (coerce): In the argument list, name the first argument OBJECT, not X; the former name was always used in the doc string and is clearer. Handle vector type specifications which include the length of the target sequence, error if there's a mismatch. * cl-macs.el (cl-make-type-test): Handle type specifications starting with the symbol 'eql.
author Aidan Kehoe <kehoea@parhasard.net>
date Wed, 17 Nov 2010 14:30:03 +0000
parents ec05a30f7148
children 5ed261fd2bd9 8d29f1c4bb98
line wrap: on
line diff
--- a/lisp/cl-macs.el	Mon Nov 15 19:31:06 2010 +0000
+++ b/lisp/cl-macs.el	Wed Nov 17 14:30:03 2010 +0000
@@ -3116,6 +3116,8 @@
 			 (cdr type))))
 	  ((memq (car-safe type) '(member member*))
 	   (list 'and (list 'member* val (list 'quote (cdr type))) t))
+	  ((eq (car-safe type) 'eql)
+	   (list 'eql (cadr type) val))
 	  ((eq (car-safe type) 'satisfies) (list (cadr type) val))
 	  (t (error "Bad type spec: %s" type)))))