slot-exists-p
(slot-exists-p instance 'slot-name)
Whether the instance's class declares a slot of that name, regardless of boundness: an unbound slot exists (slot-boundp is the boundness test), an undeclared one does not, and a non-instance answers nil. The slot name may be a runtime-computed symbol on every backend.