X-Git-Url: http://git.hcoop.net/bpt/guile.git/blobdiff_plain/db18a252fb4910017808878b3b8e2dfeda1ccdd0..856d318a9f543d8a61fcf61caae7d07102586802:/libguile/continuations.h diff --git a/libguile/continuations.h b/libguile/continuations.h index 29ea1c1a1..ec12b463a 100644 --- a/libguile/continuations.h +++ b/libguile/continuations.h @@ -3,7 +3,7 @@ #ifndef SCM_CONTINUATIONS_H #define SCM_CONTINUATIONS_H -/* Copyright (C) 1995,1996,2000,2001, 2006, 2008, 2009, 2010, 2012 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000,2001, 2006, 2008, 2009, 2010, 2012, 2013, 2014 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License @@ -51,7 +51,7 @@ typedef struct #endif /* __ia64__ */ size_t num_stack_items; /* size of the saved stack. */ SCM root; /* continuation root identifier. */ - SCM vm; /* vm */ + struct scm_vm *vp; /* vm */ SCM vm_cont; /* vm's stack and regs */ /* The offset from the live stack location to this copy. This is @@ -70,14 +70,17 @@ typedef struct -SCM_INTERNAL SCM scm_i_make_continuation (int *first, SCM vm, SCM vm_cont); +SCM_INTERNAL SCM scm_i_make_continuation (int *first, + struct scm_vm *vp, + SCM vm_cont); SCM_INTERNAL void scm_i_check_continuation (SCM cont); SCM_INTERNAL void scm_i_reinstate_continuation (SCM cont); -SCM_INTERNAL SCM scm_i_call_with_current_continuation (SCM proc); +struct scm_frame; +SCM_INTERNAL int scm_i_continuation_to_frame (SCM cont, + struct scm_frame *frame); -SCM_INTERNAL SCM scm_i_continuation_to_frame (SCM cont); -SCM_INTERNAL SCM scm_i_contregs_vm (SCM contregs); +SCM_INTERNAL struct scm_vm* scm_i_contregs_vp (SCM contregs); SCM_INTERNAL SCM scm_i_contregs_vm_cont (SCM contregs); SCM_API void *scm_c_with_continuation_barrier (void *(*func)(void*), void *);