LilyPond is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
LilyPond is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
bool profile_property_accesses = false;
/*
crash if internally the wrong type is used for a grob property.
bool profile_property_accesses = false;
/*
crash if internally the wrong type is used for a grob property.
LY_DEFINE (ly_option_usage, "ly:option-usage", 0, 1, 0, (SCM port),
"Print @code{ly:set-option} usage. Optional @var{port} argument"
LY_DEFINE (ly_option_usage, "ly:option-usage", 0, 1, 0, (SCM port),
"Print @code{ly:set-option} usage. Optional @var{port} argument"
{
SCM str = scm_from_locale_string (get_help_string ().c_str ());
scm_write_line (str, port);
{
SCM str = scm_from_locale_string (get_help_string ().c_str ());
scm_write_line (str, port);
"Add a program option @var{sym}. @var{val} is the default"
" value and @var{description} is a string description.")
{
"Add a program option @var{sym}. @var{val} is the default"
" value and @var{description} is a string description.")
{
LY_ASSERT_TYPE (ly_is_symbol, sym, 1);
LY_ASSERT_TYPE (scm_is_string, description, 3);
LY_ASSERT_TYPE (ly_is_symbol, sym, 1);
LY_ASSERT_TYPE (scm_is_string, description, 3);
warning (_f ("no such internal option: %s", varstr.c_str ()));
internal_set_option (var, val);
warning (_f ("no such internal option: %s", varstr.c_str ()));
internal_set_option (var, val);