/TypeCobol/Compiler/CupPreprocessor/CobolCompilerDirectivesParser.cs

https://github.com/TypeCobolTeam/TypeCobol · C# · 3140 lines · 2404 code · 434 blank · 302 comment · 83 complexity · 333d03a342141ea5f9b8a96d03c66926 MD5 · raw file

Large files are truncated click here to view the full file

  1. //----------------------------------------------------
  2. // The following code was generated by C# CUP v0.1
  3. //----------------------------------------------------
  4. namespace TypeCobol.Compiler.CupPreprocessor
  5. {
  6. using TypeCobol.Compiler.Directives;
  7. using TypeCobol.Compiler.Scanner;
  8. using TypeCobol.Compiler.CupCommon;
  9. using System.Collections.Generic;
  10. using System;
  11. using TUVienna.CS_CUP.Runtime;
  12. using CSCupRuntime;
  13. /** C# CUP v0.1 generated parser.
  14. */
  15. public class CobolCompilerDirectivesParser : TUVienna.CS_CUP.Runtime.lr_parser {
  16. /** Default constructor. */
  17. public CobolCompilerDirectivesParser():base() {;}
  18. /** Constructor which sets the default scanner. */
  19. public CobolCompilerDirectivesParser(TUVienna.CS_CUP.Runtime.Scanner s): base(s) {;}
  20. /** Production table. */
  21. protected static readonly short[][] _production_table =
  22. new short[234][] {
  23. new short[2]{0,2},
  24. new short[2]{28,1},
  25. new short[2]{4,1},
  26. new short[2]{4,1},
  27. new short[2]{4,1},
  28. new short[2]{5,1},
  29. new short[2]{5,1},
  30. new short[2]{5,1},
  31. new short[2]{5,1},
  32. new short[2]{22,1},
  33. new short[2]{24,1},
  34. new short[2]{24,1},
  35. new short[2]{49,1},
  36. new short[2]{123,1},
  37. new short[2]{124,1},
  38. new short[2]{105,1},
  39. new short[2]{105,1},
  40. new short[2]{125,1},
  41. new short[2]{125,3},
  42. new short[2]{129,1},
  43. new short[2]{172,1},
  44. new short[2]{172,1},
  45. new short[2]{172,1},
  46. new short[2]{172,1},
  47. new short[2]{172,1},
  48. new short[2]{172,1},
  49. new short[2]{172,1},
  50. new short[2]{172,1},
  51. new short[2]{172,1},
  52. new short[2]{172,1},
  53. new short[2]{172,1},
  54. new short[2]{172,1},
  55. new short[2]{172,1},
  56. new short[2]{172,1},
  57. new short[2]{172,1},
  58. new short[2]{172,1},
  59. new short[2]{172,1},
  60. new short[2]{172,1},
  61. new short[2]{172,1},
  62. new short[2]{172,1},
  63. new short[2]{172,1},
  64. new short[2]{172,1},
  65. new short[2]{172,1},
  66. new short[2]{172,1},
  67. new short[2]{172,1},
  68. new short[2]{172,1},
  69. new short[2]{172,1},
  70. new short[2]{172,1},
  71. new short[2]{172,1},
  72. new short[2]{172,1},
  73. new short[2]{172,1},
  74. new short[2]{172,1},
  75. new short[2]{172,1},
  76. new short[2]{172,1},
  77. new short[2]{172,1},
  78. new short[2]{172,1},
  79. new short[2]{172,1},
  80. new short[2]{172,1},
  81. new short[2]{172,1},
  82. new short[2]{172,1},
  83. new short[2]{172,1},
  84. new short[2]{172,1},
  85. new short[2]{172,1},
  86. new short[2]{172,1},
  87. new short[2]{172,1},
  88. new short[2]{172,1},
  89. new short[2]{172,1},
  90. new short[2]{172,1},
  91. new short[2]{172,1},
  92. new short[2]{172,1},
  93. new short[2]{172,1},
  94. new short[2]{172,1},
  95. new short[2]{172,1},
  96. new short[2]{172,1},
  97. new short[2]{172,1},
  98. new short[2]{172,1},
  99. new short[2]{172,1},
  100. new short[2]{172,1},
  101. new short[2]{172,1},
  102. new short[2]{172,1},
  103. new short[2]{172,1},
  104. new short[2]{172,1},
  105. new short[2]{172,1},
  106. new short[2]{172,1},
  107. new short[2]{172,1},
  108. new short[2]{172,1},
  109. new short[2]{172,1},
  110. new short[2]{172,1},
  111. new short[2]{172,1},
  112. new short[2]{172,1},
  113. new short[2]{172,1},
  114. new short[2]{172,1},
  115. new short[2]{172,1},
  116. new short[2]{172,1},
  117. new short[2]{172,1},
  118. new short[2]{172,1},
  119. new short[2]{172,1},
  120. new short[2]{172,1},
  121. new short[2]{172,1},
  122. new short[2]{172,1},
  123. new short[2]{172,1},
  124. new short[2]{172,1},
  125. new short[2]{172,1},
  126. new short[2]{172,1},
  127. new short[2]{172,1},
  128. new short[2]{172,1},
  129. new short[2]{172,1},
  130. new short[2]{172,1},
  131. new short[2]{172,1},
  132. new short[2]{172,1},
  133. new short[2]{172,1},
  134. new short[2]{172,1},
  135. new short[2]{172,1},
  136. new short[2]{172,1},
  137. new short[2]{172,1},
  138. new short[2]{172,1},
  139. new short[2]{172,1},
  140. new short[2]{172,1},
  141. new short[2]{172,1},
  142. new short[2]{132,1},
  143. new short[2]{133,1},
  144. new short[2]{133,1},
  145. new short[2]{133,1},
  146. new short[2]{133,1},
  147. new short[2]{133,1},
  148. new short[2]{133,1},
  149. new short[2]{133,1},
  150. new short[2]{133,1},
  151. new short[2]{133,1},
  152. new short[2]{133,1},
  153. new short[2]{133,1},
  154. new short[2]{133,1},
  155. new short[2]{133,1},
  156. new short[2]{133,1},
  157. new short[2]{133,1},
  158. new short[2]{175,0},
  159. new short[2]{176,0},
  160. new short[2]{134,4},
  161. new short[2]{135,2},
  162. new short[2]{135,2},
  163. new short[2]{136,0},
  164. new short[2]{136,1},
  165. new short[2]{138,1},
  166. new short[2]{138,3},
  167. new short[2]{140,0},
  168. new short[2]{140,1},
  169. new short[2]{140,2},
  170. new short[2]{139,0},
  171. new short[2]{139,1},
  172. new short[2]{139,2},
  173. new short[2]{137,1},
  174. new short[2]{177,0},
  175. new short[2]{137,5},
  176. new short[2]{141,1},
  177. new short[2]{141,2},
  178. new short[2]{178,0},
  179. new short[2]{142,2},
  180. new short[2]{179,0},
  181. new short[2]{142,2},
  182. new short[2]{143,0},
  183. new short[2]{143,1},
  184. new short[2]{180,0},
  185. new short[2]{144,4},
  186. new short[2]{181,0},
  187. new short[2]{182,0},
  188. new short[2]{145,5},
  189. new short[2]{146,2},
  190. new short[2]{146,3},
  191. new short[2]{147,0},
  192. new short[2]{183,0},
  193. new short[2]{147,3},
  194. new short[2]{174,1},
  195. new short[2]{174,1},
  196. new short[2]{148,3},
  197. new short[2]{148,4},
  198. new short[2]{149,1},
  199. new short[2]{149,1},
  200. new short[2]{184,0},
  201. new short[2]{150,4},
  202. new short[2]{185,0},
  203. new short[2]{152,3},
  204. new short[2]{186,0},
  205. new short[2]{153,2},
  206. new short[2]{187,0},
  207. new short[2]{153,3},
  208. new short[2]{188,0},
  209. new short[2]{154,2},
  210. new short[2]{189,0},
  211. new short[2]{190,0},
  212. new short[2]{155,6},
  213. new short[2]{156,1},
  214. new short[2]{157,0},
  215. new short[2]{157,1},
  216. new short[2]{158,1},
  217. new short[2]{158,1},
  218. new short[2]{173,1},
  219. new short[2]{173,1},
  220. new short[2]{191,0},
  221. new short[2]{192,0},
  222. new short[2]{159,8},
  223. new short[2]{193,0},
  224. new short[2]{194,0},
  225. new short[2]{160,4},
  226. new short[2]{161,1},
  227. new short[2]{195,0},
  228. new short[2]{162,2},
  229. new short[2]{196,0},
  230. new short[2]{162,2},
  231. new short[2]{197,0},
  232. new short[2]{163,4},
  233. new short[2]{198,0},
  234. new short[2]{164,2},
  235. new short[2]{199,0},
  236. new short[2]{165,4},
  237. new short[2]{200,0},
  238. new short[2]{201,0},
  239. new short[2]{165,5},
  240. new short[2]{166,3},
  241. new short[2]{166,4},
  242. new short[2]{202,0},
  243. new short[2]{167,3},
  244. new short[2]{203,0},
  245. new short[2]{204,0},
  246. new short[2]{168,5},
  247. new short[2]{205,0},
  248. new short[2]{169,2},
  249. new short[2]{206,0},
  250. new short[2]{169,2},
  251. new short[2]{207,0},
  252. new short[2]{169,2},
  253. new short[2]{170,1},
  254. new short[2]{208,0},
  255. new short[2]{209,0},
  256. new short[2]{171,4}
  257. };
  258. /** Access to production table. */
  259. public override short[][] production_table() {return _production_table;}
  260. /** Parse-action table. */
  261. protected static readonly short[][] _action_table =
  262. new short[173][] {
  263. new short[42]{45,-158,46,-156,47,-136,48,26,49,14,50,-180,51,-186,52,-188,54,-201,55,28,56,-205,57,-207,58,-211,59,4,60,-225,61,-227,62,-229,63,-232,107,10,108,6,-1,0},
  264. new short[4]{62,173,-1,0},
  265. new short[4]{63,165,-1,0},
  266. new short[6]{323,-220,385,-222,-1,0},
  267. new short[4]{0,-125,-1,0},
  268. new short[4]{42,-195,-1,0},
  269. new short[4]{0,-132,-1,0},
  270. new short[4]{42,-198,-1,0},
  271. new short[4]{47,147,-1,0},
  272. new short[4]{42,-194,-1,0},
  273. new short[4]{56,146,-1,0},
  274. new short[4]{57,145,-1,0},
  275. new short[4]{58,144,-1,0},
  276. new short[10]{27,-164,28,-164,29,-164,44,-164,-1,0},
  277. new short[4]{0,-123,-1,0},
  278. new short[4]{0,-124,-1,0},
  279. new short[4]{45,109,-1,0},
  280. new short[4]{50,103,-1,0},
  281. new short[4]{51,102,-1,0},
  282. new short[4]{52,95,-1,0},
  283. new short[4]{46,94,-1,0},
  284. new short[4]{54,90,-1,0},
  285. new short[4]{0,-128,-1,0},
  286. new short[4]{0,-135,-1,0},
  287. new short[4]{60,89,-1,0},
  288. new short[6]{0,-141,44,79,-1,0},
  289. new short[4]{0,-130,-1,0},
  290. new short[6]{0,-141,44,79,-1,0},
  291. new short[4]{0,-122,-1,0},
  292. new short[4]{0,-231,-1,0},
  293. new short[4]{0,-121,-1,0},
  294. new short[4]{0,-127,-1,0},
  295. new short[4]{0,75,-1,0},
  296. new short[6]{16,-178,349,-215,-1,0},
  297. new short[4]{0,-126,-1,0},
  298. new short[4]{429,53,-1,0},
  299. new short[4]{44,-162,-1,0},
  300. new short[4]{0,-133,-1,0},
  301. new short[4]{0,-134,-1,0},
  302. new short[4]{0,-129,-1,0},
  303. new short[4]{0,-131,-1,0},
  304. new short[4]{0,-120,-1,0},
  305. new short[4]{61,44,-1,0},
  306. new short[4]{0,-228,-1,0},
  307. new short[4]{44,49,-1,0},
  308. new short[8]{0,-154,11,-154,44,-154,-1,0},
  309. new short[8]{0,-20,11,-20,44,-20,-1,0},
  310. new short[8]{0,-160,11,52,44,49,-1,0},
  311. new short[8]{0,-2,11,-2,44,-2,-1,0},
  312. new short[4]{0,-163,-1,0},
  313. new short[8]{0,-155,11,-155,44,-155,-1,0},
  314. new short[4]{0,-161,-1,0},
  315. new short[4]{11,-209,-1,0},
  316. new short[4]{11,55,-1,0},
  317. new short[4]{0,-210,-1,0},
  318. new short[4]{236,73,-1,0},
  319. new short[4]{349,70,-1,0},
  320. new short[4]{16,65,-1,0},
  321. new short[6]{11,-213,16,-178,-1,0},
  322. new short[4]{236,63,-1,0},
  323. new short[4]{11,62,-1,0},
  324. new short[4]{0,-214,-1,0},
  325. new short[4]{16,-178,-1,0},
  326. new short[6]{11,-219,16,-219,-1,0},
  327. new short[6]{2,67,16,-148,-1,0},
  328. new short[6]{2,69,16,68,-1,0},
  329. new short[6]{2,-149,16,-149,-1,0},
  330. new short[16]{3,-179,4,-179,5,-179,11,-179,16,-179,89,-179,236,-179,-1,0},
  331. new short[6]{2,-150,16,-150,-1,0},
  332. new short[4]{11,-216,-1,0},
  333. new short[4]{11,72,-1,0},
  334. new short[4]{0,-217,-1,0},
  335. new short[4]{16,-178,-1,0},
  336. new short[6]{11,-218,16,-218,-1,0},
  337. new short[4]{0,-1,-1,0},
  338. new short[4]{0,-140,-1,0},
  339. new short[6]{0,-143,7,-143,-1,0},
  340. new short[6]{0,-142,7,86,-1,0},
  341. new short[8]{0,-151,7,-151,14,-152,-1,0},
  342. new short[4]{14,81,-1,0},
  343. new short[6]{2,83,15,-145,-1,0},
  344. new short[6]{2,85,15,84,-1,0},
  345. new short[6]{2,-146,15,-146,-1,0},
  346. new short[6]{0,-153,7,-153,-1,0},
  347. new short[6]{2,-147,15,-147,-1,0},
  348. new short[4]{44,79,-1,0},
  349. new short[6]{0,-144,7,-144,-1,0},
  350. new short[4]{0,-139,-1,0},
  351. new short[4]{0,-226,-1,0},
  352. new short[4]{34,-202,-1,0},
  353. new short[4]{34,93,-1,0},
  354. new short[4]{0,-203,-1,0},
  355. new short[4]{0,-204,-1,0},
  356. new short[4]{44,-157,-1,0},
  357. new short[4]{44,97,-1,0},
  358. new short[6]{11,-192,44,99,-1,0},
  359. new short[6]{11,-191,44,-191,-1,0},
  360. new short[4]{11,-189,-1,0},
  361. new short[4]{11,-193,-1,0},
  362. new short[4]{11,101,-1,0},
  363. new short[4]{0,-190,-1,0},
  364. new short[4]{0,-187,-1,0},
  365. new short[4]{34,-182,-1,0},
  366. new short[4]{34,108,-1,0},
  367. new short[6]{0,-181,34,-184,-1,0},
  368. new short[4]{34,107,-1,0},
  369. new short[6]{0,-185,34,-185,-1,0},
  370. new short[6]{0,-183,34,-183,-1,0},
  371. new short[4]{44,-159,-1,0},
  372. new short[10]{27,120,28,117,29,112,44,118,-1,0},
  373. new short[4]{11,-165,-1,0},
  374. new short[18]{0,-5,3,-5,11,-5,89,-5,309,-5,348,-5,389,-5,413,-5,-1,0},
  375. new short[18]{0,-13,3,-13,11,-13,89,-13,309,-13,348,-13,389,-13,413,-13,-1,0},
  376. new short[18]{0,-12,3,-12,11,-12,89,-12,309,-12,348,-12,389,-12,413,-12,-1,0},
  377. new short[18]{0,-14,3,-14,11,-14,89,-14,309,-14,348,-14,389,-14,413,-14,-1,0},
  378. new short[16]{3,-18,11,-18,89,-18,309,138,348,137,389,-18,413,-18,-1,0},
  379. new short[18]{0,-4,3,-4,11,-4,89,-4,309,-4,348,-4,389,-4,413,-4,-1,0},
  380. new short[18]{0,-11,3,-11,11,-11,89,-11,309,-11,348,-11,389,-11,413,-11,-1,0},
  381. new short[12]{3,-169,11,-169,89,-169,389,-170,413,123,-1,0},
  382. new short[18]{0,-3,3,-3,11,-3,89,-3,309,-3,348,-3,389,-3,413,-3,-1,0},
  383. new short[4]{389,125,-1,0},
  384. new short[8]{3,-167,11,-167,89,-167,-1,0},
  385. new short[10]{3,-169,11,-169,89,-169,389,-170,-1,0},
  386. new short[8]{3,-168,11,-168,89,-168,-1,0},
  387. new short[6]{4,126,16,-178,-1,0},
  388. new short[16]{3,-177,4,-177,5,-177,11,-177,16,-177,89,-177,236,-177,-1,0},
  389. new short[16]{3,-176,4,-176,5,-176,11,-176,16,-176,89,-176,236,-176,-1,0},
  390. new short[12]{3,-171,4,126,11,-171,16,-178,89,-171,-1,0},
  391. new short[6]{5,131,236,132,-1,0},
  392. new short[6]{4,126,16,-178,-1,0},
  393. new short[6]{4,-173,16,-173,-1,0},
  394. new short[6]{4,-172,16,-172,-1,0},
  395. new short[12]{3,-174,4,-174,11,-174,16,-174,89,-174,-1,0},
  396. new short[6]{5,131,236,132,-1,0},
  397. new short[6]{4,126,16,-178,-1,0},
  398. new short[12]{3,-175,4,-175,11,-175,16,-175,89,-175,-1,0},
  399. new short[10]{27,-17,28,-17,29,-17,44,-17,-1,0},
  400. new short[10]{27,-16,28,-16,29,-16,44,-16,-1,0},
  401. new short[10]{27,120,28,117,29,112,44,118,-1,0},
  402. new short[12]{3,-15,11,-15,89,-15,389,-15,413,-15,-1,0},
  403. new short[12]{3,-19,11,-19,89,-19,389,-19,413,-19,-1,0},
  404. new short[4]{11,143,-1,0},
  405. new short[4]{0,-166,-1,0},
  406. new short[6]{16,-212,349,-212,-1,0},
  407. new short[4]{429,-208,-1,0},
  408. new short[4]{429,-206,-1,0},
  409. new short[10]{27,-137,28,-137,29,-137,44,-137,-1,0},
  410. new short[10]{27,120,28,117,29,112,44,118,-1,0},
  411. new short[4]{0,-138,-1,0},
  412. new short[4]{42,151,-1,0},
  413. new short[4]{53,152,-1,0},
  414. new short[10]{27,120,28,117,29,112,44,118,-1,0},
  415. new short[6]{3,154,89,155,-1,0},
  416. new short[4]{11,-197,-1,0},
  417. new short[4]{11,-196,-1,0},
  418. new short[4]{11,-199,-1,0},
  419. new short[4]{11,158,-1,0},
  420. new short[4]{0,-200,-1,0},
  421. new short[4]{323,164,-1,0},
  422. new short[4]{385,161,-1,0},
  423. new short[4]{44,-223,-1,0},
  424. new short[4]{44,163,-1,0},
  425. new short[4]{0,-224,-1,0},
  426. new short[4]{0,-221,-1,0},
  427. new short[14]{27,-233,28,-233,29,-233,30,-233,31,-233,32,-233,-1,0},
  428. new short[14]{27,120,28,117,29,112,30,168,31,169,32,171,-1,0},
  429. new short[4]{0,-234,-1,0},
  430. new short[4]{0,-8,-1,0},
  431. new short[4]{0,-9,-1,0},
  432. new short[4]{0,-6,-1,0},
  433. new short[4]{0,-7,-1,0},
  434. new short[4]{0,-10,-1,0},
  435. new short[4]{0,-230,-1,0}
  436. };
  437. /** Access to parse-action table. */
  438. public override short[][] action_table() {return _action_table;}
  439. /** <code>reduce_goto</code> table. */
  440. protected static readonly short[][] _reduce_table =
  441. new short[173][] {
  442. new short[74]{132,32,133,41,134,30,135,28,142,36,144,14,145,15,152,4,154,34,155,31,158,7,159,22,160,39,162,35,163,26,164,33,165,40,167,6,168,37,169,29,170,38,171,23,175,8,178,20,179,16,185,17,188,18,189,19,193,21,195,10,196,11,198,12,205,24,206,42,207,1,208,2,-1,-1},
  443. new short[2]{-1,-1},
  444. new short[2]{-1,-1},
  445. new short[6]{202,158,203,159,-1,-1},
  446. new short[2]{-1,-1},
  447. new short[2]{-1,-1},
  448. new short[2]{-1,-1},
  449. new short[4]{191,149,-1,-1},
  450. new short[2]{-1,-1},
  451. new short[2]{-1,-1},
  452. new short[2]{-1,-1},
  453. new short[2]{-1,-1},
  454. new short[2]{-1,-1},
  455. new short[4]{181,109,-1,-1},
  456. new short[2]{-1,-1},
  457. new short[2]{-1,-1},
  458. new short[2]{-1,-1},
  459. new short[2]{-1,-1},
  460. new short[2]{-1,-1},
  461. new short[2]{-1,-1},
  462. new short[2]{-1,-1},
  463. new short[2]{-1,-1},
  464. new short[2]{-1,-1},
  465. new short[2]{-1,-1},
  466. new short[2]{-1,-1},
  467. new short[8]{136,87,137,76,138,77,-1,-1},
  468. new short[2]{-1,-1},
  469. new short[8]{136,75,137,76,138,77,-1,-1},
  470. new short[2]{-1,-1},
  471. new short[2]{-1,-1},
  472. new short[2]{-1,-1},
  473. new short[2]{-1,-1},
  474. new short[2]{-1,-1},
  475. new short[10]{150,55,166,58,184,57,200,56,-1,-1},
  476. new short[2]{-1,-1},
  477. new short[2]{-1,-1},
  478. new short[4]{180,44,-1,-1},
  479. new short[2]{-1,-1},
  480. new short[2]{-1,-1},
  481. new short[2]{-1,-1},
  482. new short[2]{-1,-1},
  483. new short[2]{-1,-1},
  484. new short[2]{-1,-1},
  485. new short[2]{-1,-1},
  486. new short[8]{28,46,129,45,141,47,-1,-1},
  487. new short[2]{-1,-1},
  488. new short[2]{-1,-1},
  489. new short[8]{28,46,129,50,143,49,-1,-1},
  490. new short[2]{-1,-1},
  491. new short[2]{-1,-1},
  492. new short[2]{-1,-1},
  493. new short[2]{-1,-1},
  494. new short[4]{197,53,-1,-1},
  495. new short[2]{-1,-1},
  496. new short[2]{-1,-1},
  497. new short[2]{-1,-1},
  498. new short[2]{-1,-1},
  499. new short[2]{-1,-1},
  500. new short[8]{150,59,184,57,199,60,-1,-1},
  501. new short[2]{-1,-1},
  502. new short[2]{-1,-1},
  503. new short[2]{-1,-1},
  504. new short[6]{150,63,184,57,-1,-1},
  505. new short[2]{-1,-1},
  506. new short[4]{139,65,-1,-1},
  507. new short[2]{-1,-1},
  508. new short[2]{-1,-1},
  509. new short[2]{-1,-1},
  510. new short[2]{-1,-1},
  511. new short[4]{201,70,-1,-1},
  512. new short[2]{-1,-1},
  513. new short[2]{-1,-1},
  514. new short[6]{150,73,184,57,-1,-1},
  515. new short[2]{-1,-1},
  516. new short[2]{-1,-1},
  517. new short[2]{-1,-1},
  518. new short[2]{-1,-1},
  519. new short[2]{-1,-1},
  520. new short[4]{177,79,-1,-1},
  521. new short[2]{-1,-1},
  522. new short[4]{140,81,-1,-1},
  523. new short[2]{-1,-1},
  524. new short[2]{-1,-1},
  525. new short[2]{-1,-1},
  526. new short[2]{-1,-1},
  527. new short[4]{137,86,-1,-1},
  528. new short[2]{-1,-1},
  529. new short[2]{-1,-1},
  530. new short[2]{-1,-1},
  531. new short[4]{194,90,-1,-1},
  532. new short[4]{161,91,-1,-1},
  533. new short[2]{-1,-1},
  534. new short[2]{-1,-1},
  535. new short[2]{-1,-1},
  536. new short[4]{156,95,-1,-1},
  537. new short[4]{157,97,-1,-1},
  538. new short[2]{-1,-1},
  539. new short[4]{190,99,-1,-1},
  540. new short[2]{-1,-1},
  541. new short[2]{-1,-1},
  542. new short[2]{-1,-1},
  543. new short[2]{-1,-1},
  544. new short[6]{153,104,186,103,-1,-1},
  545. new short[2]{-1,-1},
  546. new short[4]{187,105,-1,-1},
  547. new short[2]{-1,-1},
  548. new short[2]{-1,-1},
  549. new short[2]{-1,-1},
  550. new short[2]{-1,-1},
  551. new short[14]{4,113,24,112,49,114,123,115,125,118,146,110,-1,-1},
  552. new short[4]{182,141,-1,-1},
  553. new short[2]{-1,-1},
  554. new short[2]{-1,-1},
  555. new short[2]{-1,-1},
  556. new short[2]{-1,-1},
  557. new short[4]{105,138,-1,-1},
  558. new short[2]{-1,-1},
  559. new short[2]{-1,-1},
  560. new short[6]{147,121,183,120,-1,-1},
  561. new short[2]{-1,-1},
  562. new short[2]{-1,-1},
  563. new short[2]{-1,-1},
  564. new short[6]{147,123,183,120,-1,-1},
  565. new short[2]{-1,-1},
  566. new short[10]{148,127,149,128,150,126,184,57,-1,-1},
  567. new short[2]{-1,-1},
  568. new short[2]{-1,-1},
  569. new short[8]{149,133,150,126,184,57,-1,-1},
  570. new short[4]{174,129,-1,-1},
  571. new short[8]{149,132,150,126,184,57,-1,-1},
  572. new short[2]{-1,-1},
  573. new short[2]{-1,-1},
  574. new short[2]{-1,-1},
  575. new short[4]{174,134,-1,-1},
  576. new short[8]{149,135,150,126,184,57,-1,-1},
  577. new short[2]{-1,-1},
  578. new short[2]{-1,-1},
  579. new short[2]{-1,-1},
  580. new short[10]{4,113,24,112,49,139,124,140,-1,-1},
  581. new short[2]{-1,-1},
  582. new short[2]{-1,-1},
  583. new short[2]{-1,-1},
  584. new short[2]{-1,-1},
  585. new short[2]{-1,-1},
  586. new short[2]{-1,-1},
  587. new short[2]{-1,-1},
  588. new short[4]{176,147,-1,-1},
  589. new short[10]{4,113,24,112,49,114,123,148,-1,-1},
  590. new short[2]{-1,-1},
  591. new short[2]{-1,-1},
  592. new short[2]{-1,-1},
  593. new short[14]{4,113,24,112,49,114,123,115,125,118,146,152,-1,-1},
  594. new short[4]{173,155,-1,-1},
  595. new short[2]{-1,-1},
  596. new short[2]{-1,-1},
  597. new short[4]{192,156,-1,-1},
  598. new short[2]{-1,-1},
  599. new short[2]{-1,-1},
  600. new short[2]{-1,-1},
  601. new short[2]{-1,-1},
  602. new short[4]{204,161,-1,-1},
  603. new short[2]{-1,-1},
  604. new short[2]{-1,-1},
  605. new short[2]{-1,-1},
  606. new short[4]{209,165,-1,-1},
  607. new short[8]{4,169,5,171,22,166,-1,-1},
  608. new short[2]{-1,-1},
  609. new short[2]{-1,-1},
  610. new short[2]{-1,-1},
  611. new short[2]{-1,-1},
  612. new short[2]{-1,-1},
  613. new short[2]{-1,-1},
  614. new short[2]{-1,-1}
  615. };
  616. /** Access to <code>reduce_goto</code> table. */
  617. public override short[][] reduce_table() {return _reduce_table;}
  618. /** Instance of action encapsulation class. */
  619. protected CUP_CobolCompilerDirectivesParser_actions action_obj;
  620. /** Action encapsulation object initializer. */
  621. protected override void init_actions()
  622. {
  623. action_obj = new CUP_CobolCompilerDirectivesParser_actions(this);
  624. }
  625. /** Invoke a user supplied parse action. */
  626. public override TUVienna.CS_CUP.Runtime.Symbol do_action(
  627. int act_num,
  628. TUVienna.CS_CUP.Runtime.lr_parser parser,
  629. StackList<Symbol> CUP_parser_stack,
  630. int top)
  631. {
  632. /* call code in generated class */
  633. return action_obj.CUP_CobolCompilerDirectivesParser_do_action(act_num, parser, stack, top);
  634. }
  635. /** Indicates start state. */
  636. public override int start_state() {return 0;}
  637. /** Indicates start production. */
  638. public override int start_production() {return 0;}
  639. /** <code>EOF</code> Symbol index. */
  640. public override int EOF_sym() {return 0;}
  641. /** <code>error</code> Symbol index. */
  642. public override int error_sym() {return 1;}
  643. // The Compiler Directive Builder instance.
  644. public ICompilerDirectiveBuilder Builder
  645. {
  646. get;
  647. set;
  648. }
  649. // The Error Reporter instance
  650. public ICupParserErrorReporter ErrorReporter
  651. {
  652. get;
  653. set;
  654. }
  655. // Test wheither or not this parser is a trial parser
  656. public bool IsTrial
  657. {
  658. get;
  659. set;
  660. }
  661. // get the current state of the parser.
  662. public int getParserState()
  663. {
  664. return stack.Peek().parse_state;
  665. }
  666. //get the parser stack.
  667. public StackList<Symbol> getParserStack()
  668. {
  669. return stack;
  670. }
  671. public override void report_fatal_error(
  672. string message,
  673. object info)
  674. {
  675. if(ErrorReporter != null) {
  676. if (ErrorReporter.ReportFatalError(this, getParserStack(), message, info))
  677. {
  678. return;
  679. }
  680. }
  681. base.report_fatal_error(message, info);
  682. }
  683. public override void report_error(string message, object info)
  684. {
  685. if(ErrorReporter != null) {
  686. if (ErrorReporter.ReportError(this, getParserStack(), message, info))
  687. {
  688. return;
  689. }
  690. }
  691. base.report_error(message, info);
  692. }
  693. public override void syntax_error(Symbol cur_token)
  694. {
  695. if(ErrorReporter != null) {
  696. if (ErrorReporter.SyntaxError(this, getParserStack(), cur_token))
  697. {
  698. return;
  699. }
  700. }
  701. base.syntax_error(cur_token);
  702. }
  703. public override void unrecovered_syntax_error(Symbol cur_token)
  704. {
  705. if(ErrorReporter != null) {
  706. if (ErrorReporter.UnrecoveredSyntaxError(this, getParserStack(), cur_token))
  707. {
  708. return;
  709. }
  710. }
  711. base.unrecovered_syntax_error(cur_token);
  712. }
  713. public void ReportScannerDirectiveError()
  714. {
  715. ErrorReporter.SyntaxError(this, getParserStack(), ((CobolWordsTokenizer)getScanner()).LastStopSymbol);
  716. }
  717. }
  718. /** Cup generated class to encapsulate user supplied action code.*/
  719. public class CUP_CobolCompilerDirectivesParser_actions {
  720. private CobolCompilerDirectivesParser my_parser;
  721. /** Constructor */
  722. public CUP_CobolCompilerDirectivesParser_actions(CobolCompilerDirectivesParser t_parser) {
  723. this.my_parser = t_parser;
  724. }
  725. /** Method with the actual generated action code. */
  726. public TUVienna.CS_CUP.Runtime.Symbol CUP_CobolCompilerDirectivesParser_do_action(
  727. int CUP_CobolCompilerDirectivesParser_act_num,
  728. TUVienna.CS_CUP.Runtime.lr_parser CUP_CobolCompilerDirectivesParser_parser,
  729. StackList<Symbol> xstack1,
  730. int CUP_CobolCompilerDirectivesParser_top)
  731. {
  732. /* Symbol object for return from actions */
  733. StackList<Symbol> CUP_CobolCompilerDirectivesParser_stack = xstack1;
  734. TUVienna.CS_CUP.Runtime.Symbol CUP_CobolCompilerDirectivesParser_result;
  735. /* select the action based on the action number */
  736. switch (CUP_CobolCompilerDirectivesParser_act_num)
  737. {
  738. /*. . . . . . . . . . . . . . . . . . . .*/
  739. case 233: // titleCompilerStatement ::= NT$33 TITLE NT$34 alphanumericValue2
  740. {
  741. object RESULT = null;
  742. // propagate RESULT from NT$33
  743. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-3)).value != null )
  744. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-3)).value;
  745. // propagate RESULT from NT$34
  746. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  747. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  748. TypeCobol.Compiler.Scanner.Token t = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-2)).value;
  749. TypeCobol.Compiler.Scanner.Token a = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  750. my_parser.Builder.EnterTitleCompilerStatement(t, a);
  751. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(171/*titleCompilerStatement*/, RESULT);
  752. }
  753. return CUP_CobolCompilerDirectivesParser_result;
  754. /*. . . . . . . . . . . . . . . . . . . .*/
  755. case 232: // NT$34 ::=
  756. {
  757. object RESULT = null;
  758. TypeCobol.Compiler.Scanner.Token t = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  759. ((CobolWordsTokenizer)my_parser.getScanner()).ConsumeNextTokenOnTheSameLineAndStop(TokenType.PeriodSeparator);
  760. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(209/*NT$34*/, RESULT);
  761. }
  762. return CUP_CobolCompilerDirectivesParser_result;
  763. /*. . . . . . . . . . . . . . . . . . . .*/
  764. case 231: // NT$33 ::=
  765. {
  766. object RESULT = null;
  767. my_parser.Builder.StartTitleCompilerStatement();
  768. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(208/*NT$33*/, RESULT);
  769. }
  770. return CUP_CobolCompilerDirectivesParser_result;
  771. /*. . . . . . . . . . . . . . . . . . . .*/
  772. case 230: // skipCompilerStatement ::= skipTokens
  773. {
  774. object RESULT = null;
  775. Token t = (Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  776. my_parser.Builder.EnterSkipCompilerStatement(t);
  777. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(170/*skipCompilerStatement*/, RESULT);
  778. }
  779. return CUP_CobolCompilerDirectivesParser_result;
  780. /*. . . . . . . . . . . . . . . . . . . .*/
  781. case 229: // skipTokens ::= NT$32 SKIP3
  782. {
  783. Token RESULT = null;
  784. // propagate RESULT from NT$32
  785. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  786. RESULT = (Token) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  787. TypeCobol.Compiler.Scanner.Token t = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  788. RESULT = t;
  789. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(169/*skipTokens*/, RESULT);
  790. }
  791. return CUP_CobolCompilerDirectivesParser_result;
  792. /*. . . . . . . . . . . . . . . . . . . .*/
  793. case 228: // NT$32 ::=
  794. {
  795. object RESULT = null;
  796. my_parser.Builder.StartSkipCompilerStatement(CompilerDirectiveType.SKIP3);
  797. ((CobolWordsTokenizer)my_parser.getScanner()).ConsumeNextTokenOnTheSameLineAndStop(TokenType.PeriodSeparator);
  798. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(207/*NT$32*/, RESULT);
  799. }
  800. return CUP_CobolCompilerDirectivesParser_result;
  801. /*. . . . . . . . . . . . . . . . . . . .*/
  802. case 227: // skipTokens ::= NT$31 SKIP2
  803. {
  804. Token RESULT = null;
  805. // propagate RESULT from NT$31
  806. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  807. RESULT = (Token) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  808. TypeCobol.Compiler.Scanner.Token t = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  809. RESULT = t;
  810. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(169/*skipTokens*/, RESULT);
  811. }
  812. return CUP_CobolCompilerDirectivesParser_result;
  813. /*. . . . . . . . . . . . . . . . . . . .*/
  814. case 226: // NT$31 ::=
  815. {
  816. object RESULT = null;
  817. my_parser.Builder.StartSkipCompilerStatement(CompilerDirectiveType.SKIP2);
  818. ((CobolWordsTokenizer)my_parser.getScanner()).ConsumeNextTokenOnTheSameLineAndStop(TokenType.PeriodSeparator);
  819. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(206/*NT$31*/, RESULT);
  820. }
  821. return CUP_CobolCompilerDirectivesParser_result;
  822. /*. . . . . . . . . . . . . . . . . . . .*/
  823. case 225: // skipTokens ::= NT$30 SKIP1
  824. {
  825. Token RESULT = null;
  826. // propagate RESULT from NT$30
  827. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  828. RESULT = (Token) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  829. TypeCobol.Compiler.Scanner.Token t = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  830. RESULT = t;
  831. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(169/*skipTokens*/, RESULT);
  832. }
  833. return CUP_CobolCompilerDirectivesParser_result;
  834. /*. . . . . . . . . . . . . . . . . . . .*/
  835. case 224: // NT$30 ::=
  836. {
  837. object RESULT = null;
  838. my_parser.Builder.StartSkipCompilerStatement(CompilerDirectiveType.SKIP1);
  839. ((CobolWordsTokenizer)my_parser.getScanner()).ConsumeNextTokenOnTheSameLineAndStop(TokenType.PeriodSeparator);
  840. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(205/*NT$30*/, RESULT);
  841. }
  842. return CUP_CobolCompilerDirectivesParser_result;
  843. /*. . . . . . . . . . . . . . . . . . . .*/
  844. case 223: // serviceReloadCompilerStatement ::= SERVICE_CD NT$28 RELOAD NT$29 UserDefinedWord
  845. {
  846. object RESULT = null;
  847. // propagate RESULT from NT$28
  848. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-3)).value != null )
  849. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-3)).value;
  850. // propagate RESULT from NT$29
  851. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  852. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  853. TypeCobol.Compiler.Scanner.Token s = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-4)).value;
  854. TypeCobol.Compiler.Scanner.Token l = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-2)).value;
  855. TypeCobol.Compiler.Scanner.Token w = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  856. my_parser.Builder.EnterServiceReloadCompilerStatement(s, l, w);
  857. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(168/*serviceReloadCompilerStatement*/, RESULT);
  858. }
  859. return CUP_CobolCompilerDirectivesParser_result;
  860. /*. . . . . . . . . . . . . . . . . . . .*/
  861. case 222: // NT$29 ::=
  862. {
  863. object RESULT = null;
  864. TypeCobol.Compiler.Scanner.Token s = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-2)).value;
  865. TypeCobol.Compiler.Scanner.Token l = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  866. ((CobolWordsTokenizer)my_parser.getScanner()).EnterStopScanningMode();
  867. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(204/*NT$29*/, RESULT);
  868. }
  869. return CUP_CobolCompilerDirectivesParser_result;
  870. /*. . . . . . . . . . . . . . . . . . . .*/
  871. case 221: // NT$28 ::=
  872. {
  873. object RESULT = null;
  874. TypeCobol.Compiler.Scanner.Token s = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  875. my_parser.Builder.StartServiceReloadCompilerStatement();
  876. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(203/*NT$28*/, RESULT);
  877. }
  878. return CUP_CobolCompilerDirectivesParser_result;
  879. /*. . . . . . . . . . . . . . . . . . . .*/
  880. case 220: // serviceLabelCompilerStatement ::= SERVICE_CD NT$27 LABEL
  881. {
  882. object RESULT = null;
  883. // propagate RESULT from NT$27
  884. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  885. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  886. TypeCobol.Compiler.Scanner.Token s = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-2)).value;
  887. TypeCobol.Compiler.Scanner.Token l = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  888. my_parser.Builder.EnterServiceLabelCompilerStatement(s, l);
  889. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(167/*serviceLabelCompilerStatement*/, RESULT);
  890. }
  891. return CUP_CobolCompilerDirectivesParser_result;
  892. /*. . . . . . . . . . . . . . . . . . . .*/
  893. case 219: // NT$27 ::=
  894. {
  895. object RESULT = null;
  896. TypeCobol.Compiler.Scanner.Token s = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  897. my_parser.Builder.StartServiceLabelCompilerStatement();
  898. ((CobolWordsTokenizer)my_parser.getScanner()).EnterStopScanningMode();
  899. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(202/*NT$27*/, RESULT);
  900. }
  901. return CUP_CobolCompilerDirectivesParser_result;
  902. /*. . . . . . . . . . . . . . . . . . . .*/
  903. case 218: // pseudoTextReplaces ::= pseudoTextReplaces pseudoText BY pseudoText
  904. {
  905. PairTokenListList RESULT = null;
  906. PairTokenListList replaces = (PairTokenListList)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-3)).value;
  907. TokenList from = (TokenList)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-2)).value;
  908. TokenList by = (TokenList)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  909. replaces.Add(new Tuple<List<Token>, List<Token>>(from,by)); RESULT = replaces;
  910. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(166/*pseudoTextReplaces*/, RESULT);
  911. }
  912. return CUP_CobolCompilerDirectivesParser_result;
  913. /*. . . . . . . . . . . . . . . . . . . .*/
  914. case 217: // pseudoTextReplaces ::= pseudoText BY pseudoText
  915. {
  916. PairTokenListList RESULT = null;
  917. TokenList from = (TokenList)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-2)).value;
  918. TokenList by = (TokenList)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  919. RESULT = new PairTokenListList() {new Tuple<List<Token>, List<Token>>(from,by)};
  920. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(166/*pseudoTextReplaces*/, RESULT);
  921. }
  922. return CUP_CobolCompilerDirectivesParser_result;
  923. /*. . . . . . . . . . . . . . . . . . . .*/
  924. case 216: // replaceCompilerStatement ::= replaceToken NT$25 OFF NT$26 PeriodSeparator
  925. {
  926. object RESULT = null;
  927. // propagate RESULT from NT$25
  928. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-3)).value != null )
  929. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-3)).value;
  930. // propagate RESULT from NT$26
  931. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  932. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  933. Token r = (Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-4)).value;
  934. TypeCobol.Compiler.Scanner.Token o = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-2)).value;
  935. my_parser.Builder.EnterReplaceCompilerStatement(r, o, null);
  936. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(165/*replaceCompilerStatement*/, RESULT);
  937. }
  938. return CUP_CobolCompilerDirectivesParser_result;
  939. /*. . . . . . . . . . . . . . . . . . . .*/
  940. case 215: // NT$26 ::=
  941. {
  942. object RESULT = null;
  943. Token r = (Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-2)).value;
  944. TypeCobol.Compiler.Scanner.Token o = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  945. ((CobolWordsTokenizer)my_parser.getScanner()).EnterStopScanningMode();
  946. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(201/*NT$26*/, RESULT);
  947. }
  948. return CUP_CobolCompilerDirectivesParser_result;
  949. /*. . . . . . . . . . . . . . . . . . . .*/
  950. case 214: // NT$25 ::=
  951. {
  952. object RESULT = null;
  953. Token r = (Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  954. my_parser.Builder.StartReplaceCompilerStatement(CompilerDirectiveType.REPLACE_OFF);
  955. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(200/*NT$25*/, RESULT);
  956. }
  957. return CUP_CobolCompilerDirectivesParser_result;
  958. /*. . . . . . . . . . . . . . . . . . . .*/
  959. case 213: // replaceCompilerStatement ::= replaceToken pseudoTextReplaces NT$24 PeriodSeparator
  960. {
  961. object RESULT = null;
  962. // propagate RESULT from NT$24
  963. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  964. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  965. Token r = (Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-3)).value;
  966. PairTokenListList replaces = (PairTokenListList)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-2)).value;
  967. my_parser.Builder.EnterReplaceCompilerStatement(r, null, replaces);
  968. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(165/*replaceCompilerStatement*/, RESULT);
  969. }
  970. return CUP_CobolCompilerDirectivesParser_result;
  971. /*. . . . . . . . . . . . . . . . . . . .*/
  972. case 212: // NT$24 ::=
  973. {
  974. object RESULT = null;
  975. Token r = (Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  976. PairTokenListList replaces = (PairTokenListList)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  977. ((CobolWordsTokenizer)my_parser.getScanner()).EnterStopScanningMode();
  978. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(199/*NT$24*/, RESULT);
  979. }
  980. return CUP_CobolCompilerDirectivesParser_result;
  981. /*. . . . . . . . . . . . . . . . . . . .*/
  982. case 211: // replaceToken ::= NT$23 REPLACE
  983. {
  984. Token RESULT = null;
  985. // propagate RESULT from NT$23
  986. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  987. RESULT = (Token) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  988. TypeCobol.Compiler.Scanner.Token r = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  989. RESULT = r;
  990. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(164/*replaceToken*/, RESULT);
  991. }
  992. return CUP_CobolCompilerDirectivesParser_result;
  993. /*. . . . . . . . . . . . . . . . . . . .*/
  994. case 210: // NT$23 ::=
  995. {
  996. object RESULT = null;
  997. my_parser.Builder.StartReplaceCompilerStatement(CompilerDirectiveType.REPLACE);
  998. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(198/*NT$23*/, RESULT);
  999. }
  1000. return CUP_CobolCompilerDirectivesParser_result;
  1001. /*. . . . . . . . . . . . . . . . . . . .*/
  1002. case 209: // readyOrResetTraceCompilerStatement ::= readyOrReset TRACE NT$22 PeriodSeparator
  1003. {
  1004. object RESULT = null;
  1005. // propagate RESULT from NT$22
  1006. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  1007. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  1008. Token rt = (Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-3)).value;
  1009. my_parser.Builder.EnterReadyOrResetTraceCompilerStatement(rt);
  1010. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(163/*readyOrResetTraceCompilerStatement*/, RESULT);
  1011. }
  1012. return CUP_CobolCompilerDirectivesParser_result;
  1013. /*. . . . . . . . . . . . . . . . . . . .*/
  1014. case 208: // NT$22 ::=
  1015. {
  1016. object RESULT = null;
  1017. Token rt = (Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  1018. ((CobolWordsTokenizer)my_parser.getScanner()).EnterStopScanningMode();
  1019. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(197/*NT$22*/, RESULT);
  1020. }
  1021. return CUP_CobolCompilerDirectivesParser_result;
  1022. /*. . . . . . . . . . . . . . . . . . . .*/
  1023. case 207: // readyOrReset ::= NT$21 RESET
  1024. {
  1025. Token RESULT = null;
  1026. // propagate RESULT from NT$21
  1027. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  1028. RESULT = (Token) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  1029. TypeCobol.Compiler.Scanner.Token t = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  1030. RESULT = t;
  1031. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(162/*readyOrReset*/, RESULT);
  1032. }
  1033. return CUP_CobolCompilerDirectivesParser_result;
  1034. /*. . . . . . . . . . . . . . . . . . . .*/
  1035. case 206: // NT$21 ::=
  1036. {
  1037. object RESULT = null;
  1038. my_parser.Builder.StartReadyOrResetTraceCompilerStatement(CompilerDirectiveType.RESET_TRACE);
  1039. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(196/*NT$21*/, RESULT);
  1040. }
  1041. return CUP_CobolCompilerDirectivesParser_result;
  1042. /*. . . . . . . . . . . . . . . . . . . .*/
  1043. case 205: // readyOrReset ::= NT$20 READY
  1044. {
  1045. Token RESULT = null;
  1046. // propagate RESULT from NT$20
  1047. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  1048. RESULT = (Token) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  1049. TypeCobol.Compiler.Scanner.Token t = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  1050. RESULT = t;
  1051. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(162/*readyOrReset*/, RESULT);
  1052. }
  1053. return CUP_CobolCompilerDirectivesParser_result;
  1054. /*. . . . . . . . . . . . . . . . . . . .*/
  1055. case 204: // NT$20 ::=
  1056. {
  1057. object RESULT = null;
  1058. my_parser.Builder.StartReadyOrResetTraceCompilerStatement(CompilerDirectiveType.READY_TRACE);
  1059. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(195/*NT$20*/, RESULT);
  1060. }
  1061. return CUP_CobolCompilerDirectivesParser_result;
  1062. /*. . . . . . . . . . . . . . . . . . . .*/
  1063. case 203: // sequenceNumber ::= IntegerLiteral
  1064. {
  1065. Token RESULT = null;
  1066. TypeCobol.Compiler.Scanner.Token il = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  1067. RESULT = il;
  1068. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(161/*sequenceNumber*/, RESULT);
  1069. }
  1070. return CUP_CobolCompilerDirectivesParser_result;
  1071. /*. . . . . . . . . . . . . . . . . . . .*/
  1072. case 202: // insertCompilerStatement ::= NT$18 INSERT NT$19 sequenceNumber
  1073. {
  1074. object RESULT = null;
  1075. // propagate RESULT from NT$18
  1076. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-3)).value != null )
  1077. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-3)).value;
  1078. // propagate RESULT from NT$19
  1079. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  1080. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  1081. TypeCobol.Compiler.Scanner.Token tins = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-2)).value;
  1082. Token sn = (Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  1083. my_parser.Builder.EnterInsertCompilerStatement(tins,sn);
  1084. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(160/*insertCompilerStatement*/, RESULT);
  1085. }
  1086. return CUP_CobolCompilerDirectivesParser_result;
  1087. /*. . . . . . . . . . . . . . . . . . . .*/
  1088. case 201: // NT$19 ::=
  1089. {
  1090. object RESULT = null;
  1091. TypeCobol.Compiler.Scanner.Token tins = (TypeCobol.Compiler.Scanner.Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top)).value;
  1092. ((CobolWordsTokenizer)my_parser.getScanner()).EnterStopScanningMode();
  1093. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(194/*NT$19*/, RESULT);
  1094. }
  1095. return CUP_CobolCompilerDirectivesParser_result;
  1096. /*. . . . . . . . . . . . . . . . . . . .*/
  1097. case 200: // NT$18 ::=
  1098. {
  1099. object RESULT = null;
  1100. my_parser.Builder.StartInsertCompilerStatement();
  1101. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(193/*NT$18*/, RESULT);
  1102. }
  1103. return CUP_CobolCompilerDirectivesParser_result;
  1104. /*. . . . . . . . . . . . . . . . . . . .*/
  1105. case 199: // execSqlIncludeStatement ::= execToken NT$16 ExecTranslatorName EXEC_SQL copyCompilerStatementBody end_exec NT$17 PeriodSeparator
  1106. {
  1107. object RESULT = null;
  1108. // propagate RESULT from NT$16
  1109. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-6)).value != null )
  1110. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-6)).value;
  1111. // propagate RESULT from NT$17
  1112. if ( (CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value != null )
  1113. RESULT = (object) ( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-1)).value;
  1114. Token t = (Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-7)).value;
  1115. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(159/*execSqlIncludeStatement*/, RESULT);
  1116. }
  1117. return CUP_CobolCompilerDirectivesParser_result;
  1118. /*. . . . . . . . . . . . . . . . . . . .*/
  1119. case 198: // NT$17 ::=
  1120. {
  1121. object RESULT = null;
  1122. Token t = (Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolCompilerDirectivesParser_top-5)).value;
  1123. ((CobolWordsTokenizer)my_parser.getScanner()).EnterStopScanningMode();
  1124. CUP_CobolCompilerDirectivesParser_result = new TUVienna.CS_CUP.Runtime.Symbol(192/*NT$17*/, RESULT);
  1125. }
  1126. return CUP_CobolCompilerDirectivesParser_result;
  1127. /*. . . . . . . . . . . . . . . . . . . .*/
  1128. case 197: // NT$16 ::=
  1129. {
  1130. object RESULT = null;
  1131. Token t = (Token)( CUP_CobolCompilerDirectivesParser_stack.ElementAtFromBottom(CUP_CobolComp