;;;----- Licensing notice ---------------------------------------------------
;;;
-;;; This file is part of the Sensble Object Design, an object system for C.
+;;; This file is part of the Sensible Object Design, an object system for C.
;;;
;;; SOD is free software; you can redistribute it and/or modify
;;; it under the terms of the GNU General Public License as published by
(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)