Changeset 113
- Timestamp:
- Dec 12, 2003, 1:12:57 PM (21 years ago)
- File:
-
- 1 edited
-
trunk/ccl/library/lispequ.lisp (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ccl/library/lispequ.lisp
r105 r113 913 913 ;;; All standard-instances (classes, instances other than funcallable instances) 914 914 ;;; consist of a vector of slot values and a pointer to the class wrapper. 915 (def-accessors (instance) uvref ;%svref915 (def-accessors (instance) %svref 916 916 instance.hash ; a fixnum for EQ-based hashing 917 917 instance.class-wrapper … … 924 924 ;;; Get the "raw" contents of the slot, even if it's %SLOT-UNBOUND-MARKER. 925 925 (defmacro %standard-instance-instance-location-access (instance location) 926 `( uvref (instance.slots ,instance) ,location))926 `(%svref (instance.slots ,instance) ,location)) 927 927 928 928 (defmacro set-standard-instance-instance-location-access (instance location new) 929 `(setf ( uvref (instance.slots ,instance) ,location) ,new))929 `(setf (%svref (instance.slots ,instance) ,location) ,new)) 930 930 931 931 (defsetf standard-instance-instance-location-access … … 936 936 937 937 (defmacro %standard-generic-function-instance-location-access (sgf location) 938 `( uvref (gf.slots ,sgf) ,location))938 `(%svref (gf.slots ,sgf) ,location)) 939 939 940 940 (defmacro set-standard-generic-function-instance-location-access (sgf location new) 941 `(setf ( uvref (gf.slots ,sgf) ,location) ,new))941 `(setf (%svref (gf.slots ,sgf) ,location) ,new)) 942 942 943 943 (defsetf standard-generic-function-instance-location-access … … 960 960 %wrapper-slot-id-map ; (vector (mod nslots) next-slot-id-index) 961 961 %wrapper-slot-definition-table ; vector of nil || slot-definitions 962 %wrapper-class-svuc-effective-method-function ; call effective method for SLOT-VALUE-USING-CLASS963 %wrapper-class-ssvuc-effective-method-function ; call effective method for (SETF SLOT-VALUE-USING-CLASS964 962 %wrapper-slot-id-value ; "fast" SLOT-VALUE function 965 963 %wrapper-set-slot-id-value ; "fast" (SETF SLOT-VALUE) function … … 990 988 (defmacro %cons-wrapper (class &optional 991 989 (hash-index '(new-class-wrapper-hash-index))) 992 `(%istruct 'class-wrapper ,hash-index ,class nil nil #'slot-id-lookup-no-slots nil nil nil nil#'%slot-id-ref-missing #'%slot-id-set-missing))990 `(%istruct 'class-wrapper ,hash-index ,class nil nil #'slot-id-lookup-no-slots nil nil #'%slot-id-ref-missing #'%slot-id-set-missing)) 993 991 994 992 … … 1087 1085 standard-effective-slot-definition.location 1088 1086 standard-effective-slot-definition.slot-id 1087 standard-effective-slot-definition.type-predicate 1089 1088 ) 1090 1089 … … 1144 1143 ;; rest of the table is alternating wrappers & combined-methods. 1145 1144 1146 (def-accessors uvref ;%svref1145 (def-accessors %svref 1147 1146 %gf-dispatch-table-methods ; List of methods 1148 1147 %gf-dispatch-table-precedence-list ; List of argument numbers in precedence order … … 1176 1175 1177 1176 ; slot accessor info for primary classes 1178 (def-accessors uvref ;%svref1177 (def-accessors %svref 1179 1178 %slot-accessor-info.class 1180 1179 (%slot-accessor-info.accessor %slot-accessor-info.slot-name)
Note:
See TracChangeset
for help on using the changeset viewer.
