X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Flily-guile.hh;h=d1ca0424bb3e0df24d958260bedc89f462cf02aa;hb=db313ad3bc0e00e323b9f8f07852070b79d15096;hp=d678ec848a6250fee0b8ca18aa0fae4143d201d5;hpb=b0e291860d77581f0ff27d5b26f8632fc0bdbeba;p=lilypond.git diff --git a/lily/include/lily-guile.hh b/lily/include/lily-guile.hh index d678ec848a..d1ca0424bb 100644 --- a/lily/include/lily-guile.hh +++ b/lily/include/lily-guile.hh @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 1998--2014 Jan Nieuwenhuizen + Copyright (C) 1998--2015 Jan Nieuwenhuizen LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -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 ly_scm2realdrul (SCM); +SCM ly_memv (SCM, SCM); Slice int_list_to_slice (SCM l); SCM ly_interval2scm (Drul_array); 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 SCM ly_cxx_vector_to_list (vector const &src) @@ -218,4 +215,10 @@ ly_cxx_vector_to_list (vector const &src) SCM ly_offsets2scm (vector os); vector 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 */