0.9.15.3:
authorChristophe Rhodes <csr21@cam.ac.uk>
Fri, 28 Jul 2006 14:47:21 +0000 (14:47 +0000)
committerChristophe Rhodes <csr21@cam.ac.uk>
Fri, 28 Jul 2006 14:47:21 +0000 (14:47 +0000)
commitc70ef5922e4e5290fab52b90c3614be83c0b8f8b
tree13508adef3f89e26bd06311f189d217a83dd0683
parenta9d113c53175ab3215697f7cf6ab6b7c1f448d5a
0.9.15.3:
Implement the READER-METHOD-CLASS/WRITER-METHOD-CLASS protocol.

In the process, note that the accessor methods generated for
(slot-value x 'a) [ on generic functions of names like
(SB-PCL::SLOT-ACCESSOR :GLOBAL A SB-PCL::READER) ] are not
standard accessor methods, as they do not correspond to a given
slot definition.  So implement
GLOBAL-{READER,WRITER,BOUNDP}-METHOD classes for those, which
have a slot name but no slot definition.

Some rearrangements of early methods to support the new
functionality.  REAL-MAKE-A-METHOD has to work moderately hard
to separate out all the various ways it can be called.

Include a test file for two ways of overriding the default
methods.
12 files changed:
NEWS
src/pcl/boot.lisp
src/pcl/braid.lisp
src/pcl/defs.lisp
src/pcl/dfun.lisp
src/pcl/early-low.lisp
src/pcl/generic-functions.lisp
src/pcl/methods.lisp
src/pcl/slots-boot.lisp
src/pcl/std-class.lisp
tests/mop-19.impure-cload.lisp [new file with mode: 0644]
version.lisp-expr