]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/lily-guile.hh
lilypond-manuals.css: edit color scheme and some spacing
[lilypond.git] / lily / include / lily-guile.hh
index 38709a14c541b2d55a02b4c7e2c32de1a7a32f3f..d1ca0424bb3e0df24d958260bedc89f462cf02aa 100644 (file)
@@ -37,7 +37,6 @@
 #include "guile-compatibility.hh"
 #include "interval.hh"
 #include "lily-guile-macros.hh"
-#include "ly-module.hh"
 #include "std-vector.hh"
 
 /** Conversion functions follow the GUILE naming convention, i.e.
@@ -48,8 +47,6 @@ string ly_scm_write_string (SCM s);
 SCM ly_deep_copy (SCM);
 SCM ly_truncate_list (int k, SCM lst);
 
-extern SCM global_lily_module;
-
 string gulp_file_to_string (const string &fn, bool must_exist, int size);
 
 SCM ly_string2scm (string const &s);
@@ -66,6 +63,7 @@ SCM ly_assoc_cdr (SCM key, SCM alist);
 SCM ly_assoc_get (SCM key, SCM alist, SCM default_value, SCM strict_checking = SCM_BOOL_F);
 Interval ly_scm2interval (SCM);
 Drul_array<Real> ly_scm2realdrul (SCM);
+SCM ly_memv (SCM, SCM);
 Slice int_list_to_slice (SCM l);
 SCM ly_interval2scm (Drul_array<Real>);
 char *ly_scm2str0 (SCM str);
@@ -99,7 +97,8 @@ SCM ly_hash_table_keys (SCM tab);
 SCM ly_assoc_prepend_x (SCM alist, SCM key, SCM val);
 
 inline bool ly_is_list (SCM x) { return scm_is_true (scm_list_p (x)); }
-inline bool ly_cheap_is_list (SCM x) { return scm_is_pair (x) || x == SCM_EOL; }
+inline bool ly_cheap_is_list (SCM x) { return scm_is_pair (x) || scm_is_null (x); }
+inline bool ly_is_module (SCM x) { return SCM_MODULEP (x); }
 inline bool ly_is_procedure (SCM x) { return scm_is_true (scm_procedure_p (x)); }
 inline bool ly_is_port (SCM x) { return scm_is_true (scm_port_p (x)); }
 
@@ -202,8 +201,6 @@ inline SCM ly_car (SCM x) { return SCM_CAR (x); }
 inline SCM ly_cdr (SCM x) { return SCM_CDR (x); }
 inline bool ly_is_pair (SCM x) { return SCM_I_CONSP (x); }
 
-#include "std-vector.hh"
-
 template<class T>
 SCM
 ly_cxx_vector_to_list (vector<T> const &src)
@@ -218,4 +215,10 @@ ly_cxx_vector_to_list (vector<T> const &src)
 SCM ly_offsets2scm (vector<Offset> os);
 vector<Offset> ly_scm2offsets (SCM s);
 
+/* For backward compatability with Guile 1.8 */
+#if !HAVE_GUILE_HASH_FUNC
+typedef SCM (*scm_t_hash_fold_fn) (GUILE_ELLIPSIS);
+typedef SCM (*scm_t_hash_handle_fn) (GUILE_ELLIPSIS);
+#endif
+
 #endif /* LILY_GUILE_HH */