(print-unreadable-object (item stream :type t)
(prin1 (sequencer-item-name item) stream)))
+(defmethod shared-initialize ((sequencer sequencer) slot-names
+ &key (constraints nil constraintsp))
+ (call-next-method)
+ (when constraintsp
+ (setf (slot-value sequencer 'constraints)
+ (mapcar (lambda (constraint)
+ (mapcar (lambda (name)
+ (ensure-sequencer-item sequencer name))
+ constraint))
+ (reverse constraints))))
+ sequencer)
+
(defmethod ensure-sequencer-item ((sequencer sequencer) name)
(with-slots (table) sequencer
(or (gethash name table)