]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/ly-syntax-constructors.scm
Turn music functions and their signatures into C++ smobs
[lilypond.git] / scm / ly-syntax-constructors.scm
index 45d308c4a92b9097b995dad731124a7a72a8e22c..9cbec5fc4f55f61c6b28f17e558109da84e0a4b4 100644 (file)
 ;; we don't call the function but rather return the general
 ;; fallback.
 (define-ly-syntax (music-function parser loc fun args . rest)
-  (let* ((sig (object-property fun 'music-function-signature))
+  (let* ((sig (ly:music-function-signature fun))
         (pred (if (pair? (car sig)) (caar sig) (car sig)))
         (good (proper-list? args))
-        (m (and good (apply fun parser loc (reverse! args rest)))))
+        (m (and good (apply (ly:music-function-extract fun)
+                            parser loc (reverse! args rest)))))
     (if (and good (pred m))
        (begin
          (if (ly:music? m)