Changeset 167
- Timestamp:
- Dec 31, 2003, 3:09:39 AM (21 years ago)
- File:
-
- 1 edited
-
trunk/ccl/level-1/l1-clos.lisp (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ccl/level-1/l1-clos.lisp
r151 r167 34 34 35 35 (defun extract-instance-effective-slotds (class) 36 (extract-slotds-with-allocation :instance (%class .slots class)))36 (extract-slotds-with-allocation :instance (%class-slots class))) 37 37 38 38 (defun extract-class-effective-slotds (class) 39 (extract-slotds-with-allocation :class (%class .slots class)))39 (extract-slotds-with-allocation :class (%class-slots class))) 40 40 41 41 (defun extract-instance-and-class-slotds (slotds) … … 261 261 (pushnew i initargs :test #'eq :key #'car)))))) 262 262 263 (defun constantly (x) 264 #'(lambda (&rest ignore) 265 (declare (dynamic-extent ignore) 266 (ignore ignore)) 267 x)) 263 268 264 269 265 … … 295 291 #|(%class.own-wrapper class)|# 296 292 (%cons-wrapper class))))) 297 ;;; This is a crock: structure-classes should have slots ... 298 (unless (<= (the fixnum (uvsize (instance.slots class))) %class.slots) 299 (setf (%class.slots class) eslotds)) 293 (setf (%class.slots class) eslotds) 300 294 (setf (%wrapper-instance-slots new-wrapper) new-ordering 301 295 (%wrapper-class-slots new-wrapper) (%class-get class :class-slots) … … 869 863 :initargs (:direct-slots) :readers (class-direct-slots)) 870 864 (:name slots :initform nil :initfunction ,#'false 871 ;; Defining CLASS-SLOTS naively as a reader method872 ;; can cause infinite recursion.873 ;; (It'll be especially naive if there's a non-reader874 ;; method defined on CLASS-SLOTS.)875 ;; The fact that the slot is a primary slot876 ;; saves the day (keeping us from trying to call877 ;; CLASS-SLOTS inside SLOT-VALUE-USING-CLASS878 865 :readers (class-slots)) 879 866 (:name kernel-p :initform nil :initfunction ,#'false)
Note:
See TracChangeset
for help on using the changeset viewer.
