interface-ref
is useful when manipulating a place containing an interface pointer.
The
setf
expander increments the reference count, as if by add-ref, of
new-value
, unless it is
nil
. It then decrements the reference count, as if by release, of the existing value in
iptr
, unless this is
nil
. Note that this order is important in the case that the new value is the same as the current value. Finally the value of place
iptr
is set to
new-value
.
The reader
interface-ref
simply returns its argument and does no reference counting. It may be useful in a form which both reads and writes a place like
incf
.