depager 0.2.2 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. data/ChangeLog +4 -0
  2. data/README.ja +27 -28
  3. data/examples/c89/c89.dr +34 -34
  4. data/examples/c89/c89.tab.rb +3074 -3074
  5. data/examples/extension/paction.dr +4 -4
  6. data/examples/extension/pactiontest.dr +1 -1
  7. data/examples/pl0d/pl0ds.dr +27 -27
  8. data/examples/pl0d/pl0ds.tab.rb +626 -643
  9. data/examples/sample_calc/calc.action.dr +6 -6
  10. data/examples/sample_calc/calc.action.tab.rb +90 -90
  11. data/examples/sample_calc/calc.ast.action.dr +7 -7
  12. data/examples/sample_calc/calc.ast.action.tab.rb +121 -127
  13. data/examples/sample_calc/calc.ast.dr +6 -6
  14. data/examples/sample_calc/calc.ast.tab.rb +102 -109
  15. data/examples/sample_calc/calc.astdf.dr +6 -6
  16. data/examples/sample_calc/calc.astdf.tab.rb +102 -109
  17. data/examples/sample_calc/calc.atree.dr +6 -6
  18. data/examples/sample_calc/calc.atree.tab.rb +90 -90
  19. data/examples/sample_calc/calc.cst.dr +5 -5
  20. data/examples/sample_calc/calc.cst.tab.rb +106 -106
  21. data/examples/sample_calc/calc.dr +1 -1
  22. data/examples/sample_calc/calc.lex.dr +4 -4
  23. data/examples/sample_calc/calc.lex.tab.rb +73 -73
  24. data/examples/sample_calc/calc.nvaction.dr +6 -6
  25. data/examples/sample_calc/calc.nvaction.tab.rb +90 -90
  26. data/examples/sample_calc/calc.tab.rb +71 -71
  27. data/examples/sample_calc/calc_prec.nvaction.dr +6 -6
  28. data/examples/sample_calc/calc_prec.nvaction.tab.rb +46 -46
  29. data/examples/slex_test/divreg.slex.dr +7 -7
  30. data/examples/slex_test/divreg.slex.tab.rb +20 -20
  31. data/examples/slex_test/ljoin.slex.dr +7 -7
  32. data/examples/slex_test/ljoin.slex.tab.rb +15 -15
  33. data/lib/depager.rb +45 -83
  34. data/lib/depager/grammar.rb +3 -7
  35. data/lib/depager/lr.rb +123 -1
  36. data/lib/depager/parser.rb +29 -48
  37. data/lib/depager/{template/ast.erbs → ruby/plugins/_ast_tmpl.rb} +11 -7
  38. data/lib/depager/{action.rb → ruby/plugins/action.rb} +7 -11
  39. data/lib/depager/{ast.dr → ruby/plugins/ast.dr} +24 -25
  40. data/lib/depager/{ast.rb → ruby/plugins/ast.rb} +241 -243
  41. data/lib/depager/{astdf.rb → ruby/plugins/astdf.rb} +1 -2
  42. data/lib/depager/{atree.dr → ruby/plugins/atree.dr} +5 -5
  43. data/lib/depager/{atree.rb → ruby/plugins/atree.rb} +39 -39
  44. data/lib/depager/{cst.dr → ruby/plugins/cst.dr} +17 -21
  45. data/lib/depager/{cst.rb → ruby/plugins/cst.rb} +62 -68
  46. data/lib/depager/{lex.dr → ruby/plugins/lex.dr} +3 -4
  47. data/lib/depager/{lex.rb → ruby/plugins/lex.rb} +29 -31
  48. data/lib/depager/{nvaction.rb → ruby/plugins/nvaction.rb} +1 -3
  49. data/lib/depager/{slex.dr → ruby/plugins/slex.dr} +16 -17
  50. data/lib/depager/{slex.rb → ruby/plugins/slex.rb} +115 -117
  51. data/lib/depager/{srp.rb → ruby/plugins/srp.rb} +4 -4
  52. data/lib/depager/{template → ruby/templates}/extension_lalr_master.erb +6 -6
  53. data/lib/depager/{template → ruby/templates}/extension_lalr_slave.erb +0 -0
  54. data/lib/depager/{template → ruby/templates}/simple.erb +0 -0
  55. data/lib/depager/{template → ruby/templates}/single_lalr_parser.erb +0 -0
  56. data/lib/depager/utils.rb +30 -69
  57. data/lib/depager/version.rb +1 -1
  58. metadata +59 -56
  59. data/examples/Rakefile +0 -36
  60. data/lib/depager/Rakefile +0 -34
  61. data/lib/depager/lr_put_table.rb +0 -116
  62. data/lib/depager/parse_action.rb +0 -24
@@ -1,8 +1,8 @@
1
1
  %defext PseudoActionExtension
2
- %extend Lexer ('depager/lex.rb')
3
- %extend Action ('depager/action.rb')
4
- %decorate @Action ('depager/action.rb')
5
- #%decorate ShiftReducePrinter ('depager/srp.rb')
2
+ %extend Lexer ('plugins/lex.rb')
3
+ %extend Action ('plugins/action.rb')
4
+ %decorate @Action
5
+ #%decorate ShiftReducePrinter ('plugins/srp.rb')
6
6
  %hook postrhs
7
7
  %%
