Changeset 113


Ignore:
Timestamp:
Dec 12, 2003, 1:12:57 PM (21 years ago)
Author:
Gary Byers
Message:

New wrapper layout.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ccl/library/lispequ.lisp

    r105 r113  
    913913;;; All standard-instances (classes, instances other than funcallable instances)
    914914;;; consist of a vector of slot values and a pointer to the class wrapper.
    915 (def-accessors (instance) uvref ; %svref
     915(def-accessors (instance) %svref
    916916  instance.hash                         ; a fixnum for EQ-based hashing
    917917  instance.class-wrapper
     
    924924;;; Get the "raw" contents of the slot, even if it's %SLOT-UNBOUND-MARKER.
    925925(defmacro %standard-instance-instance-location-access (instance location)
    926   `(uvref (instance.slots ,instance) ,location))
     926  `(%svref (instance.slots ,instance) ,location))
    927927
    928928(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))
    930930
    931931(defsetf standard-instance-instance-location-access
     
    936936
    937937(defmacro %standard-generic-function-instance-location-access (sgf location)
    938   `(uvref (gf.slots ,sgf) ,location))
     938  `(%svref (gf.slots ,sgf) ,location))
    939939
    940940(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))
    942942
    943943(defsetf standard-generic-function-instance-location-access
     
    960960  %wrapper-slot-id-map                  ; (vector (mod nslots) next-slot-id-index)
    961961  %wrapper-slot-definition-table        ; vector of nil || slot-definitions
    962   %wrapper-class-svuc-effective-method-function  ; call effective method for SLOT-VALUE-USING-CLASS
    963   %wrapper-class-ssvuc-effective-method-function ; call effective method for (SETF SLOT-VALUE-USING-CLASS
    964962  %wrapper-slot-id-value                ; "fast" SLOT-VALUE function
    965963  %wrapper-set-slot-id-value            ; "fast" (SETF SLOT-VALUE) function
     
    990988(defmacro %cons-wrapper (class &optional
    991989                               (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))
    993991
    994992
     
    10871085  standard-effective-slot-definition.location
    10881086  standard-effective-slot-definition.slot-id
     1087  standard-effective-slot-definition.type-predicate
    10891088  )
    10901089
     
    11441143;; rest of the table is alternating wrappers & combined-methods.
    11451144
    1146 (def-accessors uvref ;%svref
     1145(def-accessors %svref
    11471146    %gf-dispatch-table-methods          ; List of methods
    11481147    %gf-dispatch-table-precedence-list  ; List of argument numbers in precedence order
     
    11761175
    11771176; slot accessor info for primary classes
    1178 (def-accessors uvref ;%svref
     1177(def-accessors %svref
    11791178  %slot-accessor-info.class
    11801179  (%slot-accessor-info.accessor %slot-accessor-info.slot-name)
Note: See TracChangeset for help on using the changeset viewer.