- 24 名前:デフォルトの名無しさん mailto:sage [2011/07/16(土) 19:08:06.55 ]
- >>23
なるほど。力になれずに申し訳ないけど、ポータブルなやり方は分からない。 subtypepのエラーを捕捉するのが、泥臭いけど一番良いのかな。 >>22で挙げたccl:type-specifier-pでは、 (defun type-specifier-p (form &aux sym) (cond ((symbolp form) (or (type-predicate form) (structure-class-p form) (%deftype-expander form) (find-class form nil))) ((consp form) (setq sym (%car form)) (or (type-specifier-p sym) (memq sym '(member satisfies mod)) (and (memq sym '(and or not)) (dolist (spec (%cdr form) t) (unless (type-specifier-p spec) (return nil)))))) (t (typep form 'class)))) こんな風に判断してた。
|

|