8
8
  %LEX{
@@ -11,4 +11,4 @@
11
11
  #end-rule
12
12
  %%
13
13
  p = PseudoActionTest.new()
14
- #p.yyparse(STDIN)
14
+ #p.parse(STDIN)
@@ -1,35 +1,35 @@
1
1
  %class PL0d
2
- %extend Lexer ('depager/lex.rb')
3
- %extend ASTBuilder ('depager/ast.rb')
2
+ %extend Lexer ('plugins/lex.rb')
3
+ %extend ASTBuilder ('plugins/ast.rb')
4
4
  %decorate @ASTBuilder
5
- #%decorate ShiftReducePrinter ('depager/srp.rb')
5
+ #%decorate ShiftReducePrinter ('plugins/srp.rb')
6
6
  %%
7
7
  %LEX{
8
8
  /\s+/ { }
9
- ':=' { yield _Token(:COLOEQ, $&) }
10
- '<>' { yield _Token(:NOTEQ, $&) }
11
- '<=' { yield _Token(:LE, $&) }
12
- '>=' { yield _Token(:GE, $&) }
13
- '=' { yield _Token(:EQ, $&) }
14
- '<' { yield _Token(:LT, $&) }
15
- '>' { yield _Token(:GT, $&) }
16
- 'const' { yield _Token(:CONST, $&) }
17
- 'var' { yield _Token(:VAR, $&) }
18
- 'function'{ yield _Token(:FUNCTION, $&) }
19
- 'begin' { yield _Token(:BEGINN, $&) }
20
- 'end' { yield _Token(:END, $&) }
21
- 'if' { yield _Token(:IF, $&) }
22
- 'then' { yield _Token(:THEN, $&) }
23
- 'while' { yield _Token(:WHILE, $&) }
24
- 'do' { yield _Token(:DO, $&) }
25
- 'return' { yield _Token(:RETURN, $&) }
26
- 'writeln' { yield _Token(:WRITELN, $&) }
27
- 'write' { yield _Token(:WRITE, $&) }
28
- 'odd' { yield _Token(:ODD, $&) }
9
+ ':=' { yield token(:COLOEQ, $&) }
10
+ '<>' { yield token(:NOTEQ, $&) }
11
+ '<=' { yield token(:LE, $&) }
12
+ '>=' { yield token(:GE, $&) }
13
+ '=' { yield token(:EQ, $&) }
14
+ '<' { yield token(:LT, $&) }
15
+ '>' { yield token(:GT, $&) }
16
+ 'const' { yield token(:CONST, $&) }
17
+ 'var' { yield token(:VAR, $&) }
18
+ 'function'{ yield token(:FUNCTION, $&) }
19
+ 'begin' { yield token(:BEGINN, $&) }
20
+ 'end' { yield token(:END, $&) }
21
+ 'if' { yield token(:IF, $&) }
22
+ 'then' { yield token(:THEN, $&) }
23
+ 'while' { yield token(:WHILE, $&) }
24
+ 'do' { yield token(:DO, $&) }
25
+ 'return' { yield token(:RETURN, $&) }
26
+ 'writeln' { yield token(:WRITELN, $&) }
27
+ 'write' { yield token(:WRITE, $&) }
28
+ 'odd' { yield token(:ODD, $&) }
29
29
  /[a-zA-Z][a-zA-Z0-9_]*/
30
- { yield _Token(:IDENT, $&) }
31
- /[0-9]+/ { yield _Token(:NUMBER, $&.to_i) }
32
- /./ { yield _Token($&, $&) }
30
+ { yield token(:IDENT, $&) }
31
+ /[0-9]+/ { yield token(:NUMBER, $&.to_i) }
32
+ /./ { yield token($&, $&) }
33
33
  %}
34
34
 
35
35
  %AST{
@@ -328,7 +328,7 @@
328
328
  %%
329
329
  require 'pp'
330
330
  psr = createDecoratedPL0d
331
- t, = psr.yyparse(STDIN)
331
+ t, = psr.parse(STDIN)
332
332
  # pp t
333
333
  v = Visitor.new
334
334
  t.accept(v)
@@ -138,96 +138,96 @@ class PL0d < Depager::LALR::Basis
138
138
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
139
139
  [ ACC, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
140
140
  [ nil, nil, 4, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
141
- [ nil, nil, nil, 14, nil, 15, 16, 6, nil, nil, nil, nil, nil, nil, 7, nil, 8, nil, 9, nil, 10, 11, 12, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
141
+ [ nil, nil, nil, 8, nil, 12, 16, 7, nil, nil, nil, nil, nil, nil, 9, nil, 13, nil, 6, nil, 10, 11, 14, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
142
142
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
143
143
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
144
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
145
- [ nil, nil, nil, nil, nil, nil, nil, 6, nil, nil, nil, nil, nil, nil, 7, nil, 8, nil, 9, nil, 10, 11, 12, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
146
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 20, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
147
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 20, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
148
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
149
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
144
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
145
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
146
+ [ nil, nil, nil, nil, nil, nil, nil, 27, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
147
+ [ nil, nil, nil, nil, nil, nil, nil, 7, nil, nil, nil, nil, nil, nil, 9, nil, 13, nil, 6, nil, 10, 11, 14, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
148
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
149
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
150
+ [ nil, nil, nil, nil, nil, nil, nil, 33, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
151
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 18, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
150
152
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
151
153
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
152
- [ nil, nil, nil, nil, nil, nil, nil, 33, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
153
- [ nil, nil, nil, nil, nil, nil, nil, 35, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
154
154
  [ nil, nil, nil, nil, nil, nil, nil, 36, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
155
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
156
155
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
157
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
158
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
159
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 42, 43, 44, 45, 46, 47, 48, nil, nil, ],
160
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 49, 50, ],
161
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
156
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
157
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 38, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
158
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 39, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
159
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
160
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
161
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 42, 43, ],
162
162
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
163
- [ nil, nil, nil, nil, nil, nil, nil, nil, 52, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
163
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 50, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 45, 47, 48, 49, 51, 44, 46, nil, nil, ],
164
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
165
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 53, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
166
+ [ nil, nil, nil, nil, 54, nil, nil, nil, nil, nil, 55, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
164
167
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
165
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
166
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 54, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
167
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
168
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
169
- [ nil, nil, nil, nil, 55, nil, nil, nil, nil, nil, 56, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
170
168
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
171
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 57, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
172
- [ nil, nil, nil, nil, 58, nil, nil, nil, nil, nil, 59, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
169
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
170
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
173
171
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
172
+ [ nil, nil, nil, nil, 57, nil, nil, nil, nil, nil, 58, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
173
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 59, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
174
174
  [ nil, nil, nil, nil, nil, nil, nil, nil, 60, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
175
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
176
- [ nil, nil, nil, nil, 62, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 61, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
177
- [ nil, nil, nil, nil, nil, nil, nil, 6, nil, nil, nil, nil, nil, nil, 7, nil, 8, nil, 9, nil, 10, 11, 12, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
178
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
179
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
180
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
181
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
182
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
183
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
184
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
185
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
186
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
187
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
188
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
189
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 49, 50, ],
190
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, 74, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
191
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, 77, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
192
- [ nil, nil, nil, nil, nil, nil, nil, 6, nil, nil, nil, nil, nil, nil, 7, nil, 8, nil, 9, nil, 10, 11, 12, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
193
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
194
- [ nil, nil, nil, nil, nil, nil, nil, 33, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
195
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 80, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
175
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
176
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, 61, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
177
+ [ nil, nil, nil, nil, nil, nil, nil, 7, nil, nil, nil, nil, nil, nil, 9, nil, 13, nil, 6, nil, 10, 11, 14, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
178
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, 65, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
179
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 42, 43, ],
180
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
181
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
182
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
183
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
184
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
185
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
186
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
187
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
188
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
189
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
190
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
191
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 76, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
196
192
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
197
- [ nil, nil, nil, nil, nil, nil, nil, 81, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
198
- [ nil, nil, nil, nil, nil, nil, nil, 35, nil, 82, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
193
+ [ nil, nil, nil, nil, nil, nil, nil, 27, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
194
+ [ nil, nil, nil, nil, 78, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 79, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
199
195
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
200
- [ nil, nil, nil, nil, nil, nil, nil, 6, nil, nil, nil, nil, nil, nil, 7, nil, 8, nil, 9, nil, 10, 11, 12, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
196
+ [ nil, nil, nil, nil, nil, nil, nil, 80, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
197
+ [ nil, nil, nil, nil, nil, nil, nil, 7, nil, nil, nil, nil, nil, nil, 9, nil, 13, nil, 6, nil, 10, 11, 14, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
198
+ [ nil, nil, nil, nil, nil, nil, nil, 33, nil, 83, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
201
199
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
202
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
203
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
204
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
205
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
206
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
207
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
208
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 49, 50, ],
209
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 49, 50, ],
200
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, 84, 85, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
201
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
210
202
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
211
203
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
212
204
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
213
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, 85, 86, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
214
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
215
205
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
206
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 42, 43, ],
207
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
208
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 42, 43, ],
209
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
210
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
211
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
212
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
213
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
216
214
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
217
215
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
216
+ [ nil, nil, nil, nil, nil, nil, nil, 7, nil, nil, nil, nil, nil, nil, 9, nil, 13, nil, 6, nil, 10, 11, 14, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
218
217
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
219
218
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
220
219
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
221
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, 88, 59, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
220
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, 87, 58, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
222
221
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
223
222
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
224
- [ nil, nil, nil, nil, nil, nil, nil, 25, 27, nil, nil, nil, 26, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, nil, ],
225
- [ nil, nil, nil, nil, 90, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
223
+ [ nil, nil, nil, nil, nil, nil, nil, 19, 21, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, nil, nil, ],
226
224
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
227
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 47, 48, nil, nil, ],
228
225
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
226
+ [ nil, nil, nil, nil, 91, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
227
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 44, 46, nil, nil, ],
229
228
  [ nil, nil, nil, nil, 92, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
230
229
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
230
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
231
231
  ]
232
232
  ### Default Reduce Table
233
233
  defred_table = [
@@ -236,43 +236,43 @@ class PL0d < Depager::LALR::Basis
236
236
  nil,
237
237
  -14,
238
238
  -1,
239
- -2,
239
+ -4,
240
240
  nil,
241
- -14,
242
241
  nil,
243
242
  nil,
243
+ -14,
244
244
  nil,
245
245
  nil,
246
- -21,
247
- -4,
248
246
  nil,
249
247
  nil,
248
+ -21,
249
+ -2,
250
250
  nil,
251
+ -39,
251
252
  nil,
252
- -22,
253
+ -38,
253
254
  nil,
254
255
  nil,
255
256
  nil,
256
257
  -33,
257
- nil,
258
258
  -37,
259
- -38,
260
- -39,
261
259
  nil,
262
260
  nil,
263
- -19,
264
- -20,
261
+ nil,
265
262
  nil,
266
263
  -9,
264
+ -22,
265
+ -19,
266
+ -20,
267
+ -12,
267
268
  nil,
268
269
  nil,
269
- -12,
270
270
  nil,
271
- -15,
271
+ -24,
272
272
  nil,
273
273
  -14,
274
- -24,
275
274
  nil,
275
+ -34,
276
276
  nil,
277
277
  nil,
278
278
  nil,
@@ -282,47 +282,47 @@ class PL0d < Depager::LALR::Basis
282
282
  nil,
283
283
  nil,
284
284
  nil,
285
- -34,
286
285
  nil,
286
+ -15,
287
287
  nil,
288
- -14,
289
288
  -5,
290
289
  nil,
291
290
  nil,
292
291
  -6,
293
292
  nil,
294
- nil,
295
- -16,
296
293
  -14,
297
- -17,
298
- -25,
294
+ nil,
295
+ -40,
296
+ nil,
297
+ -43,
298
+ -18,
299
+ -42,
300
+ -35,
301
+ -36,
302
+ -31,
299
303
  -26,
304
+ -32,
300
305
  -27,
301
306
  -28,
302
307
  -29,
308
+ -25,
303
309
  -30,
304
- -31,
305
- -32,
306
- -35,
307
- -36,
308
- -40,
309
- nil,
310
- -43,
311
- -42,
312
- -18,
313
- -10,
314
310
  -11,
311
+ -10,
312
+ -14,
313
+ -16,
315
314
  -13,
316
- -3,
315
+ -17,
317
316
  nil,
318
- -23,
317
+ -3,
319
318
  -41,
320
319
  nil,
321
- nil,
320
+ -23,
322
321
  -3,
322
+ nil,
323
323
  -44,
324
- -7,
325
324
  nil,
325
+ -7,
326
326
  -8,
327
327
  ]
328
328
  defred_after_shift_table = [
@@ -331,20 +331,20 @@ class PL0d < Depager::LALR::Basis
331
331
  nil,
332
332
  nil,
333
333
  -1,
334
- -2,
334
+ -4,
335
335
  nil,
336
336
  nil,
337
337
  nil,
338
338
  nil,
339
339
  nil,
340
340
  nil,
341
- -21,
342
- -4,
343
341
  nil,
344
342
  nil,
343
+ -21,
344
+ -2,
345
345
  nil,
346
+ -39,
346
347
  nil,
347
- -22,
348
348
  nil,
349
349
  nil,
350
350
  nil,
@@ -352,13 +352,11 @@ class PL0d < Depager::LALR::Basis
352
352
  nil,
353
353
  -37,
354
354
  nil,
355
- -39,
356
- nil,
357
- nil,
358
355
  nil,
359
356
  nil,
360
357
  nil,
361
358
  -9,
359
+ -22,
362
360
  nil,
363
361
  nil,
364
362
  -12,
@@ -381,43 +379,45 @@ class PL0d < Depager::LALR::Basis
381
379
  nil,
382
380
  nil,
383
381
  nil,
382
+ nil,
384
383
  -5,
385
384
  nil,
386
385
  nil,
387
386
  -6,
388
387
  nil,
389
388
  nil,
390
- -16,
391
389
  nil,
392
- -17,
390
+ -40,
393
391
  nil,
394
392
  nil,
393
+ -18,
394
+ -42,
395
+ -35,
396
+ -36,
395
397
  nil,
396
398
  nil,
397
399
  nil,
398
400
  nil,
399
401
  nil,
400
402
  nil,
401
- -35,
402
- -36,
403
- -40,
404
403
  nil,
405
404
  nil,
406
- -42,
407
- -18,
408
- -10,
409
405
  -11,
406
+ -10,
407
+ nil,
408
+ -16,
410
409
  -13,
410
+ -17,
411
+ nil,
411
412
  -3,
413
+ -41,
412
414
  nil,
413
415
  -23,
414
- -41,
416
+ -3,
415
417
  nil,
416
418
  nil,
417
- -3,
418
419
  nil,
419
420
  -7,
420
- nil,
421
421
  -8,
422
422
  ]
423
423
  ### Nonterm to Int
@@ -459,34 +459,34 @@ class PL0d < Depager::LALR::Basis
459
459
  [ 1, 2, 3, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
460
460
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
461
461
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
462
- [ nil, nil, nil, 5, 13, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
462
+ [ nil, nil, nil, 15, 5, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
463
463
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
464
464
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
465
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 25, nil, 20, 23, 24, nil, ],
465
466
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
466
- [ nil, nil, nil, 18, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
467
- [ nil, nil, nil, nil, nil, nil, nil, nil, 21, nil, 19, 22, 24, nil, ],
468
- [ nil, nil, nil, nil, nil, nil, nil, nil, 21, nil, 28, 22, 24, nil, ],
469
- [ nil, nil, nil, nil, nil, nil, nil, nil, 29, nil, nil, 22, 24, nil, ],
470
- [ nil, nil, nil, nil, nil, nil, nil, nil, 30, nil, nil, 22, 24, nil, ],
467
+ [ nil, nil, nil, nil, nil, 28, nil, 29, nil, nil, nil, nil, nil, nil, ],
468
+ [ nil, nil, nil, 30, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
469
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 31, nil, nil, 23, 24, nil, ],
470
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 32, nil, nil, 23, 24, nil, ],
471
+ [ nil, nil, nil, nil, nil, nil, 34, nil, nil, nil, nil, nil, nil, nil, ],
472
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 25, nil, 35, 23, 24, nil, ],
471
473
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
472
474
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
473
- [ nil, nil, nil, nil, nil, 31, nil, 32, nil, nil, nil, nil, nil, nil, ],
474
- [ nil, nil, nil, nil, nil, nil, 34, nil, nil, nil, nil, nil, nil, nil, ],
475
475
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
476
- [ nil, nil, nil, nil, nil, nil, nil, nil, 37, nil, nil, 22, 24, nil, ],
477
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, 38, nil, nil, nil, nil, ],
478
476
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
479
- [ nil, nil, nil, nil, nil, nil, nil, nil, 40, nil, nil, 22, 24, nil, ],
477
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 37, nil, nil, 23, 24, nil, ],
480
478
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
481
479
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
482
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 51, 24, nil, ],
480
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 40, nil, nil, 23, 24, nil, ],
481
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 41, 24, nil, ],
483
482
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
484
483
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
485
484
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
486
- [ nil, nil, nil, nil, nil, nil, nil, nil, 53, nil, nil, 22, 24, nil, ],
485
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 52, nil, nil, 23, 24, nil, ],
487
486
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
488
487
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
489
488
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
489
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, 56, nil, nil, nil, nil, ],
490
490
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
491
491
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
492
492
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
@@ -494,31 +494,30 @@ class PL0d < Depager::LALR::Basis
494
494
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
495
495
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
496
496
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
497
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 63, nil, nil, 23, 24, 62, ],
498
+ [ nil, nil, nil, 64, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
497
499
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
498
- [ nil, nil, nil, 63, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
499
500
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
500
- [ nil, nil, nil, nil, nil, nil, nil, nil, 64, nil, nil, 22, 24, nil, ],
501
- [ nil, nil, nil, nil, nil, nil, nil, nil, 65, nil, nil, 22, 24, nil, ],
502
- [ nil, nil, nil, nil, nil, nil, nil, nil, 66, nil, nil, 22, 24, nil, ],
503
- [ nil, nil, nil, nil, nil, nil, nil, nil, 67, nil, nil, 22, 24, nil, ],
504
- [ nil, nil, nil, nil, nil, nil, nil, nil, 68, nil, nil, 22, 24, nil, ],
505
- [ nil, nil, nil, nil, nil, nil, nil, nil, 69, nil, nil, 22, 24, nil, ],
501
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 66, nil, ],
502
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 67, nil, ],
503
+ [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 68, 24, nil, ],
504
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 69, nil, nil, 23, 24, nil, ],
506
505
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 70, 24, nil, ],
507
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 71, 24, nil, ],
508
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 72, nil, ],
509
- [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 73, nil, ],
506
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 71, nil, nil, 23, 24, nil, ],
507
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 72, nil, nil, 23, 24, nil, ],
508
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 73, nil, nil, 23, 24, nil, ],
509
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 74, nil, nil, 23, 24, nil, ],
510
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 75, nil, nil, 23, 24, nil, ],
510
511
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
511
- [ nil, nil, nil, nil, nil, nil, nil, nil, 76, nil, nil, 22, 24, 75, ],
512
512
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
513
- [ nil, nil, nil, 78, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
514
513
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
515
- [ nil, nil, nil, nil, nil, nil, nil, 79, nil, nil, nil, nil, nil, nil, ],
514
+ [ nil, nil, nil, nil, nil, nil, nil, 77, nil, nil, nil, nil, nil, nil, ],
516
515
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
517
516
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
518
517
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
519
- [ nil, nil, nil, nil, nil, nil, 83, nil, nil, nil, nil, nil, nil, nil, ],
518
+ [ nil, nil, nil, 81, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
519
+ [ nil, nil, nil, nil, nil, nil, 82, nil, nil, nil, nil, nil, nil, nil, ],
520
520
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
521
- [ nil, nil, nil, 84, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
522
521
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
523
522
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
524
523
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
@@ -535,16 +534,17 @@ class PL0d < Depager::LALR::Basis
535
534
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
536
535
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
537
536
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
537
+ [ nil, nil, nil, 86, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
538
538
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
539
539
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
540
540
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
541
- [ nil, 87, 3, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
542
541
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
542
+ [ nil, 88, 3, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
543
543
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
544
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 89, nil, nil, 23, 24, nil, ],
544
545
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
545
- [ nil, nil, nil, nil, nil, nil, nil, nil, 89, nil, nil, 22, 24, nil, ],
546
+ [ nil, 90, 3, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
546
547
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
547
- [ nil, 91, 3, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
548
548
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
549
549
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
550
550
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
@@ -593,16 +593,16 @@ I003 =
593
593
  ( 2) block : opt_decl_list _ statement
594
594
  ( 4) opt_decl_list : opt_decl_list _ decl
595
595
 
596
- CONST shift, and goto to state 14
597
- VAR shift, and goto to state 15
596
+ CONST shift, and goto to state 8
597
+ VAR shift, and goto to state 12
598
598
  FUNCTION shift, and goto to state 16
599
- IDENT shift, and goto to state 6
600
- BEGINN shift, and goto to state 7
601
- IF shift, and goto to state 8
602
- WHILE shift, and goto to state 9
599
+ IDENT shift, and goto to state 7
600
+ BEGINN shift, and goto to state 9
601
+ IF shift, and goto to state 13
602
+ WHILE shift, and goto to state 6
603
603
  RETURN shift, and goto to state 10
604
604
  WRITE shift, and goto to state 11
605
- WRITELN shift, and goto to state 12
605
+ WRITELN shift, and goto to state 14
606
606
 
607
607
  $default reduce using rule 14 (statement)
608
608
 
@@ -619,61 +619,57 @@ I004 =
619
619
 
620
620
  <<'----------',
621
621
  I005 =
622
- ( 2) block : opt_decl_list statement _
622
+ ( 4) opt_decl_list : opt_decl_list decl _
623
623
 
624
624
 
625
- $default reduce using rule 2 (block) [after shift]
625
+ $default reduce using rule 4 (opt_decl_list) [after shift]
626
626
 
627
627
  ----------
628
628
 
629
629
  <<'----------',
630
630
  I006 =
631
- ( 15) statement : IDENT _ COLOEQ expression
631
+ ( 18) statement : WHILE _ condition DO statement
632
632
 
633
- COLOEQ shift, and goto to state 17
633
+ IDENT shift, and goto to state 19
634
+ '(' shift, and goto to state 21
635
+ NUMBER shift, and goto to state 17
636
+ ODD shift, and goto to state 18
637
+ '-' shift, and goto to state 22
634
638
 
635
639
 
636
640
  ----------
637
641
 
638
642
  <<'----------',
639
643
  I007 =
640
- ( 16) statement : BEGINN _ statement opt_state_list END
644
+ ( 15) statement : IDENT _ COLOEQ expression
641
645
 
642
- IDENT shift, and goto to state 6
643
- BEGINN shift, and goto to state 7
644
- IF shift, and goto to state 8
645
- WHILE shift, and goto to state 9
646
- RETURN shift, and goto to state 10
647
- WRITE shift, and goto to state 11
648
- WRITELN shift, and goto to state 12
646
+ COLOEQ shift, and goto to state 26
649
647
 
650
- $default reduce using rule 14 (statement)
651
648
 
652
649
  ----------
653
650
 
654
651
  <<'----------',
655
652
  I008 =
656
- ( 17) statement : IF _ condition THEN statement
653
+ ( 5) decl : CONST _ const_init_list ';'
657
654
 
658
- IDENT shift, and goto to state 25
659
- '(' shift, and goto to state 27
660
- NUMBER shift, and goto to state 26
661
- ODD shift, and goto to state 20
662
- '-' shift, and goto to state 23
655
+ IDENT shift, and goto to state 27
663
656
 
664
657
 
665
658
  ----------
666
659
 
667
660
  <<'----------',
668
661
  I009 =
669
- ( 18) statement : WHILE _ condition DO statement
662
+ ( 16) statement : BEGINN _ statement opt_state_list END
670
663
 
671
- IDENT shift, and goto to state 25
672
- '(' shift, and goto to state 27
673
- NUMBER shift, and goto to state 26
674
- ODD shift, and goto to state 20
675
- '-' shift, and goto to state 23
664
+ IDENT shift, and goto to state 7
665
+ BEGINN shift, and goto to state 9
666
+ IF shift, and goto to state 13
667
+ WHILE shift, and goto to state 6
668
+ RETURN shift, and goto to state 10
669
+ WRITE shift, and goto to state 11
670
+ WRITELN shift, and goto to state 14
676
671
 
672
+ $default reduce using rule 14 (statement)
677
673
 
678
674
  ----------
679
675
 
@@ -681,10 +677,10 @@ I009 =
681
677
  I010 =
682
678
  ( 19) statement : RETURN _ expression
683
679
 
684
- IDENT shift, and goto to state 25
685
- '(' shift, and goto to state 27
686
- NUMBER shift, and goto to state 26
687
- '-' shift, and goto to state 23
680
+ IDENT shift, and goto to state 19
681
+ '(' shift, and goto to state 21
682
+ NUMBER shift, and goto to state 17
683
+ '-' shift, and goto to state 22
688
684
 
689
685
 
690
686
  ----------
@@ -693,47 +689,51 @@ I010 =
693
689
  I011 =
694
690
  ( 20) statement : WRITE _ expression
695
691
 
696
- IDENT shift, and goto to state 25
697
- '(' shift, and goto to state 27
698
- NUMBER shift, and goto to state 26
699
- '-' shift, and goto to state 23
692
+ IDENT shift, and goto to state 19
693
+ '(' shift, and goto to state 21
694
+ NUMBER shift, and goto to state 17
695
+ '-' shift, and goto to state 22
700
696
 
701
697
 
702
698
  ----------
703
699
 
704
700
  <<'----------',
705
701
  I012 =
706
- ( 21) statement : WRITELN _
702
+ ( 6) decl : VAR _ ident_list ';'
707
703
 
704
+ IDENT shift, and goto to state 33
708
705
 
709
- $default reduce using rule 21 (statement) [after shift]
710
706
 
711
707
  ----------
712
708
 
713
709
  <<'----------',
714
710
  I013 =
715
- ( 4) opt_decl_list : opt_decl_list decl _
711
+ ( 17) statement : IF _ condition THEN statement
716
712
 
713
+ IDENT shift, and goto to state 19
714
+ '(' shift, and goto to state 21
715
+ NUMBER shift, and goto to state 17
716
+ ODD shift, and goto to state 18
717
+ '-' shift, and goto to state 22
717
718
 
718
- $default reduce using rule 4 (opt_decl_list) [after shift]
719
719
 
720
720
  ----------
721
721
 
722
722
  <<'----------',
723
723
  I014 =
724
- ( 5) decl : CONST _ const_init_list ';'
724
+ ( 21) statement : WRITELN _
725
725
 
726
- IDENT shift, and goto to state 33
727
726
 
727
+ $default reduce using rule 21 (statement) [after shift]
728
728
 
729
729
  ----------
730
730
 
731
731
  <<'----------',
732
732
  I015 =
733
- ( 6) decl : VAR _ ident_list ';'
733
+ ( 2) block : opt_decl_list statement _
734
734
 
735
- IDENT shift, and goto to state 35
736
735
 
736
+ $default reduce using rule 2 (block) [after shift]
737
737
 
738
738
  ----------
739
739
 
@@ -749,90 +749,79 @@ I016 =
749
749
 
750
750
  <<'----------',
751
751
  I017 =
752
- ( 15) statement : IDENT COLOEQ _ expression
752
+ ( 39) factor : NUMBER _
753
753
 
754
- IDENT shift, and goto to state 25
755
- '(' shift, and goto to state 27
756
- NUMBER shift, and goto to state 26
757
- '-' shift, and goto to state 23
758
754
 
755
+ $default reduce using rule 39 (factor) [after shift]
759
756
 
760
757
  ----------
761
758
 
762
759
  <<'----------',
763
760
  I018 =
764
- ( 16) statement : BEGINN statement _ opt_state_list END
761
+ ( 24) condition : ODD _ expression
765
762
 
763
+ IDENT shift, and goto to state 19
764
+ '(' shift, and goto to state 21
765
+ NUMBER shift, and goto to state 17
766
+ '-' shift, and goto to state 22
766
767
 
767
- $default reduce using rule 22 (opt_state_list) [after shift]
768
768
 
769
769
  ----------
770
770
 
771
771
  <<'----------',
772
772
  I019 =
773
- ( 17) statement : IF condition _ THEN statement
773
+ ( 38) factor : IDENT _
774
+ ( 40) factor : IDENT _ '(' ')'
775
+ ( 41) factor : IDENT _ '(' exp_list ')'
774
776
 
775
- THEN shift, and goto to state 39
777
+ '(' shift, and goto to state 38
776
778
 
779
+ $default reduce using rule 38 (factor)
777
780
 
778
781
  ----------
779
782
 
780
783
  <<'----------',
781
784
  I020 =
782
- ( 24) condition : ODD _ expression
785
+ ( 18) statement : WHILE condition _ DO statement
783
786
 
784
- IDENT shift, and goto to state 25
785
- '(' shift, and goto to state 27
786
- NUMBER shift, and goto to state 26
787
- '-' shift, and goto to state 23
787
+ DO shift, and goto to state 39
788
788
 
789
789
 
790
790
  ----------
791
791
 
792
792
  <<'----------',
793
793
  I021 =
794
- ( 25) condition : expression _ EQ expression
795
- ( 26) condition : expression _ NOTEQ expression
796
- ( 27) condition : expression _ LT expression
797
- ( 28) condition : expression _ GT expression
798
- ( 29) condition : expression _ LE expression
799
- ( 30) condition : expression _ GE expression
800
- ( 31) expression : expression _ '+' term
801
- ( 32) expression : expression _ '-' term
794
+ ( 42) factor : '(' _ expression ')'
802
795
 
803
- EQ shift, and goto to state 41
804
- NOTEQ shift, and goto to state 42
805
- LT shift, and goto to state 43
806
- GT shift, and goto to state 44
807
- LE shift, and goto to state 45
808
- GE shift, and goto to state 46
809
- '+' shift, and goto to state 47
810
- '-' shift, and goto to state 48
796
+ IDENT shift, and goto to state 19
797
+ '(' shift, and goto to state 21
798
+ NUMBER shift, and goto to state 17
799
+ '-' shift, and goto to state 22
811
800
 
812
801
 
813
802
  ----------
814
803
 
815
804
  <<'----------',
816
805
  I022 =
817
- ( 33) expression : term _
818
- ( 35) term : term _ '*' factor
819
- ( 36) term : term _ '/' factor
806
+ ( 34) expression : '-' _ term
820
807
 
821
- '*' shift, and goto to state 49
822
- '/' shift, and goto to state 50
808
+ IDENT shift, and goto to state 19
809
+ '(' shift, and goto to state 21
810
+ NUMBER shift, and goto to state 17
823
811
 
824
- $default reduce using rule 33 (expression)
825
812
 
826
813
  ----------
827
814
 
828
815
  <<'----------',
829
816
  I023 =
830
- ( 34) expression : '-' _ term
817
+ ( 33) expression : term _
818
+ ( 35) term : term _ '*' factor
819
+ ( 36) term : term _ '/' factor
831
820
 
832
- IDENT shift, and goto to state 25
833
- '(' shift, and goto to state 27
834
- NUMBER shift, and goto to state 26
821
+ '*' shift, and goto to state 42
822
+ '/' shift, and goto to state 43
835
823
 
824
+ $default reduce using rule 33 (expression)
836
825
 
837
826
  ----------
838
827
 
@@ -847,98 +836,109 @@ I024 =
847
836
 
848
837
  <<'----------',
849
838
  I025 =
850
- ( 38) factor : IDENT _
851
- ( 40) factor : IDENT _ '(' ')'
852
- ( 41) factor : IDENT _ '(' exp_list ')'
839
+ ( 25) condition : expression _ EQ expression
840
+ ( 26) condition : expression _ NOTEQ expression
841
+ ( 27) condition : expression _ LT expression
842
+ ( 28) condition : expression _ GT expression
843
+ ( 29) condition : expression _ LE expression
844
+ ( 30) condition : expression _ GE expression
845
+ ( 31) expression : expression _ '+' term
846
+ ( 32) expression : expression _ '-' term
853
847
 
854
- '(' shift, and goto to state 52
848
+ EQ shift, and goto to state 50
849
+ NOTEQ shift, and goto to state 45
850
+ LT shift, and goto to state 47
851
+ GT shift, and goto to state 48
852
+ LE shift, and goto to state 49
853
+ GE shift, and goto to state 51
854
+ '+' shift, and goto to state 44
855
+ '-' shift, and goto to state 46
855
856
 
856
- $default reduce using rule 38 (factor)
857
857
 
858
858
  ----------
859
859
 
860
860
  <<'----------',
861
861
  I026 =
862
- ( 39) factor : NUMBER _
862
+ ( 15) statement : IDENT COLOEQ _ expression
863
863
 
864
+ IDENT shift, and goto to state 19
865
+ '(' shift, and goto to state 21
866
+ NUMBER shift, and goto to state 17
867
+ '-' shift, and goto to state 22
864
868
 
865
- $default reduce using rule 39 (factor) [after shift]
866
869
 
867
870
  ----------
868
871
 
869
872
  <<'----------',
870
873
  I027 =
871
- ( 42) factor : '(' _ expression ')'
874
+ ( 11) const_init : IDENT _ EQ NUMBER
872
875
 
873
- IDENT shift, and goto to state 25
874
- '(' shift, and goto to state 27
875
- NUMBER shift, and goto to state 26
876
- '-' shift, and goto to state 23
876
+ EQ shift, and goto to state 53
877
877
 
878
878
 
879
879
  ----------
880
880
 
881
881
  <<'----------',
882
882
  I028 =
883
- ( 18) statement : WHILE condition _ DO statement
883
+ ( 5) decl : CONST const_init_list _ ';'
884
+ ( 10) const_init_list : const_init_list _ ',' const_init
884
885
 
885
- DO shift, and goto to state 54
886
+ ';' shift, and goto to state 54
887
+ ',' shift, and goto to state 55
886
888
 
887
889
 
888
890
  ----------
889
891
 
890
892
  <<'----------',
891
893
  I029 =
892
- ( 19) statement : RETURN expression _
893
- ( 31) expression : expression _ '+' term
894
- ( 32) expression : expression _ '-' term
894
+ ( 9) const_init_list : const_init _
895
895
 
896
- '+' shift, and goto to state 47
897
- '-' shift, and goto to state 48
898
896
 
899
- $default reduce using rule 19 (statement)
897
+ $default reduce using rule 9 (const_init_list) [after shift]
900
898
 
901
899
  ----------
902
900
 
903
901
  <<'----------',
904
902
  I030 =
905
- ( 20) statement : WRITE expression _
906
- ( 31) expression : expression _ '+' term
907
- ( 32) expression : expression _ '-' term
903
+ ( 16) statement : BEGINN statement _ opt_state_list END
908
904
 
909
- '+' shift, and goto to state 47
910
- '-' shift, and goto to state 48
911
905
 
912
- $default reduce using rule 20 (statement)
906
+ $default reduce using rule 22 (opt_state_list) [after shift]
913
907
 
914
908
  ----------
915
909
 
916
910
  <<'----------',
917
911
  I031 =
918
- ( 5) decl : CONST const_init_list _ ';'
919
- ( 10) const_init_list : const_init_list _ ',' const_init
912
+ ( 19) statement : RETURN expression _
913
+ ( 31) expression : expression _ '+' term
914
+ ( 32) expression : expression _ '-' term
920
915
 
921
- ';' shift, and goto to state 55
922
- ',' shift, and goto to state 56
916
+ '+' shift, and goto to state 44
917
+ '-' shift, and goto to state 46
923
918
 
919
+ $default reduce using rule 19 (statement)
924
920
 
925
921
  ----------
926
922
 
927
923
  <<'----------',
928
924
  I032 =
929
- ( 9) const_init_list : const_init _
925
+ ( 20) statement : WRITE expression _
926
+ ( 31) expression : expression _ '+' term
927
+ ( 32) expression : expression _ '-' term
930
928
 
929
+ '+' shift, and goto to state 44
930
+ '-' shift, and goto to state 46
931
931
 
932
- $default reduce using rule 9 (const_init_list) [after shift]
932
+ $default reduce using rule 20 (statement)
933
933
 
934
934
  ----------
935
935
 
936
936
  <<'----------',
937
937
  I033 =
938
- ( 11) const_init : IDENT _ EQ NUMBER
938
+ ( 12) ident_list : IDENT _
939
939
 
940
- EQ shift, and goto to state 57
941
940
 
941
+ $default reduce using rule 12 (ident_list) [after shift]
942
942
 
943
943
  ----------
944
944
 
@@ -947,18 +947,18 @@ I034 =
947
947
  ( 6) decl : VAR ident_list _ ';'
948
948
  ( 13) ident_list : ident_list _ ',' IDENT
949
949
 
950
- ';' shift, and goto to state 58
951
- ',' shift, and goto to state 59
950
+ ';' shift, and goto to state 57
951
+ ',' shift, and goto to state 58
952
952
 
953
953
 
954
954
  ----------
955
955
 
956
956
  <<'----------',
957
957
  I035 =
958
- ( 12) ident_list : IDENT _
958
+ ( 17) statement : IF condition _ THEN statement
959
959
 
960
+ THEN shift, and goto to state 59
960
961
 
961
- $default reduce using rule 12 (ident_list) [after shift]
962
962
 
963
963
  ----------
964
964
 
@@ -974,39 +974,42 @@ I036 =
974
974
 
975
975
  <<'----------',
976
976
  I037 =
977
- ( 15) statement : IDENT COLOEQ expression _
977
+ ( 24) condition : ODD expression _
978
978
  ( 31) expression : expression _ '+' term
979
979
  ( 32) expression : expression _ '-' term
980
980
 
981
- '+' shift, and goto to state 47
982
- '-' shift, and goto to state 48
981
+ '+' shift, and goto to state 44
982
+ '-' shift, and goto to state 46
983
983
 
984
- $default reduce using rule 15 (statement)
984
+ $default reduce using rule 24 (condition)
985
985
 
986
986
  ----------
987
987
 
988
988
  <<'----------',
989
989
  I038 =
990
- ( 16) statement : BEGINN statement opt_state_list _ END
991
- ( 23) opt_state_list : opt_state_list _ ';' statement
990
+ ( 40) factor : IDENT '(' _ ')'
991
+ ( 41) factor : IDENT '(' _ exp_list ')'
992
992
 
993
- ';' shift, and goto to state 62
994
- END shift, and goto to state 61
993
+ IDENT shift, and goto to state 19
994
+ '(' shift, and goto to state 21
995
+ ')' shift, and goto to state 61
996
+ NUMBER shift, and goto to state 17
997
+ '-' shift, and goto to state 22
995
998
 
996
999
 
997
1000
  ----------
998
1001
 
999
1002
  <<'----------',
1000
1003
  I039 =
1001
- ( 17) statement : IF condition THEN _ statement
1004
+ ( 18) statement : WHILE condition DO _ statement
1002
1005
 
1003
- IDENT shift, and goto to state 6
1004
- BEGINN shift, and goto to state 7
1005
- IF shift, and goto to state 8
1006
- WHILE shift, and goto to state 9
1006
+ IDENT shift, and goto to state 7
1007
+ BEGINN shift, and goto to state 9
1008
+ IF shift, and goto to state 13
1009
+ WHILE shift, and goto to state 6
1007
1010
  RETURN shift, and goto to state 10
1008
1011
  WRITE shift, and goto to state 11
1009
- WRITELN shift, and goto to state 12
1012
+ WRITELN shift, and goto to state 14
1010
1013
 
1011
1014
  $default reduce using rule 14 (statement)
1012
1015
 
@@ -1014,231 +1017,228 @@ I039 =
1014
1017
 
1015
1018
  <<'----------',
1016
1019
  I040 =
1017
- ( 24) condition : ODD expression _
1020
+ ( 42) factor : '(' expression _ ')'
1018
1021
  ( 31) expression : expression _ '+' term
1019
1022
  ( 32) expression : expression _ '-' term
1020
1023
 
1021
- '+' shift, and goto to state 47
1022
- '-' shift, and goto to state 48
1024
+ ')' shift, and goto to state 65
1025
+ '+' shift, and goto to state 44
1026
+ '-' shift, and goto to state 46
1023
1027
 
1024
- $default reduce using rule 24 (condition)
1025
1028
 
1026
1029
  ----------
1027
1030
 
1028
1031
  <<'----------',
1029
1032
  I041 =
1030
- ( 25) condition : expression EQ _ expression
1033
+ ( 34) expression : '-' term _
1034
+ ( 35) term : term _ '*' factor
1035
+ ( 36) term : term _ '/' factor
1031
1036
 
1032
- IDENT shift, and goto to state 25
1033
- '(' shift, and goto to state 27
1034
- NUMBER shift, and goto to state 26
1035
- '-' shift, and goto to state 23
1037
+ '*' shift, and goto to state 42
1038
+ '/' shift, and goto to state 43
1036
1039
 
1040
+ $default reduce using rule 34 (expression)
1037
1041
 
1038
1042
  ----------
1039
1043
 
1040
1044
  <<'----------',
1041
1045
  I042 =
1042
- ( 26) condition : expression NOTEQ _ expression
1046
+ ( 35) term : term '*' _ factor
1043
1047
 
1044
- IDENT shift, and goto to state 25
1045
- '(' shift, and goto to state 27
1046
- NUMBER shift, and goto to state 26
1047
- '-' shift, and goto to state 23
1048
+ IDENT shift, and goto to state 19
1049
+ '(' shift, and goto to state 21
1050
+ NUMBER shift, and goto to state 17
1048
1051
 
1049
1052
 
1050
1053
  ----------
1051
1054
 
1052
1055
  <<'----------',
1053
1056
  I043 =
1054
- ( 27) condition : expression LT _ expression
1057
+ ( 36) term : term '/' _ factor
1055
1058
 
1056
- IDENT shift, and goto to state 25
1057
- '(' shift, and goto to state 27
1058
- NUMBER shift, and goto to state 26
1059
- '-' shift, and goto to state 23
1059
+ IDENT shift, and goto to state 19
1060
+ '(' shift, and goto to state 21
1061
+ NUMBER shift, and goto to state 17
1060
1062
 
1061
1063
 
1062
1064
  ----------
1063
1065
 
1064
1066
  <<'----------',
1065
1067
  I044 =
1066
- ( 28) condition : expression GT _ expression
1068
+ ( 31) expression : expression '+' _ term
1067
1069
 
1068
- IDENT shift, and goto to state 25
1069
- '(' shift, and goto to state 27
1070
- NUMBER shift, and goto to state 26
1071
- '-' shift, and goto to state 23
1070
+ IDENT shift, and goto to state 19
1071
+ '(' shift, and goto to state 21
1072
+ NUMBER shift, and goto to state 17
1072
1073
 
1073
1074
 
1074
1075
  ----------
1075
1076
 
1076
1077
  <<'----------',
1077
1078
  I045 =
1078
- ( 29) condition : expression LE _ expression
1079
+ ( 26) condition : expression NOTEQ _ expression
1079
1080
 
1080
- IDENT shift, and goto to state 25
1081
- '(' shift, and goto to state 27
1082
- NUMBER shift, and goto to state 26
1083
- '-' shift, and goto to state 23
1081
+ IDENT shift, and goto to state 19
1082
+ '(' shift, and goto to state 21
1083
+ NUMBER shift, and goto to state 17
1084
+ '-' shift, and goto to state 22
1084
1085
 
1085
1086
 
1086
1087
  ----------
1087
1088
 
1088
1089
  <<'----------',
1089
1090
  I046 =
1090
- ( 30) condition : expression GE _ expression
1091
+ ( 32) expression : expression '-' _ term
1091
1092
 
1092
- IDENT shift, and goto to state 25
1093
- '(' shift, and goto to state 27
1094
- NUMBER shift, and goto to state 26
1095
- '-' shift, and goto to state 23
1093
+ IDENT shift, and goto to state 19
1094
+ '(' shift, and goto to state 21
1095
+ NUMBER shift, and goto to state 17
1096
1096
 
1097
1097
 
1098
1098
  ----------
1099
1099
 
1100
1100
  <<'----------',
1101
1101
  I047 =
1102
- ( 31) expression : expression '+' _ term
1102
+ ( 27) condition : expression LT _ expression
1103
1103
 
1104
- IDENT shift, and goto to state 25
1105
- '(' shift, and goto to state 27
1106
- NUMBER shift, and goto to state 26
1104
+ IDENT shift, and goto to state 19
1105
+ '(' shift, and goto to state 21
1106
+ NUMBER shift, and goto to state 17
1107
+ '-' shift, and goto to state 22
1107
1108
 
1108
1109
 
1109
1110
  ----------
1110
1111
 
1111
1112
  <<'----------',
1112
1113
  I048 =
1113
- ( 32) expression : expression '-' _ term
1114
+ ( 28) condition : expression GT _ expression
1114
1115
 
1115
- IDENT shift, and goto to state 25
1116
- '(' shift, and goto to state 27
1117
- NUMBER shift, and goto to state 26
1116
+ IDENT shift, and goto to state 19
1117
+ '(' shift, and goto to state 21
1118
+ NUMBER shift, and goto to state 17
1119
+ '-' shift, and goto to state 22
1118
1120
 
1119
1121
 
1120
1122
  ----------
1121
1123
 
1122
1124
  <<'----------',
1123
1125
  I049 =
1124
- ( 35) term : term '*' _ factor
1126
+ ( 29) condition : expression LE _ expression
1125
1127
 
1126
- IDENT shift, and goto to state 25
1127
- '(' shift, and goto to state 27
1128
- NUMBER shift, and goto to state 26
1128
+ IDENT shift, and goto to state 19
1129
+ '(' shift, and goto to state 21
1130
+ NUMBER shift, and goto to state 17
1131
+ '-' shift, and goto to state 22
1129
1132
 
1130
1133
 
1131
1134
  ----------
1132
1135
 
1133
1136
  <<'----------',
1134
1137
  I050 =
1135
- ( 36) term : term '/' _ factor
1138
+ ( 25) condition : expression EQ _ expression
1136
1139
 
1137
- IDENT shift, and goto to state 25
1138
- '(' shift, and goto to state 27
1139
- NUMBER shift, and goto to state 26
1140
+ IDENT shift, and goto to state 19
1141
+ '(' shift, and goto to state 21
1142
+ NUMBER shift, and goto to state 17
1143
+ '-' shift, and goto to state 22
1140
1144
 
1141
1145
 
1142
1146
  ----------
1143
1147
 
1144
1148
  <<'----------',
1145
1149
  I051 =
1146
- ( 34) expression : '-' term _
1147
- ( 35) term : term _ '*' factor
1148
- ( 36) term : term _ '/' factor
1150
+ ( 30) condition : expression GE _ expression
1149
1151
 
1150
- '*' shift, and goto to state 49
1151
- '/' shift, and goto to state 50
1152
+ IDENT shift, and goto to state 19
1153
+ '(' shift, and goto to state 21
1154
+ NUMBER shift, and goto to state 17
1155
+ '-' shift, and goto to state 22
1152
1156
 
1153
- $default reduce using rule 34 (expression)
1154
1157
 
1155
1158
  ----------
1156
1159
 
1157
1160
  <<'----------',
1158
1161
  I052 =
1159
- ( 40) factor : IDENT '(' _ ')'
1160
- ( 41) factor : IDENT '(' _ exp_list ')'
1162
+ ( 15) statement : IDENT COLOEQ expression _
1163
+ ( 31) expression : expression _ '+' term
1164
+ ( 32) expression : expression _ '-' term
1161
1165
 
1162
- IDENT shift, and goto to state 25
1163
- '(' shift, and goto to state 27
1164
- ')' shift, and goto to state 74
1165
- NUMBER shift, and goto to state 26
1166
- '-' shift, and goto to state 23
1166
+ '+' shift, and goto to state 44
1167
+ '-' shift, and goto to state 46
1167
1168
 
1169
+ $default reduce using rule 15 (statement)
1168
1170
 
1169
1171
  ----------
1170
1172
 
1171
1173
  <<'----------',
1172
1174
  I053 =
1173
- ( 42) factor : '(' expression _ ')'
1174
- ( 31) expression : expression _ '+' term
1175
- ( 32) expression : expression _ '-' term
1175
+ ( 11) const_init : IDENT EQ _ NUMBER
1176
1176
 
1177
- ')' shift, and goto to state 77
1178
- '+' shift, and goto to state 47
1179
- '-' shift, and goto to state 48
1177
+ NUMBER shift, and goto to state 76
1180
1178
 
1181
1179
 
1182
1180
  ----------
1183
1181
 
1184
1182
  <<'----------',
1185
1183
  I054 =
1186
- ( 18) statement : WHILE condition DO _ statement
1184
+ ( 5) decl : CONST const_init_list ';' _
1187
1185
 
1188
- IDENT shift, and goto to state 6
1189
- BEGINN shift, and goto to state 7
1190
- IF shift, and goto to state 8
1191
- WHILE shift, and goto to state 9
1192
- RETURN shift, and goto to state 10
1193
- WRITE shift, and goto to state 11
1194
- WRITELN shift, and goto to state 12
1195
1186
 
1196
- $default reduce using rule 14 (statement)
1187
+ $default reduce using rule 5 (decl) [after shift]
1197
1188
 
1198
1189
  ----------
1199
1190
 
1200
1191
  <<'----------',
1201
1192
  I055 =
1202
- ( 5) decl : CONST const_init_list ';' _
1193
+ ( 10) const_init_list : const_init_list ',' _ const_init
1203
1194
 
1195
+ IDENT shift, and goto to state 27
1204
1196
 
1205
- $default reduce using rule 5 (decl) [after shift]
1206
1197
 
1207
1198
  ----------
1208
1199
 
1209
1200
  <<'----------',
1210
1201
  I056 =
1211
- ( 10) const_init_list : const_init_list ',' _ const_init
1202
+ ( 16) statement : BEGINN statement opt_state_list _ END
1203
+ ( 23) opt_state_list : opt_state_list _ ';' statement
1212
1204
 
1213
- IDENT shift, and goto to state 33
1205
+ ';' shift, and goto to state 78
1206
+ END shift, and goto to state 79
1214
1207
 
1215
1208
 
1216
1209
  ----------
1217
1210
 
1218
1211
  <<'----------',
1219
1212
  I057 =
1220
- ( 11) const_init : IDENT EQ _ NUMBER
1213
+ ( 6) decl : VAR ident_list ';' _
1221
1214
 
1222
- NUMBER shift, and goto to state 80
1223
1215
 
1216
+ $default reduce using rule 6 (decl) [after shift]
1224
1217
 
1225
1218
  ----------
1226
1219
 
1227
1220
  <<'----------',
1228
1221
  I058 =
1229
- ( 6) decl : VAR ident_list ';' _
1222
+ ( 13) ident_list : ident_list ',' _ IDENT
1230
1223
 
1224
+ IDENT shift, and goto to state 80
1231
1225
 
1232
- $default reduce using rule 6 (decl) [after shift]
1233
1226
 
1234
1227
  ----------
1235
1228
 
1236
1229
  <<'----------',
1237
1230
  I059 =
1238
- ( 13) ident_list : ident_list ',' _ IDENT
1231
+ ( 17) statement : IF condition THEN _ statement
1239
1232
 
1240
- IDENT shift, and goto to state 81
1233
+ IDENT shift, and goto to state 7
1234
+ BEGINN shift, and goto to state 9
1235
+ IF shift, and goto to state 13
1236
+ WHILE shift, and goto to state 6
1237
+ RETURN shift, and goto to state 10
1238
+ WRITE shift, and goto to state 11
1239
+ WRITELN shift, and goto to state 14
1241
1240
 
1241
+ $default reduce using rule 14 (statement)
1242
1242
 
1243
1243
  ----------
1244
1244
 
@@ -1247,311 +1247,311 @@ I060 =
1247
1247
  ( 7) decl : FUNCTION IDENT '(' _ ')' block ';'
1248
1248
  ( 8) decl : FUNCTION IDENT '(' _ ident_list ')' block ';'
1249
1249
 
1250
- IDENT shift, and goto to state 35
1251
- ')' shift, and goto to state 82
1250
+ IDENT shift, and goto to state 33
1251
+ ')' shift, and goto to state 83
1252
1252
 
1253
1253
 
1254
1254
  ----------
1255
1255
 
1256
1256
  <<'----------',
1257
1257
  I061 =
1258
- ( 16) statement : BEGINN statement opt_state_list END _
1258
+ ( 40) factor : IDENT '(' ')' _
1259
1259
 
1260
1260
 
1261
- $default reduce using rule 16 (statement) [after shift]
1261
+ $default reduce using rule 40 (factor) [after shift]
1262
1262
 
1263
1263
  ----------
1264
1264
 
1265
1265
  <<'----------',
1266
1266
  I062 =
1267
- ( 23) opt_state_list : opt_state_list ';' _ statement
1267
+ ( 41) factor : IDENT '(' exp_list _ ')'
1268
+ ( 44) exp_list : exp_list _ ',' expression
1268
1269
 
1269
- IDENT shift, and goto to state 6
1270
- BEGINN shift, and goto to state 7
1271
- IF shift, and goto to state 8
1272
- WHILE shift, and goto to state 9
1273
- RETURN shift, and goto to state 10
1274
- WRITE shift, and goto to state 11
1275
- WRITELN shift, and goto to state 12
1270
+ ')' shift, and goto to state 84
1271
+ ',' shift, and goto to state 85
1276
1272
 
1277
- $default reduce using rule 14 (statement)
1278
1273
 
1279
1274
  ----------
1280
1275
 
1281
1276
  <<'----------',
1282
1277
  I063 =
1283
- ( 17) statement : IF condition THEN statement _
1278
+ ( 43) exp_list : expression _
1279
+ ( 31) expression : expression _ '+' term
1280
+ ( 32) expression : expression _ '-' term
1284
1281
 
1282
+ '+' shift, and goto to state 44
1283
+ '-' shift, and goto to state 46
1285
1284
 
1286
- $default reduce using rule 17 (statement) [after shift]
1285
+ $default reduce using rule 43 (exp_list)
1287
1286
 
1288
1287
  ----------
1289
1288
 
1290
1289
  <<'----------',
1291
1290
  I064 =
1292
- ( 25) condition : expression EQ expression _
1293
- ( 31) expression : expression _ '+' term
1294
- ( 32) expression : expression _ '-' term
1291
+ ( 18) statement : WHILE condition DO statement _
1295
1292
 
1296
- '+' shift, and goto to state 47
1297
- '-' shift, and goto to state 48
1298
1293
 
1299
- $default reduce using rule 25 (condition)
1294
+ $default reduce using rule 18 (statement) [after shift]
1300
1295
 
1301
1296
  ----------
1302
1297
 
1303
1298
  <<'----------',
1304
1299
  I065 =
1305
- ( 26) condition : expression NOTEQ expression _
1306
- ( 31) expression : expression _ '+' term
1307
- ( 32) expression : expression _ '-' term
1300
+ ( 42) factor : '(' expression ')' _
1308
1301
 
1309
- '+' shift, and goto to state 47
1310
- '-' shift, and goto to state 48
1311
1302
 
1312
- $default reduce using rule 26 (condition)
1303
+ $default reduce using rule 42 (factor) [after shift]
1313
1304
 
1314
1305
  ----------
1315
1306
 
1316
1307
  <<'----------',
1317
1308
  I066 =
1318
- ( 27) condition : expression LT expression _
1319
- ( 31) expression : expression _ '+' term
1320
- ( 32) expression : expression _ '-' term
1309
+ ( 35) term : term '*' factor _
1321
1310
 
1322
- '+' shift, and goto to state 47
1323
- '-' shift, and goto to state 48
1324
1311
 
1325
- $default reduce using rule 27 (condition)
1312
+ $default reduce using rule 35 (term) [after shift]
1326
1313
 
1327
1314
  ----------
1328
1315
 
1329
1316
  <<'----------',
1330
1317
  I067 =
1331
- ( 28) condition : expression GT expression _
1332
- ( 31) expression : expression _ '+' term
1333
- ( 32) expression : expression _ '-' term
1318
+ ( 36) term : term '/' factor _
1334
1319
 
1335
- '+' shift, and goto to state 47
1336
- '-' shift, and goto to state 48
1337
1320
 
1338
- $default reduce using rule 28 (condition)
1321
+ $default reduce using rule 36 (term) [after shift]
1339
1322
 
1340
1323
  ----------
1341
1324
 
1342
1325
  <<'----------',
1343
1326
  I068 =
1344
- ( 29) condition : expression LE expression _
1345
- ( 31) expression : expression _ '+' term
1346
- ( 32) expression : expression _ '-' term
1327
+ ( 31) expression : expression '+' term _
1328
+ ( 35) term : term _ '*' factor
1329
+ ( 36) term : term _ '/' factor
1347
1330
 
1348
- '+' shift, and goto to state 47
1349
- '-' shift, and goto to state 48
1331
+ '*' shift, and goto to state 42
1332
+ '/' shift, and goto to state 43
1350
1333
 
1351
- $default reduce using rule 29 (condition)
1334
+ $default reduce using rule 31 (expression)
1352
1335
 
1353
1336
  ----------
1354
1337
 
1355
1338
  <<'----------',
1356
1339
  I069 =
1357
- ( 30) condition : expression GE expression _
1340
+ ( 26) condition : expression NOTEQ expression _
1358
1341
  ( 31) expression : expression _ '+' term
1359
1342
  ( 32) expression : expression _ '-' term
1360
1343
 
1361
- '+' shift, and goto to state 47
1362
- '-' shift, and goto to state 48
1344
+ '+' shift, and goto to state 44
1345
+ '-' shift, and goto to state 46
1363
1346
 
1364
- $default reduce using rule 30 (condition)
1347
+ $default reduce using rule 26 (condition)
1365
1348
 
1366
1349
  ----------
1367
1350
 
1368
1351
  <<'----------',
1369
1352
  I070 =
1370
- ( 31) expression : expression '+' term _
1353
+ ( 32) expression : expression '-' term _
1371
1354
  ( 35) term : term _ '*' factor
1372
1355
  ( 36) term : term _ '/' factor
1373
1356
 
1374
- '*' shift, and goto to state 49
1375
- '/' shift, and goto to state 50
1357
+ '*' shift, and goto to state 42
1358
+ '/' shift, and goto to state 43
1376
1359
 
1377
- $default reduce using rule 31 (expression)
1360
+ $default reduce using rule 32 (expression)
1378
1361
 
1379
1362
  ----------
1380
1363
 
1381
1364
  <<'----------',
1382
1365
  I071 =
1383
- ( 32) expression : expression '-' term _
1384
- ( 35) term : term _ '*' factor
1385
- ( 36) term : term _ '/' factor
1366
+ ( 27) condition : expression LT expression _
1367
+ ( 31) expression : expression _ '+' term
1368
+ ( 32) expression : expression _ '-' term
1386
1369
 
1387
- '*' shift, and goto to state 49
1388
- '/' shift, and goto to state 50
1370
+ '+' shift, and goto to state 44
1371
+ '-' shift, and goto to state 46
1389
1372
 
1390
- $default reduce using rule 32 (expression)
1373
+ $default reduce using rule 27 (condition)
1391
1374
 
1392
1375
  ----------
1393
1376
 
1394
1377
  <<'----------',
1395
1378
  I072 =
1396
- ( 35) term : term '*' factor _
1379
+ ( 28) condition : expression GT expression _
1380
+ ( 31) expression : expression _ '+' term
1381
+ ( 32) expression : expression _ '-' term
1397
1382
 
1383
+ '+' shift, and goto to state 44
1384
+ '-' shift, and goto to state 46
1398
1385
 
1399
- $default reduce using rule 35 (term) [after shift]
1386
+ $default reduce using rule 28 (condition)
1400
1387
 
1401
1388
  ----------
1402
1389
 
1403
1390
  <<'----------',
1404
1391
  I073 =
1405
- ( 36) term : term '/' factor _
1392
+ ( 29) condition : expression LE expression _
1393
+ ( 31) expression : expression _ '+' term
1394
+ ( 32) expression : expression _ '-' term
1406
1395
 
1396
+ '+' shift, and goto to state 44
1397
+ '-' shift, and goto to state 46
1407
1398
 
1408
- $default reduce using rule 36 (term) [after shift]
1399
+ $default reduce using rule 29 (condition)
1409
1400
 
1410
1401
  ----------
1411
1402
 
1412
1403
  <<'----------',
1413
1404
  I074 =
1414
- ( 40) factor : IDENT '(' ')' _
1405
+ ( 25) condition : expression EQ expression _
1406
+ ( 31) expression : expression _ '+' term
1407
+ ( 32) expression : expression _ '-' term
1415
1408
 
1409
+ '+' shift, and goto to state 44
1410
+ '-' shift, and goto to state 46
1416
1411
 
1417
- $default reduce using rule 40 (factor) [after shift]
1412
+ $default reduce using rule 25 (condition)
1418
1413
 
1419
1414
  ----------
1420
1415
 
1421
1416
  <<'----------',
1422
1417
  I075 =
1423
- ( 41) factor : IDENT '(' exp_list _ ')'
1424
- ( 44) exp_list : exp_list _ ',' expression
1418
+ ( 30) condition : expression GE expression _
1419
+ ( 31) expression : expression _ '+' term
1420
+ ( 32) expression : expression _ '-' term
1425
1421
 
1426
- ')' shift, and goto to state 85
1427
- ',' shift, and goto to state 86
1422
+ '+' shift, and goto to state 44
1423
+ '-' shift, and goto to state 46
1428
1424
 
1425
+ $default reduce using rule 30 (condition)
1429
1426
 
1430
1427
  ----------
1431
1428
 
1432
1429
  <<'----------',
1433
1430
  I076 =
1434
- ( 43) exp_list : expression _
1435
- ( 31) expression : expression _ '+' term
1436
- ( 32) expression : expression _ '-' term
1431
+ ( 11) const_init : IDENT EQ NUMBER _
1437
1432
 
1438
- '+' shift, and goto to state 47
1439
- '-' shift, and goto to state 48
1440
1433
 
1441
- $default reduce using rule 43 (exp_list)
1434
+ $default reduce using rule 11 (const_init) [after shift]
1442
1435
 
1443
1436
  ----------
1444
1437
 
1445
1438
  <<'----------',
1446
1439
  I077 =
1447
- ( 42) factor : '(' expression ')' _
1440
+ ( 10) const_init_list : const_init_list ',' const_init _
1448
1441
 
1449
1442
 
1450
- $default reduce using rule 42 (factor) [after shift]
1443
+ $default reduce using rule 10 (const_init_list) [after shift]
1451
1444
 
1452
1445
  ----------
1453
1446
 
1454
1447
  <<'----------',
1455
1448
  I078 =
1456
- ( 18) statement : WHILE condition DO statement _
1449
+ ( 23) opt_state_list : opt_state_list ';' _ statement
1457
1450
 
1451
+ IDENT shift, and goto to state 7
1452
+ BEGINN shift, and goto to state 9
1453
+ IF shift, and goto to state 13
1454
+ WHILE shift, and goto to state 6
1455
+ RETURN shift, and goto to state 10
1456
+ WRITE shift, and goto to state 11
1457
+ WRITELN shift, and goto to state 14
1458
1458
 
1459
- $default reduce using rule 18 (statement) [after shift]
1459
+ $default reduce using rule 14 (statement)
1460
1460
 
1461
1461
  ----------
1462
1462
 
1463
1463
  <<'----------',
1464
1464
  I079 =
1465
- ( 10) const_init_list : const_init_list ',' const_init _
1465
+ ( 16) statement : BEGINN statement opt_state_list END _
1466
1466
 
1467
1467
 
1468
- $default reduce using rule 10 (const_init_list) [after shift]
1468
+ $default reduce using rule 16 (statement) [after shift]
1469
1469
 
1470
1470
  ----------
1471
1471
 
1472
1472
  <<'----------',
1473
1473
  I080 =
1474
- ( 11) const_init : IDENT EQ NUMBER _
1474
+ ( 13) ident_list : ident_list ',' IDENT _
1475
1475
 
1476
1476
 
1477
- $default reduce using rule 11 (const_init) [after shift]
1477
+ $default reduce using rule 13 (ident_list) [after shift]
1478
1478
 
1479
1479
  ----------
1480
1480
 
1481
1481
  <<'----------',
1482
1482
  I081 =
1483
- ( 13) ident_list : ident_list ',' IDENT _
1483
+ ( 17) statement : IF condition THEN statement _
1484
1484
 
1485
1485
 
1486
- $default reduce using rule 13 (ident_list) [after shift]
1486
+ $default reduce using rule 17 (statement) [after shift]
1487
1487
 
1488
1488
  ----------
1489
1489
 
1490
1490
  <<'----------',
1491
1491
  I082 =
1492
- ( 7) decl : FUNCTION IDENT '(' ')' _ block ';'
1492
+ ( 8) decl : FUNCTION IDENT '(' ident_list _ ')' block ';'
1493
+ ( 13) ident_list : ident_list _ ',' IDENT
1493
1494
 
1495
+ ')' shift, and goto to state 87
1496
+ ',' shift, and goto to state 58
1494
1497
 
1495
- $default reduce using rule 3 (opt_decl_list) [after shift]
1496
1498
 
1497
1499
  ----------
1498
1500
 
1499
1501
  <<'----------',
1500
1502
  I083 =
1501
- ( 8) decl : FUNCTION IDENT '(' ident_list _ ')' block ';'
1502
- ( 13) ident_list : ident_list _ ',' IDENT
1503
+ ( 7) decl : FUNCTION IDENT '(' ')' _ block ';'
1503
1504
 
1504
- ')' shift, and goto to state 88
1505
- ',' shift, and goto to state 59
1506
1505
 
1506
+ $default reduce using rule 3 (opt_decl_list) [after shift]
1507
1507
 
1508
1508
  ----------
1509
1509
 
1510
1510
  <<'----------',
1511
1511
  I084 =
1512
- ( 23) opt_state_list : opt_state_list ';' statement _
1512
+ ( 41) factor : IDENT '(' exp_list ')' _
1513
1513
 
1514
1514
 
1515
- $default reduce using rule 23 (opt_state_list) [after shift]
1515
+ $default reduce using rule 41 (factor) [after shift]
1516
1516
 
1517
1517
  ----------
1518
1518
 
1519
1519
  <<'----------',
1520
1520
  I085 =
1521
- ( 41) factor : IDENT '(' exp_list ')' _
1521
+ ( 44) exp_list : exp_list ',' _ expression
1522
1522
 
1523
+ IDENT shift, and goto to state 19
1524
+ '(' shift, and goto to state 21
1525
+ NUMBER shift, and goto to state 17
1526
+ '-' shift, and goto to state 22
1523
1527
 
1524
- $default reduce using rule 41 (factor) [after shift]
1525
1528
 
1526
1529
  ----------
1527
1530
 
1528
1531
  <<'----------',
1529
1532
  I086 =
1530
- ( 44) exp_list : exp_list ',' _ expression
1533
+ ( 23) opt_state_list : opt_state_list ';' statement _
1531
1534
 
1532
- IDENT shift, and goto to state 25
1533
- '(' shift, and goto to state 27
1534
- NUMBER shift, and goto to state 26
1535
- '-' shift, and goto to state 23
1536
1535
 
1536
+ $default reduce using rule 23 (opt_state_list) [after shift]
1537
1537
 
1538
1538
  ----------
1539
1539
 
1540
1540
  <<'----------',
1541
1541
  I087 =
1542
- ( 7) decl : FUNCTION IDENT '(' ')' block _ ';'
1542
+ ( 8) decl : FUNCTION IDENT '(' ident_list ')' _ block ';'
1543
1543
 
1544
- ';' shift, and goto to state 90
1545
1544
 
1545
+ $default reduce using rule 3 (opt_decl_list) [after shift]
1546
1546
 
1547
1547
  ----------
1548
1548
 
1549
1549
  <<'----------',
1550
1550
  I088 =
1551
- ( 8) decl : FUNCTION IDENT '(' ident_list ')' _ block ';'
1551
+ ( 7) decl : FUNCTION IDENT '(' ')' block _ ';'
1552
1552
 
1553
+ ';' shift, and goto to state 91
1553
1554
 
1554
- $default reduce using rule 3 (opt_decl_list) [after shift]
1555
1555
 
1556
1556
  ----------
1557
1557
 
@@ -1561,8 +1561,8 @@ I089 =
1561
1561
  ( 31) expression : expression _ '+' term
1562
1562
  ( 32) expression : expression _ '-' term
1563
1563
 
1564
- '+' shift, and goto to state 47
1565
- '-' shift, and goto to state 48
1564
+ '+' shift, and goto to state 44
1565
+ '-' shift, and goto to state 46
1566
1566
 
1567
1567
  $default reduce using rule 44 (exp_list)
1568
1568
 
@@ -1570,19 +1570,19 @@ I089 =
1570
1570
 
1571
1571
  <<'----------',
1572
1572
  I090 =
1573
- ( 7) decl : FUNCTION IDENT '(' ')' block ';' _
1573
+ ( 8) decl : FUNCTION IDENT '(' ident_list ')' block _ ';'
1574
1574
 
1575
+ ';' shift, and goto to state 92
1575
1576
 
1576
- $default reduce using rule 7 (decl) [after shift]
1577
1577
 
1578
1578
  ----------
1579
1579
 
1580
1580
  <<'----------',
1581
1581
  I091 =
1582
- ( 8) decl : FUNCTION IDENT '(' ident_list ')' block _ ';'
1582
+ ( 7) decl : FUNCTION IDENT '(' ')' block ';' _
1583
1583
 
1584
- ';' shift, and goto to state 92
1585
1584
 
1585
+ $default reduce using rule 7 (decl) [after shift]
1586
1586
 
1587
1587
  ----------
1588
1588
 
@@ -1619,117 +1619,117 @@ I092 =
1619
1619
 
1620
1620
  when /\A:=/
1621
1621
  @oldline = @line; @line = $'
1622
- yield _Token(:COLOEQ, $&)
1622
+ yield token(:COLOEQ, $&)
1623
1623
 
1624
1624
 
1625
1625
  when /\A<>/
1626
1626
  @oldline = @line; @line = $'
1627
- yield _Token(:NOTEQ, $&)
1627
+ yield token(:NOTEQ, $&)
1628
1628
 
1629
1629
 
1630
1630
  when /\A<=/
1631
1631
  @oldline = @line; @line = $'
1632
- yield _Token(:LE, $&)
1632
+ yield token(:LE, $&)
1633
1633
 
1634
1634
 
1635
1635
  when /\A>=/
1636
1636
  @oldline = @line; @line = $'
1637
- yield _Token(:GE, $&)
1637
+ yield token(:GE, $&)
1638
1638
 
1639
1639
 
1640
1640
  when /\A=/
1641
1641
  @oldline = @line; @line = $'
1642
- yield _Token(:EQ, $&)
1642
+ yield token(:EQ, $&)
1643
1643
 
1644
1644
 
1645
1645
  when /\A</
1646
1646
  @oldline = @line; @line = $'
1647
- yield _Token(:LT, $&)
1647
+ yield token(:LT, $&)
1648
1648
 
1649
1649
 
1650
1650
  when /\A>/
1651
1651
  @oldline = @line; @line = $'
1652
- yield _Token(:GT, $&)
1652
+ yield token(:GT, $&)
1653
1653
 
1654
1654
 
1655
1655
  when /\Aconst/
1656
1656
  @oldline = @line; @line = $'
1657
- yield _Token(:CONST, $&)
1657
+ yield token(:CONST, $&)
1658
1658
 
1659
1659
 
1660
1660
  when /\Avar/
1661
1661
  @oldline = @line; @line = $'
1662
- yield _Token(:VAR, $&)
1662
+ yield token(:VAR, $&)
1663
1663
 
1664
1664
 
1665
1665
  when /\Afunction/
1666
1666
  @oldline = @line; @line = $'
1667
- yield _Token(:FUNCTION, $&)
1667
+ yield token(:FUNCTION, $&)
1668
1668
 
1669
1669
 
1670
1670
  when /\Abegin/
1671
1671
  @oldline = @line; @line = $'
1672
- yield _Token(:BEGINN, $&)
1672
+ yield token(:BEGINN, $&)
1673
1673
 
1674
1674
 
1675
1675
  when /\Aend/
1676
1676
  @oldline = @line; @line = $'
1677
- yield _Token(:END, $&)
1677
+ yield token(:END, $&)
1678
1678
 
1679
1679
 
1680
1680
  when /\Aif/
1681
1681
  @oldline = @line; @line = $'
1682
- yield _Token(:IF, $&)
1682
+ yield token(:IF, $&)
1683
1683
 
1684
1684
 
1685
1685
  when /\Athen/
1686
1686
  @oldline = @line; @line = $'
1687
- yield _Token(:THEN, $&)
1687
+ yield token(:THEN, $&)
1688
1688
 
1689
1689
 
1690
1690
  when /\Awhile/
1691
1691
  @oldline = @line; @line = $'
1692
- yield _Token(:WHILE, $&)
1692
+ yield token(:WHILE, $&)
1693
1693
 
1694
1694
 
1695
1695
  when /\Ado/
1696
1696
  @oldline = @line; @line = $'
1697
- yield _Token(:DO, $&)
1697
+ yield token(:DO, $&)
1698
1698
 
1699
1699
 
1700
1700
  when /\Areturn/
1701
1701
  @oldline = @line; @line = $'
1702
- yield _Token(:RETURN, $&)
1702
+ yield token(:RETURN, $&)
1703
1703
 
1704
1704
 
1705
1705
  when /\Awriteln/
1706
1706
  @oldline = @line; @line = $'
1707
- yield _Token(:WRITELN, $&)
1707
+ yield token(:WRITELN, $&)
1708
1708
 
1709
1709
 
1710
1710
  when /\Awrite/
1711
1711
  @oldline = @line; @line = $'
1712
- yield _Token(:WRITE, $&)
1712
+ yield token(:WRITE, $&)
1713
1713
 
1714
1714
 
1715
1715
  when /\Aodd/
1716
1716
  @oldline = @line; @line = $'
1717
- yield _Token(:ODD, $&)
1717
+ yield token(:ODD, $&)
1718
1718
 
1719
1719
 
1720
1720
  when /\A[a-zA-Z][a-zA-Z0-9_]*/
1721
1721
  @oldline = @line; @line = $'
1722
- yield _Token(:IDENT, $&)
1722
+ yield token(:IDENT, $&)
1723
1723
 
1724
1724
 
1725
1725
  when /\A[0-9]+/
1726
1726
  @oldline = @line; @line = $'
1727
- yield _Token(:NUMBER, $&.to_i)
1727
+ yield token(:NUMBER, $&.to_i)
1728
1728
 
1729
1729
 
1730
1730
  when /\A./
1731
1731
  @oldline = @line; @line = $'
1732
- yield _Token($&, $&)
1732
+ yield token($&, $&)
1733
1733
 
1734
1734
 
1735
1735
  else
@@ -1743,7 +1743,6 @@ I092 =
1743
1743
  end
1744
1744
 
1745
1745
  ### Outer Code
1746
-
1747
1746
  class Node
1748
1747
  attr_accessor :lineno
1749
1748
  attr_accessor :value
@@ -1800,8 +1799,6 @@ class NilNode
1800
1799
  def accept v
1801
1800
  end
1802
1801
  end
1803
-
1804
-
1805
1802
  class Node_program < Node
1806
1803
  attr_accessor :block
1807
1804
  attr_accessor
@@ -1819,7 +1816,6 @@ class Node_program < Node
1819
1816
  self
1820
1817
  end
1821
1818
  end
1822
-
1823
1819
  class Node_block < Node
1824
1820
  attr_accessor :decls, :stmt
1825
1821
  attr_accessor
@@ -1838,7 +1834,6 @@ class Node_block < Node
1838
1834
  self
1839
1835
  end
1840
1836
  end
1841
-
1842
1837
  class Node_var_decl < Node
1843
1838
  attr_accessor :idents
1844
1839
  attr_accessor :idents
@@ -1856,7 +1851,6 @@ class Node_var_decl < Node
1856
1851
  self
1857
1852
  end
1858
1853
  end
1859
-
1860
1854
  class Node_const_decl < Node
1861
1855
  attr_accessor :const_inits
1862
1856
  attr_accessor
@@ -1874,7 +1868,6 @@ class Node_const_decl < Node
1874
1868
  self
1875
1869
  end
1876
1870
  end
1877
-
1878
1871
  class Node_const_init < Node
1879
1872
  attr_accessor :ident, :number
1880
1873
  attr_accessor :ident, :number
@@ -1893,7 +1886,6 @@ class Node_const_init < Node
1893
1886
  self
1894
1887
  end
1895
1888
  end
1896
-
1897
1889
  class Node_func_decl < Node
1898
1890
  attr_accessor :ident, :params, :block
1899
1891
  attr_accessor :ident, :params, :block
@@ -1913,7 +1905,6 @@ class Node_func_decl < Node
1913
1905
  self
1914
1906
  end
1915
1907
  end
1916
-
1917
1908
  class Node_nop_stmt < Node
1918
1909
  attr_accessor :nop
1919
1910
  attr_accessor :nop
@@ -1931,7 +1922,6 @@ class Node_nop_stmt < Node
1931
1922
  self
1932
1923
  end
1933
1924
  end
1934
-
1935
1925
  class Node_assign_stmt < Node
1936
1926
  attr_accessor :ident, :expr
1937
1927
  attr_accessor :ident
@@ -1950,7 +1940,6 @@ class Node_assign_stmt < Node
1950
1940
  self
1951
1941
  end
1952
1942
  end
1953
-
1954
1943
  class Node_begin_stmt < Node
1955
1944
  attr_accessor :stmt, :stmts
1956
1945
  attr_accessor
@@ -1969,7 +1958,6 @@ class Node_begin_stmt < Node
1969
1958
  self
1970
1959
  end
1971
1960
  end
1972
-
1973
1961
  class Node_if_stmt < Node
1974
1962
  attr_accessor :cond, :stmt
1975
1963
  attr_accessor
@@ -1988,7 +1976,6 @@ class Node_if_stmt < Node
1988
1976
  self
1989
1977
  end
1990
1978
  end
1991
-
1992
1979
  class Node_while_stmt < Node
1993
1980
  attr_accessor :cond, :stmt
1994
1981
  attr_accessor
@@ -2007,7 +1994,6 @@ class Node_while_stmt < Node
2007
1994
  self
2008
1995
  end
2009
1996
  end
2010
-
2011
1997
  class Node_return_stmt < Node
2012
1998
  attr_accessor :expr
2013
1999
  attr_accessor
@@ -2025,7 +2011,6 @@ class Node_return_stmt < Node
2025
2011
  self
2026
2012
  end
2027
2013
  end
2028
-
2029
2014
  class Node_apply < Node
2030
2015
  attr_accessor :ident, :args
2031
2016
  attr_accessor :ident, :args
@@ -2044,7 +2029,6 @@ class Node_apply < Node
2044
2029
  self
2045
2030
  end
2046
2031
  end
2047
-
2048
2032
  class Node_refv < Node
2049
2033
  attr_accessor :ident
2050
2034
  attr_accessor :ident
@@ -2062,7 +2046,6 @@ class Node_refv < Node
2062
2046
  self
2063
2047
  end
2064
2048
  end
2065
-
2066
2049
  class Node_number < Node
2067
2050
  attr_accessor :n
2068
2051
  attr_accessor :n
@@ -2086,7 +2069,7 @@ end
2086
2069
  node.accept(self)
2087
2070
  end
2088
2071
 
2089
- module_eval <<-'.,.,120998293030813.,.,', 'pl0d/pl0ds.dr', 38
2072
+ module_eval <<-'.,.,122745803753111.,.,', 'pl0d/pl0ds.dr', 38
2090
2073
 
2091
2074
  STEntry = Struct.new(:kind, :narg, :value)
2092
2075
  def initialize
@@ -2118,9 +2101,9 @@ module_eval <<-'.,.,120998293030813.,.,', 'pl0d/pl0ds.dr', 38
2118
2101
  warn e.pretty_inspect
2119
2102
  end
2120
2103
 
2121
- .,.,120998293030813.,.,
2104
+ .,.,122745803753111.,.,
2122
2105
 
2123
- module_eval <<-'.,.,12099829305176.,.,', 'pl0d/pl0ds.dr', 69
2106
+ module_eval <<-'.,.,122745803710602.,.,', 'pl0d/pl0ds.dr', 69
2124
2107
  def visit_Node_program node
2125
2108
 
2126
2109
  visit(node.block)
@@ -2130,9 +2113,9 @@ def visit_Node_program node
2130
2113
  raise
2131
2114
 
2132
2115
  end
2133
- .,.,12099829305176.,.,
2116
+ .,.,122745803710602.,.,
2134
2117
 
2135
- module_eval <<-'.,.,120998293049390.,.,', 'pl0d/pl0ds.dr', 73
2118
+ module_eval <<-'.,.,122745803712198.,.,', 'pl0d/pl0ds.dr', 73
2136
2119
  def visit_Node_block node
2137
2120
 
2138
2121
  @env.push({})
@@ -2145,9 +2128,9 @@ def visit_Node_block node
2145
2128
  raise
2146
2129
 
2147
2130
  end
2148
- .,.,120998293049390.,.,
2131
+ .,.,122745803712198.,.,
2149
2132
 
2150
- module_eval <<-'.,.,120998293012688.,.,', 'pl0d/pl0ds.dr', 80
2133
+ module_eval <<-'.,.,122745803756671.,.,', 'pl0d/pl0ds.dr', 80
2151
2134
  def visit_Node_var_decl node
2152
2135
 
2153
2136
  node.idents.to_a.each do |ident|
@@ -2163,9 +2146,9 @@ def visit_Node_var_decl node
2163
2146
  raise
2164
2147
 
2165
2148
  end
2166
- .,.,120998293012688.,.,
2149
+ .,.,122745803756671.,.,
2167
2150
 
2168
- module_eval <<-'.,.,120998293023822.,.,', 'pl0d/pl0ds.dr', 90
2151
+ module_eval <<-'.,.,122745803763047.,.,', 'pl0d/pl0ds.dr', 90
2169
2152
  def visit_Node_const_decl node
2170
2153
 
2171
2154
  visit(node.const_inits)
@@ -2175,9 +2158,9 @@ def visit_Node_const_decl node
2175
2158
  raise
2176
2159
 
2177
2160
  end
2178
- .,.,120998293023822.,.,
2161
+ .,.,122745803763047.,.,
2179
2162
 
2180
- module_eval <<-'.,.,120998293050532.,.,', 'pl0d/pl0ds.dr', 94
2163
+ module_eval <<-'.,.,12274580374346.,.,', 'pl0d/pl0ds.dr', 94
2181
2164
  def visit_Node_const_init node
2182
2165
 
2183
2166
  if @env.last[node.ident.value]
@@ -2191,9 +2174,9 @@ def visit_Node_const_init node
2191
2174
  raise
2192
2175
 
2193
2176
  end
2194
- .,.,120998293050532.,.,
2177
+ .,.,12274580374346.,.,
2195
2178
 
2196
- module_eval <<-'.,.,12099829308926.,.,', 'pl0d/pl0ds.dr', 102
2179
+ module_eval <<-'.,.,122745803759988.,.,', 'pl0d/pl0ds.dr', 102
2197
2180
  def visit_Node_func_decl node
2198
2181
 
2199
2182
  if @env[0][node.ident.value]
@@ -2220,9 +2203,9 @@ def visit_Node_func_decl node
2220
2203
  raise
2221
2204
 
2222
2205
  end
2223
- .,.,12099829308926.,.,
2206
+ .,.,122745803759988.,.,
2224
2207
 
2225
- module_eval <<-'.,.,12099829302167.,.,', 'pl0d/pl0ds.dr', 123
2208
+ module_eval <<-'.,.,122745803743066.,.,', 'pl0d/pl0ds.dr', 123
2226
2209
  def visit_Node_nop_stmt node
2227
2210
 
2228
2211
 
@@ -2231,9 +2214,9 @@ def visit_Node_nop_stmt node
2231
2214
  raise
2232
2215
 
2233
2216
  end
2234
- .,.,12099829302167.,.,
2217
+ .,.,122745803743066.,.,
2235
2218
 
2236
- module_eval <<-'.,.,120998293024002.,.,', 'pl0d/pl0ds.dr', 126
2219
+ module_eval <<-'.,.,12274580372012.,.,', 'pl0d/pl0ds.dr', 126
2237
2220
  def visit_Node_assign_stmt node
2238
2221
 
2239
2222
  if ent = lookup(node.ident.value)
@@ -2251,9 +2234,9 @@ def visit_Node_assign_stmt node
2251
2234
  raise
2252
2235
 
2253
2236
  end
2254
- .,.,120998293024002.,.,
2237
+ .,.,12274580372012.,.,
2255
2238
 
2256
- module_eval <<-'.,.,120998293048902.,.,', 'pl0d/pl0ds.dr', 138
2239
+ module_eval <<-'.,.,122745803760775.,.,', 'pl0d/pl0ds.dr', 138
2257
2240
  def visit_Node_begin_stmt node
2258
2241
 
2259
2242
  visit(node.stmt)
@@ -2264,9 +2247,9 @@ def visit_Node_begin_stmt node
2264
2247
  raise
2265
2248
 
2266
2249
  end
2267
- .,.,120998293048902.,.,
2250
+ .,.,122745803760775.,.,
2268
2251
 
2269
- module_eval <<-'.,.,120998293040187.,.,', 'pl0d/pl0ds.dr', 143
2252
+ module_eval <<-'.,.,122745803752460.,.,', 'pl0d/pl0ds.dr', 143
2270
2253
  def visit_Node_if_stmt node
2271
2254
 
2272
2255
  if visit(node.cond).value != 0
@@ -2278,9 +2261,9 @@ def visit_Node_if_stmt node
2278
2261
  raise
2279
2262
 
2280
2263
  end
2281
- .,.,120998293040187.,.,
2264
+ .,.,122745803752460.,.,
2282
2265
 
2283
- module_eval <<-'.,.,120998293044323.,.,', 'pl0d/pl0ds.dr', 149
2266
+ module_eval <<-'.,.,122745803711909.,.,', 'pl0d/pl0ds.dr', 149
2284
2267
  def visit_Node_while_stmt node
2285
2268
 
2286
2269
  while visit(node.cond).value != 0
@@ -2292,9 +2275,9 @@ def visit_Node_while_stmt node
2292
2275
  raise
2293
2276
 
2294
2277
  end
2295
- .,.,120998293044323.,.,
2278
+ .,.,122745803711909.,.,
2296
2279
 
2297
- module_eval <<-'.,.,120998293053102.,.,', 'pl0d/pl0ds.dr', 155
2280
+ module_eval <<-'.,.,12274580374630.,.,', 'pl0d/pl0ds.dr', 155
2298
2281
  def visit_Node_return_stmt node
2299
2282
 
2300
2283
  ent = nil
@@ -2309,9 +2292,9 @@ def visit_Node_return_stmt node
2309
2292
  raise
2310
2293
 
2311
2294
  end
2312
- .,.,120998293053102.,.,
2295
+ .,.,12274580374630.,.,
2313
2296
 
2314
- module_eval <<-'.,.,120998293056491.,.,', 'pl0d/pl0ds.dr', 164
2297
+ module_eval <<-'.,.,122745803718131.,.,', 'pl0d/pl0ds.dr', 164
2315
2298
  def visit_Node_apply node
2316
2299
 
2317
2300
  ent = nil
@@ -2337,9 +2320,9 @@ def visit_Node_apply node
2337
2320
  raise
2338
2321
 
2339
2322
  end
2340
- .,.,120998293056491.,.,
2323
+ .,.,122745803718131.,.,
2341
2324
 
2342
- module_eval <<-'.,.,120998293060345.,.,', 'pl0d/pl0ds.dr', 184
2325
+ module_eval <<-'.,.,122745803748774.,.,', 'pl0d/pl0ds.dr', 184
2343
2326
  def visit_Node_refv node
2344
2327
 
2345
2328
  unless ent = lookup(node.ident.value)
@@ -2356,9 +2339,9 @@ def visit_Node_refv node
2356
2339
  raise
2357
2340
 
2358
2341
  end
2359
- .,.,120998293060345.,.,
2342
+ .,.,122745803748774.,.,
2360
2343
 
2361
- module_eval <<-'.,.,120998293043567.,.,', 'pl0d/pl0ds.dr', 195
2344
+ module_eval <<-'.,.,122745803759286.,.,', 'pl0d/pl0ds.dr', 195
2362
2345
  def visit_Node_number node
2363
2346
 
2364
2347
  node.value = node.n.value
@@ -2368,13 +2351,13 @@ def visit_Node_number node
2368
2351
  raise
2369
2352
 
2370
2353
  end
2371
- .,.,120998293043567.,.,
2354
+ .,.,122745803759286.,.,
2372
2355
 
2373
2356
  end
2374
2357
 
2375
2358
  class D4PL0d::ASTBuilder < Depager::LALR::Action #:nodoc:all
2376
2359
  include Depager::DecoratorUtils
2377
- []
2360
+
2378
2361
  on_reduce = [
2379
2362
  nil,
2380
2363
  :_ast_0,
@@ -2431,269 +2414,269 @@ class D4PL0d::ASTBuilder < Depager::LALR::Action #:nodoc:all
2431
2414
  end
2432
2415
 
2433
2416
 
2434
- module_eval <<-'.,.,120998293028968.,.,', 'pl0d/pl0ds.dr', 202
2417
+ module_eval <<-'.,.,122745803713657.,.,', 'pl0d/pl0ds.dr', 202
2435
2418
  def _ast_0 val
2436
2419
  Node_program.new(val[0].lineno, val[0])
2437
2420
  end
2438
- .,.,120998293028968.,.,
2421
+ .,.,122745803713657.,.,
2439
2422
 
2440
- module_eval <<-'.,.,12099829301180.,.,', 'pl0d/pl0ds.dr', 207
2423
+ module_eval <<-'.,.,122745803762417.,.,', 'pl0d/pl0ds.dr', 207
2441
2424
  def _ast_1 val
2442
2425
  Node_block.new(val[0].lineno, val[0], val[1])
2443
2426
  end
2444
- .,.,12099829301180.,.,
2427
+ .,.,122745803762417.,.,
2445
2428
 
2446
- module_eval <<-'.,.,120998293015897.,.,', 'pl0d/pl0ds.dr', 211
2429
+ module_eval <<-'.,.,122745803749311.,.,', 'pl0d/pl0ds.dr', 211
2447
2430
  def _ast_2 val
2448
2431
  NodeList.new(basis.file.lineno, [])
2449
2432
  end
2450
- .,.,120998293015897.,.,
2433
+ .,.,122745803749311.,.,
2451
2434
 
2452
- module_eval <<-'.,.,120998293049270.,.,', 'pl0d/pl0ds.dr', 213
2435
+ module_eval <<-'.,.,122745803732974.,.,', 'pl0d/pl0ds.dr', 213
2453
2436
  def _ast_3 val
2454
2437
  val[0].push(val[1])
2455
2438
  end
2456
- .,.,120998293049270.,.,
2439
+ .,.,122745803732974.,.,
2457
2440
 
2458
- module_eval <<-'.,.,12099829307013.,.,', 'pl0d/pl0ds.dr', 218
2441
+ module_eval <<-'.,.,122745803722420.,.,', 'pl0d/pl0ds.dr', 218
2459
2442
  def _ast_4 val
2460
2443
  Node_const_decl.new(val[0].lineno, val[1])
2461
2444
  end
2462
- .,.,12099829307013.,.,
2445
+ .,.,122745803722420.,.,
2463
2446
 
2464
- module_eval <<-'.,.,120998293039291.,.,', 'pl0d/pl0ds.dr', 220
2447
+ module_eval <<-'.,.,12274580377011.,.,', 'pl0d/pl0ds.dr', 220
2465
2448
  def _ast_5 val
2466
2449
  Node_var_decl.new(val[0].lineno, val[1])
2467
2450
  end
2468
- .,.,120998293039291.,.,
2451
+ .,.,12274580377011.,.,
2469
2452
 
2470
- module_eval <<-'.,.,120998293039568.,.,', 'pl0d/pl0ds.dr', 222
2453
+ module_eval <<-'.,.,12274580372583.,.,', 'pl0d/pl0ds.dr', 222
2471
2454
  def _ast_6 val
2472
2455
  Node_func_decl.new(val[0].lineno, val[1], NodeList.new(basis.file.lineno, []), val[4])
2473
2456
  end
2474
- .,.,120998293039568.,.,
2457
+ .,.,12274580372583.,.,
2475
2458
 
2476
- module_eval <<-'.,.,120998293035123.,.,', 'pl0d/pl0ds.dr', 224
2459
+ module_eval <<-'.,.,122745803761637.,.,', 'pl0d/pl0ds.dr', 224
2477
2460
  def _ast_7 val
2478
2461
  Node_func_decl.new(val[0].lineno, val[1], val[3], val[5])
2479
2462
  end
2480
- .,.,120998293035123.,.,
2463
+ .,.,122745803761637.,.,
2481
2464
 
2482
- module_eval <<-'.,.,120998293017209.,.,', 'pl0d/pl0ds.dr', 229
2465
+ module_eval <<-'.,.,12274580378445.,.,', 'pl0d/pl0ds.dr', 229
2483
2466
  def _ast_8 val
2484
2467
  NodeList.new(val[0].lineno, [val[0]])
2485
2468
  end
2486
- .,.,120998293017209.,.,
2469
+ .,.,12274580378445.,.,
2487
2470
 
2488
- module_eval <<-'.,.,120998293036515.,.,', 'pl0d/pl0ds.dr', 231
2471
+ module_eval <<-'.,.,122745803733482.,.,', 'pl0d/pl0ds.dr', 231
2489
2472
  def _ast_9 val
2490
2473
  val[0].push(val[2])
2491
2474
  end
2492
- .,.,120998293036515.,.,
2475
+ .,.,122745803733482.,.,
2493
2476
 
2494
- module_eval <<-'.,.,120998293030836.,.,', 'pl0d/pl0ds.dr', 236
2477
+ module_eval <<-'.,.,122745803723547.,.,', 'pl0d/pl0ds.dr', 236
2495
2478
  def _ast_10 val
2496
2479
  Node_const_init.new(val[0].lineno, val[0], val[2])
2497
2480
  end
2498
- .,.,120998293030836.,.,
2481
+ .,.,122745803723547.,.,
2499
2482
 
2500
- module_eval <<-'.,.,120998293047982.,.,', 'pl0d/pl0ds.dr', 241
2483
+ module_eval <<-'.,.,12274580375797.,.,', 'pl0d/pl0ds.dr', 241
2501
2484
  def _ast_11 val
2502
2485
  NodeList.new(val[0].lineno, [val[0]])
2503
2486
  end
2504
- .,.,120998293047982.,.,
2487
+ .,.,12274580375797.,.,
2505
2488
 
2506
- module_eval <<-'.,.,120998293022999.,.,', 'pl0d/pl0ds.dr', 243
2489
+ module_eval <<-'.,.,122745803727046.,.,', 'pl0d/pl0ds.dr', 243
2507
2490
  def _ast_12 val
2508
2491
  val[0].push(val[2])
2509
2492
  end
2510
- .,.,120998293022999.,.,
2493
+ .,.,122745803727046.,.,
2511
2494
 
2512
- module_eval <<-'.,.,12099829302646.,.,', 'pl0d/pl0ds.dr', 247
2495
+ module_eval <<-'.,.,12274580376389.,.,', 'pl0d/pl0ds.dr', 247
2513
2496
  def _ast_13 val
2514
2497
  Node_nop_stmt.new(basis.file.lineno, NodeList.new(basis.file.lineno, []))
2515
2498
  end
2516
- .,.,12099829302646.,.,
2499
+ .,.,12274580376389.,.,
2517
2500
 
2518
- module_eval <<-'.,.,12099829305298.,.,', 'pl0d/pl0ds.dr', 249
2501
+ module_eval <<-'.,.,122745803758162.,.,', 'pl0d/pl0ds.dr', 249
2519
2502
  def _ast_14 val
2520
2503
  Node_assign_stmt.new(val[0].lineno, val[0], val[2])
2521
2504
  end
2522
- .,.,12099829305298.,.,
2505
+ .,.,122745803758162.,.,
2523
2506
 
2524
- module_eval <<-'.,.,120998293020763.,.,', 'pl0d/pl0ds.dr', 251
2507
+ module_eval <<-'.,.,122745803757908.,.,', 'pl0d/pl0ds.dr', 251
2525
2508
  def _ast_15 val
2526
2509
  Node_begin_stmt.new(val[0].lineno, val[1], val[2])
2527
2510
  end
2528
- .,.,120998293020763.,.,
2511
+ .,.,122745803757908.,.,
2529
2512
 
2530
- module_eval <<-'.,.,12099829309981.,.,', 'pl0d/pl0ds.dr', 253
2513
+ module_eval <<-'.,.,122745803737264.,.,', 'pl0d/pl0ds.dr', 253
2531
2514
  def _ast_16 val
2532
2515
  Node_if_stmt.new(val[0].lineno, val[1], val[3])
2533
2516
  end
2534
- .,.,12099829309981.,.,
2517
+ .,.,122745803737264.,.,
2535
2518
 
2536
- module_eval <<-'.,.,120998293050109.,.,', 'pl0d/pl0ds.dr', 255
2519
+ module_eval <<-'.,.,122745803762624.,.,', 'pl0d/pl0ds.dr', 255
2537
2520
  def _ast_17 val
2538
2521
  Node_while_stmt.new(val[0].lineno, val[1], val[3])
2539
2522
  end
2540
- .,.,120998293050109.,.,
2523
+ .,.,122745803762624.,.,
2541
2524
 
2542
- module_eval <<-'.,.,120998293013512.,.,', 'pl0d/pl0ds.dr', 257
2525
+ module_eval <<-'.,.,122745803760629.,.,', 'pl0d/pl0ds.dr', 257
2543
2526
  def _ast_18 val
2544
2527
  Node_return_stmt.new(val[0].lineno, val[1])
2545
2528
  end
2546
- .,.,120998293013512.,.,
2529
+ .,.,122745803760629.,.,
2547
2530
 
2548
- module_eval <<-'.,.,120998293056086.,.,', 'pl0d/pl0ds.dr', 259
2531
+ module_eval <<-'.,.,122745803718773.,.,', 'pl0d/pl0ds.dr', 259
2549
2532
  def _ast_19 val
2550
2533
  Node_apply.new(val[0].lineno, Depager::Token['write'], NodeList.new(val[0].lineno, [val[1]]))
2551
2534
  end
2552
- .,.,120998293056086.,.,
2535
+ .,.,122745803718773.,.,
2553
2536
 
2554
- module_eval <<-'.,.,120998293043974.,.,', 'pl0d/pl0ds.dr', 261
2537
+ module_eval <<-'.,.,122745803738626.,.,', 'pl0d/pl0ds.dr', 261
2555
2538
  def _ast_20 val
2556
2539
  Node_apply.new(val[0].lineno, Depager::Token['writeln'], NodeList.new(basis.file.lineno, []))
2557
2540
  end
2558
- .,.,120998293043974.,.,
2541
+ .,.,122745803738626.,.,
2559
2542
 
2560
- module_eval <<-'.,.,120998293061866.,.,', 'pl0d/pl0ds.dr', 265
2543
+ module_eval <<-'.,.,122745803715270.,.,', 'pl0d/pl0ds.dr', 265
2561
2544
  def _ast_21 val
2562
2545
  NodeList.new(basis.file.lineno, [])
2563
2546
  end
2564
- .,.,120998293061866.,.,
2547
+ .,.,122745803715270.,.,
2565
2548
 
2566
- module_eval <<-'.,.,120998293056171.,.,', 'pl0d/pl0ds.dr', 267
2549
+ module_eval <<-'.,.,122745803715959.,.,', 'pl0d/pl0ds.dr', 267
2567
2550
  def _ast_22 val
2568
2551
  val[0].push(val[2])
2569
2552
  end
2570
- .,.,120998293056171.,.,
2553
+ .,.,122745803715959.,.,
2571
2554
 
2572
- module_eval <<-'.,.,120998293047443.,.,', 'pl0d/pl0ds.dr', 272
2555
+ module_eval <<-'.,.,12274580378713.,.,', 'pl0d/pl0ds.dr', 272
2573
2556
  def _ast_23 val
2574
2557
  Node_apply.new(val[0].lineno, Depager::Token['odd'], NodeList.new(val[0].lineno, [val[1]]))
2575
2558
  end
2576
- .,.,120998293047443.,.,
2559
+ .,.,12274580378713.,.,
2577
2560
 
2578
- module_eval <<-'.,.,12099829302565.,.,', 'pl0d/pl0ds.dr', 274
2561
+ module_eval <<-'.,.,12274580374814.,.,', 'pl0d/pl0ds.dr', 274
2579
2562
  def _ast_24 val
2580
2563
  Node_apply.new(val[0].lineno, Depager::Token['='], NodeList.new(val[0].lineno, [val[0], val[2]]))
2581
2564
  end
2582
- .,.,12099829302565.,.,
2565
+ .,.,12274580374814.,.,
2583
2566
 
2584
- module_eval <<-'.,.,12099829301068.,.,', 'pl0d/pl0ds.dr', 276
2567
+ module_eval <<-'.,.,122745803734597.,.,', 'pl0d/pl0ds.dr', 276
2585
2568
  def _ast_25 val
2586
2569
  Node_apply.new(val[0].lineno, Depager::Token['<>'], NodeList.new(val[0].lineno, [val[0], val[2]]))
2587
2570
  end
2588
- .,.,12099829301068.,.,
2571
+ .,.,122745803734597.,.,
2589
2572
 
2590
- module_eval <<-'.,.,120998293039924.,.,', 'pl0d/pl0ds.dr', 278
2573
+ module_eval <<-'.,.,122745803754023.,.,', 'pl0d/pl0ds.dr', 278
2591
2574
  def _ast_26 val
2592
2575
  Node_apply.new(val[0].lineno, Depager::Token['<'], NodeList.new(val[0].lineno, [val[0], val[2]]))
2593
2576
  end
2594
- .,.,120998293039924.,.,
2577
+ .,.,122745803754023.,.,
2595
2578
 
2596
- module_eval <<-'.,.,120998293038866.,.,', 'pl0d/pl0ds.dr', 280
2579
+ module_eval <<-'.,.,122745803747744.,.,', 'pl0d/pl0ds.dr', 280
2597
2580
  def _ast_27 val
2598
2581
  Node_apply.new(val[0].lineno, Depager::Token['>'], NodeList.new(val[0].lineno, [val[0], val[2]]))
2599
2582
  end
2600
- .,.,120998293038866.,.,
2583
+ .,.,122745803747744.,.,
2601
2584
 
2602
- module_eval <<-'.,.,120998293023733.,.,', 'pl0d/pl0ds.dr', 282
2585
+ module_eval <<-'.,.,122745803723623.,.,', 'pl0d/pl0ds.dr', 282
2603
2586
  def _ast_28 val
2604
2587
  Node_apply.new(val[0].lineno, Depager::Token['<='], NodeList.new(val[0].lineno, [val[0], val[2]]))
2605
2588
  end
2606
- .,.,120998293023733.,.,
2589
+ .,.,122745803723623.,.,
2607
2590
 
2608
- module_eval <<-'.,.,120998293029020.,.,', 'pl0d/pl0ds.dr', 284
2591
+ module_eval <<-'.,.,122745803731202.,.,', 'pl0d/pl0ds.dr', 284
2609
2592
  def _ast_29 val
2610
2593
  Node_apply.new(val[0].lineno, Depager::Token['>='], NodeList.new(val[0].lineno, [val[0], val[2]]))
2611
2594
  end
2612
- .,.,120998293029020.,.,
2595
+ .,.,122745803731202.,.,
2613
2596
 
2614
- module_eval <<-'.,.,12099829302639.,.,', 'pl0d/pl0ds.dr', 289
2597
+ module_eval <<-'.,.,122745803753646.,.,', 'pl0d/pl0ds.dr', 289
2615
2598
  def _ast_30 val
2616
2599
  Node_apply.new(val[0].lineno, Depager::Token['+'], NodeList.new(val[0].lineno, [val[0], val[2]]))
2617
2600
  end
2618
- .,.,12099829302639.,.,
2601
+ .,.,122745803753646.,.,
2619
2602
 
2620
- module_eval <<-'.,.,120998293052461.,.,', 'pl0d/pl0ds.dr', 291
2603
+ module_eval <<-'.,.,122745803723858.,.,', 'pl0d/pl0ds.dr', 291
2621
2604
  def _ast_31 val
2622
2605
  Node_apply.new(val[0].lineno, Depager::Token['-'], NodeList.new(val[0].lineno, [val[0], val[2]]))
2623
2606
  end
2624
- .,.,120998293052461.,.,
2607
+ .,.,122745803723858.,.,
2625
2608
 
2626
- module_eval <<-'.,.,120998293012310.,.,', 'pl0d/pl0ds.dr', 293
2609
+ module_eval <<-'.,.,122745803731132.,.,', 'pl0d/pl0ds.dr', 293
2627
2610
  def _ast_32 val
2628
2611
  val[0]
2629
2612
  end
2630
- .,.,120998293012310.,.,
2613
+ .,.,122745803731132.,.,
2631
2614
 
2632
- module_eval <<-'.,.,12099829309705.,.,', 'pl0d/pl0ds.dr', 295
2615
+ module_eval <<-'.,.,122745803722247.,.,', 'pl0d/pl0ds.dr', 295
2633
2616
  def _ast_33 val
2634
2617
  Node_apply.new(val[0].lineno, Depager::Token['UMINUS'], NodeList.new(val[0].lineno, [val[1]]))
2635
2618
  end
2636
- .,.,12099829309705.,.,
2619
+ .,.,122745803722247.,.,
2637
2620
 
2638
- module_eval <<-'.,.,120998293050902.,.,', 'pl0d/pl0ds.dr', 300
2621
+ module_eval <<-'.,.,122745803761813.,.,', 'pl0d/pl0ds.dr', 300
2639
2622
  def _ast_34 val
2640
2623
  Node_apply.new(val[0].lineno, Depager::Token['*'], NodeList.new(val[0].lineno, [val[0], val[2]]))
2641
2624
  end
2642
- .,.,120998293050902.,.,
2625
+ .,.,122745803761813.,.,
2643
2626
 
2644
- module_eval <<-'.,.,120998293030588.,.,', 'pl0d/pl0ds.dr', 302
2627
+ module_eval <<-'.,.,122745803758885.,.,', 'pl0d/pl0ds.dr', 302
2645
2628
  def _ast_35 val
2646
2629
  Node_apply.new(val[0].lineno, Depager::Token['/'], NodeList.new(val[0].lineno, [val[0], val[2]]))
2647
2630
  end
2648
- .,.,120998293030588.,.,
2631
+ .,.,122745803758885.,.,
2649
2632
 
2650
- module_eval <<-'.,.,120998293042608.,.,', 'pl0d/pl0ds.dr', 304
2633
+ module_eval <<-'.,.,122745803738159.,.,', 'pl0d/pl0ds.dr', 304
2651
2634
  def _ast_36 val
2652
2635
  val[0]
2653
2636
  end
2654
- .,.,120998293042608.,.,
2637
+ .,.,122745803738159.,.,
2655
2638
 
2656
- module_eval <<-'.,.,120998293040243.,.,', 'pl0d/pl0ds.dr', 309
2639
+ module_eval <<-'.,.,122745803725103.,.,', 'pl0d/pl0ds.dr', 309
2657
2640
  def _ast_37 val
2658
2641
  Node_refv.new(val[0].lineno, val[0])
2659
2642
  end
2660
- .,.,120998293040243.,.,
2643
+ .,.,122745803725103.,.,
2661
2644
 
2662
- module_eval <<-'.,.,120998293051665.,.,', 'pl0d/pl0ds.dr', 311
2645
+ module_eval <<-'.,.,12274580372405.,.,', 'pl0d/pl0ds.dr', 311
2663
2646
  def _ast_38 val
2664
2647
  Node_number.new(val[0].lineno, val[0])
2665
2648
  end
2666
- .,.,120998293051665.,.,
2649
+ .,.,12274580372405.,.,
2667
2650
 
2668
- module_eval <<-'.,.,120998293051059.,.,', 'pl0d/pl0ds.dr', 313
2651
+ module_eval <<-'.,.,1227458037216.,.,', 'pl0d/pl0ds.dr', 313
2669
2652
  def _ast_39 val
2670
2653
  Node_apply.new(val[0].lineno, val[0], NodeList.new(basis.file.lineno, []))
2671
2654
  end
2672
- .,.,120998293051059.,.,
2655
+ .,.,1227458037216.,.,
2673
2656
 
2674
- module_eval <<-'.,.,120998293058561.,.,', 'pl0d/pl0ds.dr', 315
2657
+ module_eval <<-'.,.,12274580371820.,.,', 'pl0d/pl0ds.dr', 315
2675
2658
  def _ast_40 val
2676
2659
  Node_apply.new(val[0].lineno, val[0], val[2])
2677
2660
  end
2678
- .,.,120998293058561.,.,
2661
+ .,.,12274580371820.,.,
2679
2662
 
2680
- module_eval <<-'.,.,120998293057987.,.,', 'pl0d/pl0ds.dr', 317
2663
+ module_eval <<-'.,.,122745803748521.,.,', 'pl0d/pl0ds.dr', 317
2681
2664
  def _ast_41 val
2682
2665
  val[1]
2683
2666
  end
2684
- .,.,120998293057987.,.,
2667
+ .,.,122745803748521.,.,
2685
2668
 
2686
- module_eval <<-'.,.,120998293032376.,.,', 'pl0d/pl0ds.dr', 322
2669
+ module_eval <<-'.,.,122745803744691.,.,', 'pl0d/pl0ds.dr', 322
2687
2670
  def _ast_42 val
2688
2671
  NodeList.new(val[0].lineno, [val[0]])
2689
2672
  end
2690
- .,.,120998293032376.,.,
2673
+ .,.,122745803744691.,.,
2691
2674
 
2692
- module_eval <<-'.,.,120998293064182.,.,', 'pl0d/pl0ds.dr', 324
2675
+ module_eval <<-'.,.,122745803717899.,.,', 'pl0d/pl0ds.dr', 324
2693
2676
  def _ast_43 val
2694
2677
  val[0].push(val[2])
2695
2678
  end
2696
- .,.,120998293064182.,.,
2679
+ .,.,122745803717899.,.,
2697
2680
 
2698
2681
  end
2699
2682
 
@@ -2707,7 +2690,7 @@ if __FILE__ == $0
2707
2690
  ### Main Code
2708
2691
  require 'pp'
2709
2692
  psr = createDecoratedPL0d
2710
- t, = psr.yyparse(STDIN)
2693
+ t, = psr.parse(STDIN)
2711
2694
  # pp t
2712
2695
  v = Visitor.new
2713
2696
  t.accept(v)