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 / evtmap.icn < prev    next >
Text File  |  2000-07-29  |  6KB  |  182 lines

  1. ############################################################################
  2. #
  3. #    File:     evtmap.icn
  4. #
  5. #    Subject:  Procedure to map event code names to values
  6. #
  7. #    Author:   Ralph E. Griswold
  8. #
  9. #    Date:     July 15, 1995
  10. #
  11. ############################################################################
  12. #
  13. #   This file is in the public domain.
  14. #
  15. ############################################################################
  16. #
  17. #  evtmap(s) returns the event-code value for the event string name s.  It
  18. #  fails is s is not the name of an event value.
  19. #
  20. ############################################################################
  21. #
  22. #  Includes: evdefs.icn, etdefs.icn
  23. #
  24. ############################################################################
  25.  
  26. $include "evdefs.icn"
  27. $include "etdefs.icn"
  28.  
  29. procedure evtmap(s)        #: map event code name to event value
  30.    static maptbl
  31.  
  32.    initial {
  33.       maptbl:= table()
  34.  
  35.       maptbl["E_Aconv"]        :=    "I"
  36.       maptbl["E_Alien"]        :=    "z"
  37.       maptbl["E_Assign"]    :=    "\347"
  38.       maptbl["E_Base"]        :=    "<"
  39.       maptbl["E_BlkDeAlc"]    :=    "-"
  40.       maptbl["E_Bsusp"]        :=    "b"
  41.       maptbl["E_Coact"]        :=    "A"
  42.       maptbl["E_Coexpr"]    :=    "x"
  43.       maptbl["E_Cofail"]    :=    "D"
  44.       maptbl["E_Collect"]    :=    "G"
  45.       maptbl["E_Comment"]    :=    "#"
  46.       maptbl["E_Coret"]        :=    "B"
  47.       maptbl["E_Cset"]        :=    "e"
  48.       maptbl["E_Ecall"]        :=    "c"
  49.       maptbl["E_Efail"]        :=    "f"
  50.       maptbl["E_EndCollect"]    :=    "\360"
  51.       maptbl["E_Erem"]        :=    "v"
  52.       maptbl["E_Eresum"]    :=    "u"
  53.       maptbl["E_Eret"]        :=    "r"
  54.       maptbl["E_Error"]        :=    "E"
  55.       maptbl["E_Esusp"]        :=    "a"
  56.       maptbl["E_Exit"]        :=    "X"
  57.       maptbl["E_External"]    :=    "j"
  58.       maptbl["E_Fcall"]        :=    ":"
  59.       maptbl["E_Fconv"]        :=    "J"
  60.       maptbl["E_Ffail"]        :=    "M"
  61.       maptbl["E_File"]        :=    "g"
  62.       maptbl["E_Free"]        :=    "Z"
  63.       maptbl["E_Frem"]        :=    "["
  64.       maptbl["E_Fresum"]    :=    "Y"
  65.       maptbl["E_Fret"]        :=    "P"
  66.       maptbl["E_Fsusp"]        :=    "W"
  67.       maptbl["E_Highlight"]    :=    "H"
  68.       maptbl["E_Intcall"]    :=    "\351"
  69.       maptbl["E_Integer"]    :=    "@"
  70.       maptbl["E_Intret"]    :=    "\352"
  71.       maptbl["E_Kywdint"]    :=    "^"
  72.       maptbl["E_Kywdpos"]    :=    "&"
  73.       maptbl["E_Kywdsubj"]    :=    "*"
  74.       maptbl["E_Lbang"]        :=    "\301"
  75.       maptbl["E_Lcreate"]    :=    "\302"
  76.       maptbl["E_Lelem"]        :=    "m"
  77.       maptbl["E_List"]        :=    "k"
  78.       maptbl["E_Loc"]        :=    "|"
  79.       maptbl["E_Lpop"]        :=    "\303"
  80.       maptbl["E_Lpull"]        :=    "\304"
  81.       maptbl["E_Lpush"]        :=    "\305"
  82.       maptbl["E_Lput"]        :=    "\306"
  83.       maptbl["E_Lrand"]        :=    "\307"
  84.       maptbl["E_Lref"]        :=    "\310"
  85.       maptbl["E_Lrgint"]    :=    "L"
  86.       maptbl["E_Lsub"]        :=    "\311"
  87.       maptbl["E_Lsusp"]        :=    "l"
  88.       maptbl["E_MXevent"]    :=    "\370"
  89.       maptbl["E_Nconv"]        :=    "N"
  90.       maptbl["E_Null"]        :=    "$"
  91.       maptbl["E_Ocall"]        :=    "\\"
  92.       maptbl["E_Ofail"]        :=    "]"
  93.       maptbl["E_Offset"]    :=    "+"
  94.       maptbl["E_Opcode"]    :=    "O"
  95.       maptbl["E_Orem"]        :=    "\177"
  96.       maptbl["E_Oresum"]    :=    "}"
  97.       maptbl["E_Oret"]        :=    "`"
  98.       maptbl["E_Osusp"]        :=    "{"
  99.       maptbl["E_Pause"]        :=    ";"
  100.       maptbl["E_Pcall"]        :=    "C"
  101.       maptbl["E_Pfail"]        :=    "F"
  102.       maptbl["E_Pid"]        :=    "."
  103.       maptbl["E_Prem"]        :=    "V"
  104.       maptbl["E_Presum"]    :=    "U"
  105.       maptbl["E_Pret"]        :=    "R"
  106.       maptbl["E_Proc"]        :=    "%"
  107.       maptbl["E_Psusp"]        :=    "S"
  108.       maptbl["E_Rbang"]        :=    "\312"
  109.       maptbl["E_Rcreate"]    :=    "\313"
  110.       maptbl["E_Real"]        :=    "d"
  111.       maptbl["E_Record"]    :=    "h"
  112.       maptbl["E_Refresh"]    :=    "y"
  113.       maptbl["E_Region"]    :=    "?"
  114.       maptbl["E_Rrand"]        :=    "\314"
  115.       maptbl["E_Rref"]        :=    "\315"
  116.       maptbl["E_Rsub"]        :=    "\316"
  117.       maptbl["E_Ssasgn"]    :=    "\354"
  118.       maptbl["E_Sbang"]        :=    "\317"
  119.       maptbl["E_Sconv"]        :=    "Q"
  120.       maptbl["E_Screate"]    :=    "\320"
  121.       maptbl["E_Sdelete"]    :=    "\321"
  122.       maptbl["E_Selem"]        :=    "t"
  123.       maptbl["E_Set"]        :=    "q"
  124.       maptbl["E_Sfail"]        :=    "\341"
  125.       maptbl["E_Sinsert"]    :=    "\322"
  126.       maptbl["E_Size"]        :=    ">"
  127.       maptbl["E_Slots"]        :=    "w"
  128.       maptbl["E_Smember"]    :=    "\323"
  129.       maptbl["E_Snew"]        :=    "\340"
  130.       maptbl["E_Spos"]        :=    "\346"
  131.       maptbl["E_Srand"]        :=    "\336"
  132.       maptbl["E_Srem"]        :=    "\344"
  133.       maptbl["E_Sresum"]    :=    "\343"
  134.       maptbl["E_Ssusp"]        :=    "\342"
  135.       maptbl["E_Stack"]        :=    "\353"
  136.       maptbl["E_StrDeAlc"]    :=    "~"
  137.       maptbl["E_String"]    :=    "s"
  138.       maptbl["E_Sval"]        :=    "\324"
  139.       maptbl["E_Sym"]        :=    "T"
  140.       maptbl["E_Table"]        :=    "n"
  141.       maptbl["E_Tbang"]        :=    "\325"
  142.       maptbl["E_Tconv"]        :=    "K"
  143.       maptbl["E_Tcreate"]    :=    "\326"
  144.       maptbl["E_Tdelete"]    :=    "\327"
  145.       maptbl["E_Telem"]        :=    "o"
  146.       maptbl["E_TenureBlock"]    :=    "\362"
  147.       maptbl["E_TenureString"]    :=     "\361"
  148.       maptbl["E_Tick"]        :=    "."
  149.       maptbl["E_Tinsert"]    :=    "\330"
  150.       maptbl["E_Tkey"]        :=    "\331"
  151.       maptbl["E_Tmember"]    :=    "\332"
  152.       maptbl["E_Trand"]        :=    "\337"
  153.       maptbl["E_Tref"]        :=    "\333"
  154.       maptbl["E_Tsub"]        :=    "\334"
  155.       maptbl["E_Tval"]        :=    "\335"
  156.       maptbl["E_Tvsubs"]    :=    "i"
  157.       maptbl["E_Tvtbl"]        :=    "p"
  158.       maptbl["E_Used"]        :=    "="
  159.       maptbl["E_Value"]        :=    "\350"
  160.  
  161.       maptbl["T_01"]        :=    "A"
  162.       maptbl["T_02"]        :=    "B"
  163.       maptbl["T_03"]        :=    "C"
  164.       maptbl["T_04"]        :=    "D"
  165.       maptbl["T_05"]        :=    "E"
  166.       maptbl["T_06"]        :=    "F"
  167.       maptbl["T_07"]        :=    "G"
  168.       maptbl["T_08"]        :=    "H"
  169.       maptbl["T_09"]        :=    "I"
  170.       maptbl["T_10"]        :=    "J"
  171.       maptbl["T_11"]        :=    "K"
  172.       maptbl["T_12"]        :=    "L"
  173.       maptbl["T_13"]        :=    "M"
  174.       maptbl["T_14"]        :=    "N"
  175.  
  176. $define T_Mask1    cset("ABCDEFGHIJKLM")
  177.       }
  178.  
  179.    return \maptbl[s]
  180.  
  181. end
  182.