aenv.specs_0 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. a_env = cluster is create, % -> env
  2. set_input, % env, file ->
  3. get_input, % env -> file
  4. set_output, % file -> env
  5. get_output, % file -> env
  6. get_err, % env -> bool
  7. set_err, % env, bool ->
  8. get_lh_equate, % env -> bool
  9. set_lh_equate, % env, bool ->
  10. begin_cluster, % env ->
  11. end_cluster, % env ->
  12. use_owndata, % env ->
  13. begin_proc, % env ->
  14. end_proc, % env ->
  15. get_arg_count, % env -> int
  16. set_arg_count, % env, int ->
  17. set_proc_type, % env, wrd ->
  18. add_option, % env, int ->
  19. add_clink, % env, wrd ->
  20. add_plink, % env, wrd -> int
  21. add_link, % env, wrd -> int
  22. add_odlink, % env, wrd -> int
  23. add_vinit, % env, wrd -> int
  24. add_mlink, % env, wrd ->
  25. add_rlink, % env, int, aw -> wrd
  26. add_wrd, % env, wrd
  27. add_eblock, % env ->
  28. begin_loop, % env ->
  29. end_loop, % env ->
  30. get_loop_disp, % env -> wrd
  31. begin_if, % env ->
  32. begin_else, % env ->
  33. end_if, % env ->
  34. get_fi_disp, % env -> wrd
  35. get_else_disp, % env -> wrd
  36. begin_tagcase, % env ->
  37. end_tagcase, % env ->
  38. get_tags_exist, % env -> bool
  39. set_tags_exist, % env, bool ->
  40. begin_catch, % env ->
  41. begin_except, % env, wrd, aw ->
  42. end_catch, % env ->
  43. get_uncatch_disp, % env -> wrd
  44. define, % env, str, wrd ->
  45. defmac, % env, str, mtype ->
  46. label, % env, str -> wrd
  47. lookup, % env, str -> wrd
  48. dlookup, % env, str -> def
  49. err, % env, str ->
  50. undefined, % env, str ->
  51. get_char_tab, % env -> ai
  52. get_temp_ac, % env -> ac
  53. newline, % env ->
  54. dump; % env, chan ->
  55. rep = any;
  56. create = proc () returns (env);
  57. end create;
  58. get_input = proc (e: env) returns (file);
  59. end get_input;
  60. set_input = proc (e: env, f: file);
  61. end set_input;
  62. get_output = proc (e: env) returns (file);
  63. end get_output;
  64. set_output = proc (e: env, f: file);
  65. end set_output;
  66. get_err = proc (e: env) returns (bool);
  67. end get_err;
  68. set_err =proc (e: env, b: bool);
  69. end set_err;
  70. get_lh_equate = proc (e: env) returns (bool);
  71. end get_lh_equate;
  72. set_lh_equate = proc (e: env, b: bool);
  73. end set_lh_equate;
  74. begin_cluster = proc (e: env);
  75. end begin_cluster;
  76. end_cluster = proc (e: env);
  77. end end_cluster;
  78. use_owndata = proc (e: env);
  79. end use_owndata;
  80. begin_proc = proc (e: env);
  81. end begin_proc;
  82. end_proc = proc (ee: env);
  83. end end_proc;
  84. get_arg_count = proc (e: env) returns (int);
  85. end get_arg_count;
  86. set_arg_count = proc (e: env, cnt: int);
  87. end set_arg_count;
  88. set_proc_type = proc (e: env, w: wrd);
  89. end set_proc_type;
  90. add_option = proc (e: env, opt: int);
  91. end add_option;
  92. add_clink = proc (e: env, w: wrd) returns (int);
  93. end add_clink;
  94. add_plink = proc (e: env, w: wrd) returns (int);
  95. end add_plink;
  96. add_link = proc (e: env, w: wrd) returns (int);
  97. end add_link;
  98. add_odlink = proc (e: env, w: wrd) returns (int);
  99. end add_odlink;
  100. add_vinit = proc (e: env, w: wrd) returns (int);
  101. end add_vinit;
  102. add_mlink = proc (e: env, w: wrd);
  103. end add_mlink;
  104. add_rlink = proc (e: env, typ: int, vec: aw) returns (wrd);
  105. end add_rlink;
  106. add_wrd = proc (e: env, w: wrd);
  107. end add_wrd;
  108. add_eblock = proc (e: env);
  109. end add_eblock;
  110. begin_loop = proc (e: env);
  111. end begin_loop;
  112. end_loop = proc (e: env);
  113. end end_loop;
  114. get_loop_disp = proc (e: env) returns (wrd);
  115. end get_loop_disp;
  116. begin_if = proc (e: env);
  117. end begin_if;
  118. begin_else = proc (e: env);
  119. end begin_else;
  120. end_if = proc (e: env);
  121. end end_if;
  122. get_fi_disp = proc (e: env) returns (wrd);
  123. end get_fi_disp;
  124. get_else_disp = proc (e: env) returns (wrd);
  125. end get_else_disp;
  126. begin_tagcase = proc (e: env);
  127. end begin_tagcase;
  128. get_tags_exist = proc (e: env) returns (bool);
  129. end get_tags_exist;
  130. set_tags_exist = proc (e: env, b: bool);
  131. end set_tags_exist;
  132. end_tagcase = proc (e: env);
  133. end end_tagcase;
  134. begin_catch = proc (e: env);
  135. end begin_catch;
  136. begin_except = proc (e: env, var: wrd, names: aw);
  137. end begin_except;
  138. end_catch = proc (e: env);
  139. end end_catch;
  140. get_uncatch_disp = proc (e: env) returns (wrd);
  141. end get_uncatch_disp;
  142. define = proc (e: env, sym: str, val: wrd);
  143. end define;
  144. defmac = proc (e: env, sym: str, mac: mtype);
  145. end defmac;
  146. label = proc (e: env, sym: str) returns (wrd);
  147. end label;
  148. lookup = proc (e: env, sym: str) returns (wrd);
  149. end lookup;
  150. dlookup = proc (e: env, sym: str) returns (def);
  151. end dlookup;
  152. err = proc (e: env, why: str);
  153. end err;
  154. undefined = proc (e: env, sym: str);
  155. end undefined;
  156. get_char_tab = proc (e: env) returns (ai);
  157. end get_char_tab;
  158. get_temp_ac = proc (e: env) returns (ac);
  159. end get_temp_ac;
  160. newline = proc (e: env);
  161. end newline;
  162. new_sym = proc (s: str) returns (str);
  163. end new_sym;
  164. put_wrd = proc (e: rep, w: wrd);
  165. end put_wrd;
  166. dump = proc (e: env, c: chan);
  167. end dump;
  168. end a_env;