diff options
author | Bram Moolenaar <Bram@vim.org> | 2005-01-31 19:25:36 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2005-01-31 19:25:36 +0000 |
commit | 2e6aff38e0daa3cbd5b3622da19af917be5d9d67 (patch) | |
tree | 38ecfcb2294ac116f22d6818216fa361ebfa1194 /src/if_mzsch.c | |
parent | 485db9bbb22ada496157eba1b67696a1917e85f5 (diff) | |
download | vim-git-2e6aff38e0daa3cbd5b3622da19af917be5d9d67.tar.gz |
updated for version 7.0046v7.0046
Diffstat (limited to 'src/if_mzsch.c')
-rw-r--r-- | src/if_mzsch.c | 80 |
1 files changed, 74 insertions, 6 deletions
diff --git a/src/if_mzsch.c b/src/if_mzsch.c index 5881e2b9e..1e2405ec0 100644 --- a/src/if_mzsch.c +++ b/src/if_mzsch.c @@ -1,6 +1,6 @@ /* vi:set ts=8 sts=4 sw=4: * - * MzScheme interface by Sergey Khorev <khorev@softlab.ru> + * MzScheme interface by Sergey Khorev <sergey.khorev@gmail.com> * Original work by Brent Fulgham <bfulgham@debian.org> * (Based on lots of help from Matthew Flatt) * @@ -219,11 +219,21 @@ static Scheme_Object *(*dll_scheme_eval_string)(const char *str, static Scheme_Object *(*dll_scheme_eval_string_all)(const char *str, Scheme_Env *env, int all); static void (*dll_scheme_finish_primitive_module)(Scheme_Env *env); +# if MZSCHEME_VERSION_MAJOR < 299 static char *(*dll_scheme_format)(char *format, int flen, int argc, Scheme_Object **argv, long *rlen); +# else +static char *(*dll_scheme_format_utf8)(char *format, int flen, int argc, + Scheme_Object **argv, long *rlen); +# endif static void (*dll_scheme_gc_ptr_ok)(void *p); +# if MZSCHEME_VERSION_MAJOR < 299 static char *(*dll_scheme_get_sized_string_output)(Scheme_Object *, long *len); +# else +static char *(*dll_scheme_get_sized_byte_string_output)(Scheme_Object *, + long *len); +# endif static Scheme_Object *(*dll_scheme_intern_symbol)(const char *name); static Scheme_Object *(*dll_scheme_lookup_global)(Scheme_Object *symbol, Scheme_Env *env); @@ -235,8 +245,13 @@ static Scheme_Object *(*dll_scheme_make_namespace)(int argc, Scheme_Object *argv[]); static Scheme_Object *(*dll_scheme_make_pair)(Scheme_Object *car, Scheme_Object *cdr); +# if MZSCHEME_VERSION_MAJOR < 299 static Scheme_Object *(*dll_scheme_make_string)(const char *chars); static Scheme_Object *(*dll_scheme_make_string_output_port)(); +# else +static Scheme_Object *(*dll_scheme_make_byte_string)(const char *chars); +static Scheme_Object *(*dll_scheme_make_byte_string_output_port)(); +# endif static Scheme_Object *(*dll_scheme_make_struct_instance)(Scheme_Object *stype, int argc, Scheme_Object **argv); static Scheme_Object **(*dll_scheme_make_struct_names)(Scheme_Object *base, @@ -244,7 +259,11 @@ static Scheme_Object **(*dll_scheme_make_struct_names)(Scheme_Object *base, static Scheme_Object *(*dll_scheme_make_struct_type)(Scheme_Object *base, Scheme_Object *parent, Scheme_Object *inspector, int num_fields, int num_uninit_fields, Scheme_Object *uninit_val, - Scheme_Object *properties); + Scheme_Object *properties +# if MZSCHEME_VERSION_MAJOR >= 299 + , Scheme_Object *guard +# endif + ); static Scheme_Object **(*dll_scheme_make_struct_values)( Scheme_Object *struct_type, Scheme_Object **names, int count, int flags); @@ -262,6 +281,13 @@ static Scheme_Object *(*dll_scheme_read)(Scheme_Object *port); static void (*dll_scheme_signal_error)(const char *msg, ...); static void (*dll_scheme_wrong_type)(const char *name, const char *expected, int which, int argc, Scheme_Object **argv); +# if MZSCHEME_VERSION_MAJOR >= 299 +static void (*dll_scheme_set_param)(Scheme_Config *c, int pos, + Scheme_Object *o); +static Scheme_Config *(*dll_scheme_current_config)(void); +static Scheme_Object *(*dll_scheme_char_string_to_byte_string) + (Scheme_Object *s); +# endif /* arrays are imported directly */ # define scheme_eof dll_scheme_eof @@ -298,17 +324,32 @@ static void (*dll_scheme_wrong_type)(const char *name, const char *expected, # define scheme_eval_string dll_scheme_eval_string # define scheme_eval_string_all dll_scheme_eval_string_all # define scheme_finish_primitive_module dll_scheme_finish_primitive_module -# define scheme_format dll_scheme_format +# if MZSCHEME_VERSION_MAJOR < 299 +# define scheme_format dll_scheme_format +# else +# define scheme_format_utf8 dll_scheme_format_utf8 +# endif # define scheme_gc_ptr_ok dll_scheme_gc_ptr_ok -# define scheme_get_sized_string_output dll_scheme_get_sized_string_output +# if MZSCHEME_VERSION_MAJOR < 299 +# define scheme_get_sized_string_output dll_scheme_get_sized_string_output +# else +# define scheme_get_sized_byte_string_output \ + dll_scheme_get_sized_byte_string_output +# endif # define scheme_intern_symbol dll_scheme_intern_symbol # define scheme_lookup_global dll_scheme_lookup_global # define scheme_make_closed_prim_w_arity dll_scheme_make_closed_prim_w_arity # define scheme_make_integer_value dll_scheme_make_integer_value # define scheme_make_namespace dll_scheme_make_namespace # define scheme_make_pair dll_scheme_make_pair -# define scheme_make_string dll_scheme_make_string -# define scheme_make_string_output_port dll_scheme_make_string_output_port +# if MZSCHEME_VERSION_MAJOR < 299 +# define scheme_make_string dll_scheme_make_string +# define scheme_make_string_output_port dll_scheme_make_string_output_port +# else +# define scheme_make_byte_string dll_scheme_make_byte_string +# define scheme_make_byte_string_output_port \ + dll_scheme_make_byte_string_output_port +# endif # define scheme_make_struct_instance dll_scheme_make_struct_instance # define scheme_make_struct_names dll_scheme_make_struct_names # define scheme_make_struct_type dll_scheme_make_struct_type @@ -325,6 +366,12 @@ static void (*dll_scheme_wrong_type)(const char *name, const char *expected, # define scheme_set_stack_base dll_scheme_set_stack_base # define scheme_signal_error dll_scheme_signal_error # define scheme_wrong_type dll_scheme_wrong_type +# if MZSCHEME_VERSION_MAJOR >= 299 +# define scheme_set_param dll_scheme_set_param +# define scheme_current_config dll_scheme_current_config +# define scheme_char_string_to_byte_string \ + dll_scheme_char_string_to_byte_string +# endif typedef struct { @@ -367,10 +414,19 @@ static Thunk_Info mzsch_imports[] = { {"scheme_eval_string_all", (void **)&dll_scheme_eval_string_all}, {"scheme_finish_primitive_module", (void **)&dll_scheme_finish_primitive_module}, +# if MZSCHEME_VERSION_MAJOR < 299 {"scheme_format", (void **)&dll_scheme_format}, +# else + {"scheme_format_utf8", (void **)&dll_scheme_format_utf8}, +#endif {"scheme_gc_ptr_ok", (void **)&dll_scheme_gc_ptr_ok}, +# if MZSCHEME_VERSION_MAJOR < 299 {"scheme_get_sized_string_output", (void **)&dll_scheme_get_sized_string_output}, +# else + {"scheme_get_sized_byte_string_output", + (void **)&dll_scheme_get_sized_byte_string_output}, +#endif {"scheme_intern_symbol", (void **)&dll_scheme_intern_symbol}, {"scheme_lookup_global", (void **)&dll_scheme_lookup_global}, {"scheme_make_closed_prim_w_arity", @@ -378,9 +434,15 @@ static Thunk_Info mzsch_imports[] = { {"scheme_make_integer_value", (void **)&dll_scheme_make_integer_value}, {"scheme_make_namespace", (void **)&dll_scheme_make_namespace}, {"scheme_make_pair", (void **)&dll_scheme_make_pair}, +# if MZSCHEME_VERSION_MAJOR < 299 {"scheme_make_string", (void **)&dll_scheme_make_string}, {"scheme_make_string_output_port", (void **)&dll_scheme_make_string_output_port}, +# else + {"scheme_make_byte_string", (void **)&dll_scheme_make_byte_string}, + {"scheme_make_byte_string_output_port", + (void **)&dll_scheme_make_byte_string_output_port}, +# endif {"scheme_make_struct_instance", (void **)&dll_scheme_make_struct_instance}, {"scheme_make_struct_names", (void **)&dll_scheme_make_struct_names}, @@ -398,6 +460,12 @@ static Thunk_Info mzsch_imports[] = { {"scheme_set_stack_base", (void **)&dll_scheme_set_stack_base}, {"scheme_signal_error", (void **)&dll_scheme_signal_error}, {"scheme_wrong_type", (void **)&dll_scheme_wrong_type}, +# if MZSCHEME_VERSION_MAJOR >= 299 + {"scheme_set_param", (void **)&dll_scheme_set_param}, + {"scheme_current_config", (void **)&dll_scheme_current_config}, + {"scheme_char_string_to_byte_string", + (void **)&dll_scheme_char_string_to_byte_string}, +# endif {NULL, NULL}}; static HINSTANCE hMzGC = 0; |