]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/c++.scm
lilypond-book: avoid subprocess for mingw
[lilypond.git] / scm / c++.scm
index 204f813d4736388030db061ed5eea3927ec62cf6..7d5c85a8bee6ee8e3df34c4e722840c283bb2b50 100644 (file)
@@ -1,6 +1,6 @@
 ;;;; This file is part of LilyPond, the GNU music typesetter.
 ;;;;
-;;;; Copyright (C) 1998--2010 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; Copyright (C) 1998--2012 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;;;                 Han-Wen Nienhuys <hanwen@xs4all.nl>
 ;;;;
 ;;;; LilyPond is free software: you can redistribute it and/or modify
   (and (pair? x)
        (number? (car x)) (number? (cdr x))))
 
+(define-public (fraction? x)
+  (and (pair? x)
+       (integer? (car x)) (integer? (cdr x))
+       (>= (car x) 0) (>= (cdr x) 0)))
+
 (define-public (number-or-grob? x)
   (or (ly:grob? x) (number? x)))
 
 (define-public (grob-list? x)
   (list? x))
 
+(define-public (number-list? x)
+  (and (list? x) (every number? x)))
+
 (define-public (moment-pair? x)
   (and (pair? x)
        (ly:moment? (car x)) (ly:moment? (cdr x))))
@@ -61,6 +69,9 @@
 (define-public (symbol-or-boolean? x)
   (or (symbol? x) (boolean? x)))
 
+(define-public (void? x)
+  (unspecified? x))
+
 ;; moved list to end of lily.scm: then all type-predicates are
 ;; defined.
 (define type-p-name-alist '())