home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / oct93 / develop / umbscheme.lha / UMBScheme / src / debug.h < prev    next >
Text File  |  1992-08-04  |  2KB  |  66 lines

  1. /* debug.h -- UMB Scheme, debugger interface.
  2.  
  3. UMB Scheme Interpreter                  $Revision: 2.5 $
  4. Copyright (C) 1988, 1991 William R Campbell
  5.  
  6. This program is free software; you can redistribute it and/or modify
  7. it under the terms of the GNU General Public License as published by
  8. the Free Software Foundation; either version 1, or (at your option)
  9. any later version.
  10.  
  11. This program is distributed in the hope that it will be useful,
  12. but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. GNU General Public License for more details.
  15.  
  16. You should have received a copy of the GNU General Public License
  17. along with this program; if not, write to the Free Software
  18. Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  19.  
  20. UMB Scheme was written by Bill Campbell with help from Karl Berry,
  21. Barbara Dixey, Ira Gerstein, Mary Glaser, Kathy Hargreaves, Bill McCabe,
  22. Long Nguyen, Susan Quina, Jeyashree Sivasubram, Bela Sohoni and Thang Quoc Tran.
  23.  
  24. For additional information about UMB Scheme, contact the author:
  25.  
  26.     Bill Campbell
  27.     Department of Mathematics and Computer Science
  28.     University of Massachusetts at Boston
  29.     Harbor Campus
  30.     Boston, MA 02125
  31.  
  32.     Telephone: 617-287-6449        Internet: bill@cs.umb.edu
  33.  
  34. */
  35.  
  36. Import    void    Steer_Debugging();
  37. Import    void    Initialize_Debug();
  38.  
  39. Import    Boolean    Control_C;
  40. Import    Boolean    Debugger_Switched_On;
  41. Import    Boolean    Debugger_Activated;
  42. Import    Boolean Debugging;
  43. Import    Boolean    Go_Processed;
  44. Import    Boolean    Evaluating;
  45. Import    Boolean    Evaluation_Broken;
  46. Import    Boolean    Tracing;
  47. Import    Boolean    Tracing_All;
  48. Import    Integer    Stepping;
  49. Import    Integer    Stepper;
  50.  
  51. Import    Object    Traced_Procedures;
  52. Import    Integer    Trace_Margin;
  53.  
  54. #define    TRACE_INDENT        4
  55. #define    MAX_TRACE_MARGIN     40
  56.  
  57. #define    Traced(p)    ((Is_Procedure(p)&&Get_Procedure_Tracing(p)) || \
  58.              (Is_Primitive(p)&&Get_Primitive_Tracing(p)))
  59. #define Name_For(p)    (Is_Procedure(p)?Get_Procedure_Name(p):\
  60.              Is_Primitive(p)?Get_Primitive_Name(p):\
  61.              "<continuation>")
  62. #define    Trace_Right()    (Trace_Margin=\
  63.         ((Trace_Margin>=MAX_TRACE_MARGIN)?0:Trace_Margin+TRACE_INDENT))
  64. #define    Trace_Left()    (Trace_Margin=\
  65.         ((Trace_Margin<=0)?MAX_TRACE_MARGIN:Trace_Margin-TRACE_INDENT))
  66.