From cce1638cfe47e261cb9b285ba7f7e20dda12340e Mon Sep 17 00:00:00 2001 From: Matthias Benkard Date: Fri, 7 Mar 2008 00:02:08 +0100 Subject: Fix COERCE-OBJECT (... (EQL :ID)). darcs-hash:cee5f53f4c7c73bb8905d76fa6417b74112a3f42 --- Lisp/lisp-value-wrapping.lisp | 10 ---------- Lisp/type-conversion-policy.lisp | 9 ++++++++- objective-cl.asd | 3 ++- 3 files changed, 10 insertions(+), 12 deletions(-) diff --git a/Lisp/lisp-value-wrapping.lisp b/Lisp/lisp-value-wrapping.lisp index a25cb2d..dbc9c6e 100644 --- a/Lisp/lisp-value-wrapping.lisp +++ b/Lisp/lisp-value-wrapping.lisp @@ -40,16 +40,6 @@ (:metaclass ns::+ns-object)) -(defcoercion id ((x list)) - (intern-lisp-value x)) - -(defcoercion id ((x string)) - (intern-lisp-value x)) - -(defcoercion id ((x t)) - (intern-lisp-value x)) - - (defvar *lisp-value-wrappers* (make-weak-value-hash-table)) diff --git a/Lisp/type-conversion-policy.lisp b/Lisp/type-conversion-policy.lisp index ba1ae34..43c3cf3 100644 --- a/Lisp/type-conversion-policy.lisp +++ b/Lisp/type-conversion-policy.lisp @@ -79,7 +79,14 @@ (defcoercion :id ((x null)) +nil+) -;; (defcoercion id ((x {list, string, t})) ...): See lisp-value-wrapping.lisp. +(defcoercion :id ((x list)) + (intern-lisp-value x)) + +(defcoercion :id ((x string)) + (intern-lisp-value x)) + +(defcoercion :id ((x t)) + (intern-lisp-value x)) (defcoercion :class ((x id)) diff --git a/objective-cl.asd b/objective-cl.asd index 82d1731..ec74687 100644 --- a/objective-cl.asd +++ b/objective-cl.asd @@ -63,7 +63,8 @@ "type-handling" "policy" "data-types" - "method-invocation")) + "method-invocation" + "lisp-value-wrapping")) (:file "type-handling" :depends-on ("defpackage" "libobjcl" "init")) -- cgit v1.2.3