define-setf-expander
define-setf-expander is a Lisp macro in `cl.el
'.
(define-setf-expander NAME ARGLIST &rest BODY)
Define a `setf' method.
This method shows how to handle `setf's to places of the form
(NAME ARGS...). The argument forms ARGS are bound according to
ARGLIST, as if NAME were going to be expanded as a macro, then
the BODY forms are executed and must return a list of five elements:
a temporary-variables list, a value-forms list, a store-variables list
(of length one), a store-form, and an access- form.
See `gv-define-expander', and `gv-define-setter' for better and
simpler ways to define setf-methods.