home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mitsch75.zip / scheme-7_5_17-src.zip / scheme-7.5.17 / src / microcode / prmcon.h < prev    next >
C/C++ Source or Header  |  2000-12-05  |  2KB  |  63 lines

  1. /* -*-C-*-
  2.  
  3. $Id: prmcon.h,v 1.4 2000/12/05 21:23:47 cph Exp $
  4.  
  5. Copyright (c) 1990, 1999, 2000 Massachusetts Institute of Technology
  6.  
  7. This program is free software; you can redistribute it and/or modify
  8. it under the terms of the GNU General Public License as published by
  9. the Free Software Foundation; either version 2 of the License, or (at
  10. your option) any later version.
  11.  
  12. This program is distributed in the hope that it will be useful, but
  13. WITHOUT ANY WARRANTY; without even the implied warranty of
  14. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  15. General Public License for more details.
  16.  
  17. You should have received a copy of the GNU General Public License
  18. along with this program; if not, write to the Free Software
  19. Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  20. */
  21.  
  22. #ifndef SCM_PRMCON_H
  23.  
  24. #define SCM_PRMCON_H
  25.  
  26. SCHEME_OBJECT EXFUN (continue_primitive, (void));
  27.  
  28. void EXFUN (suspend_primitive,
  29.         (int continuation, int reentry_record_length,
  30.          SCHEME_OBJECT *reentry_record));
  31.  
  32. void EXFUN (immediate_interrupt, (void));
  33.  
  34. void EXFUN (immediate_error, (long error_code));
  35.  
  36. /* The tables below should be built automagically (by Findprim?).
  37.    This is a temporary (or permanent) kludge.
  38.  */
  39.  
  40. /* For each continuable primitive, there should be a constant,
  41.    and an entry in the table below.
  42.  
  43.    IMPORTANT: Primitives that can be suspended must use
  44.    PRIMITIVE_CANONICALIZE_CONTEXT at entry!
  45.  */
  46.  
  47. #define CONT_FASLOAD            0
  48.  
  49. #define CONT_MAX_INDEX            0
  50.  
  51. #ifdef SCM_PRMCON_C
  52.  
  53. SCHEME_OBJECT EXFUN (continue_fasload, (SCHEME_OBJECT *));
  54.  
  55. static SCHEME_OBJECT EXFUN
  56.   ((* (continuation_procedures [])), (SCHEME_OBJECT *)) = {
  57.   continue_fasload
  58. };
  59.  
  60. #endif /* SCM_PRMCON_C */
  61.  
  62. #endif /* SCM_PRMCON_H */
  63.