home *** CD-ROM | disk | FTP | other *** search
/ ftp.cs.arizona.edu / ftp.cs.arizona.edu.tar / ftp.cs.arizona.edu / icon / historic / v941.tgz / icon.v941src.tar / icon.v941src / ipl / mprocs / evsyms.icn < prev    next >
Text File  |  2000-07-29  |  5KB  |  161 lines

  1. ############################################################################
  2. #
  3. #    File:     evsyms.icn
  4. #
  5. #    Subject:  Procedures to produce table of event codes and symbols
  6. #
  7. #    Author:   Ralph E. Griswold
  8. #
  9. #    Date:     October 3, 1996
  10. #
  11. ############################################################################
  12. #
  13. #   This file is in the public domain.
  14. #
  15. ############################################################################
  16. #
  17. #  evsyms() returns returns a two-way table. Indexed by an event code, it
  18. #  produces the symbol (global identifier name) for the code. Indexed by the
  19. #  symbol of the code, it produces the event code.
  20. #
  21. #  This procedure is intended for use in event monitors under MT Icon.
  22. #
  23. ############################################################################
  24. #
  25. #  Links:  tables
  26. #
  27. ############################################################################
  28. #
  29. #  Includes:  "evdefs.icn"
  30. #
  31. ############################################################################
  32.  
  33. link tables
  34.  
  35. $include "evdefs.icn"
  36.  
  37. procedure evsyms()
  38.    static symmap
  39.  
  40.    initial {
  41.       symmap   := table("E_????")
  42.    
  43.       symmap[E_Aconv]    := "E_Aconv"
  44.       symmap[E_Alien]    := "E_Alien"
  45.       symmap[E_Assign]   := "E_Assign"
  46.       symmap[E_BlkDeAlc] := "E_BlkDeAlc"
  47.       symmap[E_Bsusp]    := "E_Bsusp"
  48.       symmap[E_Coact]    := "E_Coact"
  49.       symmap[E_Coexpr]   := "E_Coexpr"
  50.       symmap[E_Cofail]   := "E_Cofail"
  51.       symmap[E_Collect]  := "E_Collect"
  52.       symmap[E_Coret]    := "E_Coret"
  53.       symmap[E_Cset]     := "E_Cset"
  54.       symmap[E_Ecall]    := "E_Ecall"
  55.       symmap[E_Efail]    := "E_Efail"
  56.       symmap[E_Eresum]   := "E_Eresum"
  57.       symmap[E_Error]    := "E_Error"
  58.       symmap[E_Esusp]    := "E_Esusp"
  59.       symmap[E_Erem]     := "E_Erem"
  60.       symmap[E_Exit]     := "E_Exit"
  61.       symmap[E_External] := "E_External"
  62.       symmap[E_Fcall]    := "E_Fcall"
  63.       symmap[E_Fconv]    := "E_Fconv"
  64.       symmap[E_Ffail]    := "E_Ffail"
  65.       symmap[E_File]     := "E_File"
  66.       symmap[E_Free]     := "E_Free"
  67.       symmap[E_Fresum]   := "E_Fresum"
  68.       symmap[E_Fret]     := "E_Fret"
  69.       symmap[E_Fsusp]    := "E_Fsusp"
  70.       symmap[E_Frem]     := "E_Frem"
  71.       symmap[E_Intcall]  := "E_Intcall"
  72.       symmap[E_Integer]  := "E_Integer"
  73.       symmap[E_Intret]   := "E_Intret"
  74.       symmap[E_Kywdint]  := "E_Kywdint"
  75.       symmap[E_Kywdpos]  := "E_Kywdpos"
  76.       symmap[E_Kywdsubj] := "E_Kywdsubj"
  77.       symmap[E_Lbang]    := "E_Lbang"
  78.       symmap[E_Lcreate]  := "E_Lcreate"
  79.       symmap[E_Lelem]    := "E_Lelem"
  80.       symmap[E_Line]     := "E_Line"
  81.       symmap[E_List]     := "E_List"
  82.       symmap[E_Loc]     := "E_Loc"
  83.       symmap[E_Lpop]     := "E_Lpop"
  84.       symmap[E_Lpull]    := "E_Lpull"
  85.       symmap[E_Lpush]    := "E_Lpush"
  86.       symmap[E_Lput]     := "E_Lput"
  87.       symmap[E_Lrand]    := "E_Lrand"
  88.       symmap[E_Lref]     := "E_Lref"
  89.       symmap[E_Lrgint]   := "E_Lrgint"
  90.       symmap[E_Lsub]     := "E_Lsub"
  91.       symmap[E_Lsusp]    := "E_Lsusp"
  92.       symmap[E_Nconv]    := "E_Nconv"
  93.       symmap[E_Null]     := "E_Null"
  94.       symmap[E_Ocall]    := "E_Ocall"
  95.       symmap[E_Ofail]    := "E_Ofail"
  96.       symmap[E_Opcode]   := "E_Opcode"
  97.       symmap[E_Oresum]   := "E_Oresum"
  98.       symmap[E_Oret]     := "E_Oret"
  99.       symmap[E_Osusp]    := "E_Osusp"
  100.       symmap[E_Orem]     := "E_Orem"
  101.       symmap[E_Pcall]    := "E_Pcall"
  102.       symmap[E_Pfail]    := "E_Pfail"
  103.       symmap[E_Presum]   := "E_Presum"
  104.       symmap[E_Pret]     := "E_Pret"
  105.       symmap[E_Proc]     := "E_Proc"
  106.       symmap[E_Psusp]    := "E_Psusp"
  107.       symmap[E_Prem]     := "E_Prem"
  108.       symmap[E_Rbang]    := "E_Rbang"
  109.       symmap[E_Rcreate]  := "E_Rcreate"
  110.       symmap[E_Real]     := "E_Real"
  111.       symmap[E_Record]   := "E_Record"
  112.       symmap[E_Refresh]  := "E_Refresh"
  113.       symmap[E_Rrand]    := "E_Rrand"
  114.       symmap[E_Rref]     := "E_Rref"
  115.       symmap[E_Rsub]     := "E_Rsub"
  116.       symmap[E_Sbang]    := "E_Sbang"
  117.       symmap[E_Sconv]    := "E_Sconv"
  118.       symmap[E_Screate]  := "E_Screate"
  119.       symmap[E_Sdelete]  := "E_Sdelete"
  120.       symmap[E_Selem]    := "E_Selem"
  121.       symmap[E_Set]      := "E_Set"
  122.       symmap[E_Sfail]    := "E_Sfail"
  123.       symmap[E_Sinsert]  := "E_Sinsert"
  124.       symmap[E_Slots]    := "E_Slots"
  125.       symmap[E_Smember]  := "E_Smember"
  126.       symmap[E_Snew]     := "E_Snew"
  127.       symmap[E_Spos]     := "E_Spos"
  128.       symmap[E_Srand]    := "E_Srand"
  129.       symmap[E_Sresum]   := "E_Sresum"
  130.       symmap[E_Ssasgn]   := "E_Ssasgn"
  131.       symmap[E_Ssusp]    := "E_Ssusp"
  132.       symmap[E_Stack]    := "E_Stack"
  133.       symmap[E_StrDeAlc] := "E_StrDeAlc"
  134.       symmap[E_String]   := "E_String"
  135.       symmap[E_Sval]     := "E_Sval"
  136.       symmap[E_Srem]     := "E_Srem"
  137.       symmap[E_Table]    := "E_Table"
  138.       symmap[E_Tbang]    := "E_Tbang"
  139.       symmap[E_Tconv]    := "E_Tconv"
  140.       symmap[E_Tcreate]  := "E_Tcreate"
  141.       symmap[E_Tdelete]  := "E_Tdelete"
  142.       symmap[E_Telem]    := "E_Telem"
  143.       symmap[E_Tick]     := "E_Tick"
  144.       symmap[E_Tinsert]  := "E_Tinsert"
  145.       symmap[E_Tkey]     := "E_Tkey"
  146.       symmap[E_Tmember]  := "E_Tmember"
  147.       symmap[E_Trand]    := "E_Trand"
  148.       symmap[E_Tref]     := "E_Tref"
  149.       symmap[E_Tsub]     := "E_Tsub"
  150.       symmap[E_Tval]     := "E_Tval"
  151.       symmap[E_Tvsubs]   := "E_Tvsubs"
  152.       symmap[E_Tvtbl]    := "E_Tvtbl"
  153.       symmap[E_Value]    := "E_Value"
  154.    
  155.       symmap := twt(symmap)
  156.       }
  157.  
  158.    return symmap
  159.  
  160. end
  161.