Fix InstrumentSwitch grob definition.
[lilypond.git] / lily / scheme-listener-scheme.cc
blob01eaa22ba198da2dbb3a8a7aa92c592caa34c2bd
1 /*
2 scheme-listener-scheme.cc -- Connect listeners to Scheme through Scheme_listener
4 source file of the GNU LilyPond music typesetter
6 (c) 2006--2007 Erik Sandberg <mandolaerik@gmail.com>
7 */
9 #include "scheme-listener.hh"
11 LY_DEFINE (ly_make_listener, "ly:make-listener",
12 1, 0, 0, (SCM callback),
13 "Create a listener. Any time the listener hears an object,"
14 " it will call @var{callback} with that object.\n"
15 "\n"
16 "@var{callback} should take exactly one argument.")
18 LY_ASSERT_TYPE (ly_is_procedure, callback, 1);
19 Scheme_listener *l = new Scheme_listener (callback);
20 SCM listener = GET_LISTENER (l->call).smobbed_copy ();
21 l->unprotect ();
22 return listener;