depager 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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)