/*
- music-scheme.cc -- implement Music bindings
+ This file is part of LilyPond, the GNU music typesetter.
- source file of the GNU LilyPond music typesetter
+ Copyright (C) 2005--2009 Han-Wen Nienhuys <hanwen@xs4all.nl>
- (c) 2005--2008 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ LilyPond is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ LilyPond is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with LilyPond. If not, see <http://www.gnu.org/licenses/>.
*/
#include "music.hh"
return sc->get_length ().smobbed_copy ();
}
-LY_DEFINE (ly_music_property,
- "ly:music-property", 2, 1, 0, (SCM mus, SCM sym, SCM dfault),
- "Get the property @var{sym} of music expression @var{mus}."
- " If @var{sym} is undefined, return @code{'()}.")
+LY_DEFINE (ly_music_property, "ly:music-property",
+ 2, 1, 0, (SCM mus, SCM sym, SCM val),
+ "Return the value for property @var{sym} of music expression"
+ " @var{mus}. If no value is found, return @var{val} or"
+ " @code{'()} if @var{val} is not specified.")
{
LY_ASSERT_TYPE (unsmob_music, mus, 1);
- return ly_prob_property (mus, sym, dfault);
+ return ly_prob_property (mus, sym, val);
}
LY_DEFINE (ly_music_set_property_x, "ly:music-set-property!",
LY_DEFINE (ly_music_p, "ly:music?",
1, 0, 0, (SCM obj),
- "Type predicate.")
+ "Is @var{obj} a music object?")
{
return scm_from_bool (unsmob_music (obj));
}
LY_DEFINE (ly_music_list_p, "ly:music-list?",
1, 0, 0, (SCM lst),
- "Type predicate: Return true if @var{lst} is a list"
- " of music objects.")
+ "Is @var{lst} a list of music objects?")
{
if (scm_list_p (lst) == SCM_BOOL_T)
while (scm_is_pair (lst))