From 3346a90fa74d399fd500e07b6b28fbdc7812722d Mon Sep 17 00:00:00 2001 From: Mikael Djurfeldt Date: Thu, 18 Jun 1998 21:53:00 +0000 Subject: * dynwind.c: #include "genio.h"; #include "smob.h"; Implemented a new data type (guards) for representation of C level guards and data on the wind chain. (scm_internal_dynamic_wind): New function. * dynwind.h: Declare scm_internal_dynamic_wind. * load.c: #include "dynwind.h"; (scm_primitive_load): Use scm_inner_dynamic_wind to update scm_cur_loadp. --- libguile/dynwind.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'libguile/dynwind.h') diff --git a/libguile/dynwind.h b/libguile/dynwind.h index abc0c21a8..7ed51a4b3 100644 --- a/libguile/dynwind.h +++ b/libguile/dynwind.h @@ -47,7 +47,15 @@ +typedef void (*scm_guard_t) (void *); +typedef SCM (*scm_inner_t) (void *); + extern SCM scm_dynamic_wind SCM_P ((SCM thunk1, SCM thunk2, SCM thunk3)); +extern SCM scm_internal_dynamic_wind SCM_P ((scm_guard_t before, + scm_inner_t inner, + scm_guard_t after, + void *inner_data, + void *guard_data)); extern void scm_dowinds SCM_P ((SCM to, long delta)); extern void scm_init_dynwind SCM_P ((void)); -- cgit v1.2.3