diff --git a/src/CHANGELOG b/src/CHANGELOG index 9f1102e05..aefb7998e 100644 --- a/src/CHANGELOG +++ b/src/CHANGELOG @@ -109,6 +109,9 @@ ECL 0.9i - New slot options are now allowed, as well as new metaclass options. + - SLOT-{VALUE,BOUNDP,MAKUNBOUND}-USING-CLASS now are also specialized for + standard-effective-slot-definition (Thanks to D. Corkill) + * Documentation: - The HTML manuals now use CSS for a more appealing look. diff --git a/src/clos/fixup.lsp b/src/clos/fixup.lsp index b22edeed3..e361e6661 100644 --- a/src/clos/fixup.lsp +++ b/src/clos/fixup.lsp @@ -58,6 +58,22 @@ (eval (print `(defclass slot-definition () ,(mapcar #'(lambda (x) (butlast x 2)) +slot-definition-slots+))))) +(defmethod slot-value-using-class ((class standard-class) instance + (slot standard-effective-slot-definition)) + (slot-value-using-class class instance (slot-definition-name slot))) + +(defmethod slot-boundp-using-class ((class standard-class) instance + (slot standard-effective-slot-definition)) + (slot-boundp-using-class class instance (slot-definition-name slot))) + +(defmethod (setf slot-value-using-class) (val (class standard-class) instance + (slot standard-effective-slot-definition)) + (standard-instance-set val instance (slot-definition-name slot))) + +(defmethod slot-makunbound-using-class ((class standard-class) instance + (slot standard-effective-slot-definition)) + (slot-makunbound-using-class class instance (slot-definition-name slot))) + ;;; ---------------------------------------------------------------------- ;;; Fixup