+ ((and ts (gethash :target-slot dbi) (gethash :set dbi))
+ (mapcar (lambda (obj)
+ (let* ((target-name (gethash :target-slot dbi))
+ (target-class (find-class target-name)))
+ (list
+ (car
+ (fault-join-slot-raw
+ target-class
+ obj
+ (find target-name (class-slots (class-of obj))
+ :key #'slot-definition-name)))
+ obj)))
+ res))