+ extern SCM ly_music_p_proc;
+
+ string str = "";
+ for (SCM s = signature; scm_is_pair (s); s = scm_cdr (s))
+ {
+ if (str != "")
+ str += "-";
+
+ if (scm_car (s) == ly_music_p_proc)
+ str += "music";
+ else if (scm_car (s) == ly_lily_module_constant ("markup?"))
+ str += "markup";
+ else if (ly_is_procedure (scm_car (s)))
+ str += "scm";
+ }
+ if (str == "") str = "noarg";