X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Fc%2B%2B.scm;h=a455afdd78a4cf69116dd7809bc2f227cf9b0bd1;hb=HEAD;hp=ba38d5a05738e1b42cd4b94d64f860d91c17fbf1;hpb=ec074a41f03cf4cd3b914daa1359dd6e0fb2012d;p=lilypond.git diff --git a/scm/c++.scm b/scm/c++.scm index ba38d5a057..a455afdd78 100644 --- a/scm/c++.scm +++ b/scm/c++.scm @@ -54,9 +54,28 @@ (and (pair? x) (ly:moment? (car x)) (ly:moment? (cdr x)))) +(define-public (boolean-or-number? x) + (or (boolean? x) (number? x))) + (define-public (boolean-or-symbol? x) (or (boolean? x) (symbol? x))) +(define-public (key? x) + (or (symbol? x) (index? x))) + +(define-public (key-list? x) + (and (list? x) (every key? x))) + +(define-public (key-list-or-music? x) + (if (list? x) + (every key? x) + (ly:music? x))) + +(define-public (key-list-or-symbol? x) + (if (list? x) + (every key? x) + (symbol? x))) + (define-public (symbol-list? x) (and (list? x) (every symbol? x)))