From 24b47921450eb2abca8a4e67e731b530fcdeca38 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Sat, 13 Aug 2022 18:43:11 +0200 Subject: cue-list: Ignore unspecified values This allows the following kind of thing: (cue-list (cue 1 ...) (when something (cue 2 ...)) (cue 3 ...)) --- guile/starlet/cue-list.scm | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'guile') diff --git a/guile/starlet/cue-list.scm b/guile/starlet/cue-list.scm index a2361b0..4bb072b 100644 --- a/guile/starlet/cue-list.scm +++ b/guile/starlet/cue-list.scm @@ -237,10 +237,14 @@ (define-syntax cue-list (syntax-rules () ((_ body ...) - (let ((the-cue-list (vector (cue 0 - (make-empty-state) - (snap)) - body ...))) + (let ((the-cue-list + (list->vector + (remove unspecified? + (list + (cue 0 + (make-empty-state) + (snap)) + body ...))))) (track-all-cues! the-cue-list) (preset-all-cues! the-cue-list) the-cue-list)))) -- cgit v1.2.3