]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/lily-guile.hh
release: 1.1.41
[lilypond.git] / lily / include / lily-guile.hh
1 /*
2   lily-guile.hh encapsulate guile
3
4   source file of the GNU LilyPond music typesetter
5
6   (c) 1998--1999 Jan Nieuwenhuizen <janneke@gnu.org>
7 */
8
9 #ifndef LILY_GUILE_HH
10 #define LILY_GUILE_HH
11 // order of includes important?
12 #include "config.hh"
13 #include  "string.hh"
14
15 #include <guile/gh.h>
16 #include <libguile.h>
17 #include "direction.hh"
18
19 SCM ly_symbol (String name);
20 String symbol_to_string (SCM);
21 SCM ly_set_scm (String name , SCM val);
22
23 SCM ly_append (SCM a, SCM b);
24 SCM ly_eval (SCM a);
25 SCM ly_func_o (char const* name);
26 SCM ly_quote_scm (SCM s);
27 void ly_display_scm (SCM s);
28 String ly_scm2string (SCM s);
29 SCM array_to_list (SCM *a , int l);
30
31
32 #include "array.hh"
33 #include "scalar.hh"
34
35
36 void read_lily_scm_file (String);
37 void init_symbols ();
38 #include "ly-symbols.hh"
39
40 /*
41   DIY gc protection.
42  */
43 SCM ly_protect_scm (SCM s);
44 SCM ly_unprotect_scm (SCM s);
45 void init_ly_protection ();
46
47 SCM index_cell (SCM cellp, Direction d);
48
49 #endif // LILY_GUILE_HH