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,7 +1,6 @@
1
- require 'depager/ast.rb'
1
+ require 'plugins/ast.rb'
2
2
  class ASTBuilderDepthFirstExtension < ASTBuilderExtension #:nodoc:all
3
3
  def gen_accept_code sym
4
4
  " @#{sym}.accept(v)\n"
5
5
  end
6
- Template = superclass::Template
7
6
  end
@@ -1,21 +1,21 @@
1
1
  %defext ATreeBuilderExtension
2
- %extend NVAction ('depager/nvaction.rb')
3
- %extend Lexer ('depager/lex.rb')
2
+ %extend NVAction ('plugins/nvaction.rb')
3
+ %extend Lexer ('plugins/lex.rb')
4
4
  %decorate @NVAction
5
- #%decorate ShiftReducePrinter ('depager/srp.rb')
5
+ #%decorate ShiftReducePrinter ('plugins/srp.rb')
6
6
  %inner{
7
7
  attr_accessor :optouter, :on_reduce
8
8
  def init_parser
9
9
  @optouter = []
10
10
  @on_reduce = []
11
11
  end
12
- def postRuleList
12
+ def post_rule_list
13
13
  g_parser.optouter <<
14
14
  gen_action_decorator_code(target_name, paramkey,
15
15
  @on_reduce, @optouter)
16
16
  end
17
17
  %}
18
- %hook postrhs
18
+ %hook post_rhs
19
19
  %banner '=>...'
20
20
  %%
21
21
  %LEX{
@@ -24,9 +24,9 @@ class ATreeBuilderExtension #:nodoc:all
24
24
  def __regext__ p
25
25
  super p, :default, nil
26
26
 
27
- @hook[0] = ATreeBuilderExtension_postrhs.new(p, @nparam, self)
28
- @h2p['postrhs'] = @hook[0]
29
- p.postrhs.push [@hook[0], :do_parse]
27
+ @hook[0] = ATreeBuilderExtension_post_rhs.new(p, @nparam, self)
28
+ @h2p['post_rhs'] = @hook[0]
29
+ p.hooks[:post_rhs].push [@hook[0], :do_parse]
30
30
 
31
31
  regext p
32
32
  end
@@ -37,7 +37,7 @@ class ATreeBuilderExtension #:nodoc:all
37
37
  @optouter = []
38
38
  @on_reduce = []
39
39
  end
40
- def postRuleList
40
+ def post_rule_list
41
41
  g_parser.optouter <<
42
42
  gen_action_decorator_code(target_name, paramkey,
43
43
  @on_reduce, @optouter)
@@ -48,12 +48,12 @@ end
48
48
  ### Outer Code
49
49
 
50
50
  ###
51
- ### ATreeBuilderExtension_postrhs - Part of Depager Extension (slave)
51
+ ### ATreeBuilderExtension_post_rhs - Part of Depager Extension (slave)
52
52
  ###
53
- module D4ATreeBuilderExtension_postrhs #:nodoc:all
53
+ module D4ATreeBuilderExtension_post_rhs #:nodoc:all
54
54
  end
55
55
 
56
- class ATreeBuilderExtension_postrhs < Depager::LALR::Basis #:nodoc:all
56
+ class ATreeBuilderExtension_post_rhs < Depager::LALR::Basis #:nodoc:all
57
57
  include Depager::ExtensionUtils
58
58
 
59
59
 
@@ -102,14 +102,14 @@ class ATreeBuilderExtension_postrhs < Depager::LALR::Basis #:nodoc:all
102
102
  [ nil, nil, nil, 4, nil, nil, nil, nil, ],
103
103
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
104
104
  [ nil, nil, nil, nil, 5, nil, nil, nil, ],
105
- [ nil, nil, nil, 9, nil, 6, nil, 10, ],
105
+ [ nil, nil, nil, 7, nil, 10, nil, 6, ],
106
106
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
107
- [ nil, nil, nil, nil, nil, 11, 12, nil, ],
108
107
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
108
+ [ nil, nil, nil, nil, nil, 12, 11, nil, ],
109
109
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
110
110
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
111
+ [ nil, nil, nil, 7, nil, nil, nil, 6, ],
111
112
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
112
- [ nil, nil, nil, 9, nil, nil, nil, 10, ],
113
113
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
114
114
  ]
115
115
  ### Default Reduce Table
@@ -120,13 +120,13 @@ class ATreeBuilderExtension_postrhs < Depager::LALR::Basis #:nodoc:all
120
120
  -1,
121
121
  -4,
122
122
  nil,
123
- -2,
123
+ -8,
124
+ -7,
124
125
  nil,
125
126
  -5,
126
- -7,
127
- -8,
128
- -3,
127
+ -2,
129
128
  nil,
129
+ -3,
130
130
  -6,
131
131
  ]
132
132
  defred_after_shift_table = [
@@ -136,13 +136,13 @@ class ATreeBuilderExtension_postrhs < Depager::LALR::Basis #:nodoc:all
136
136
  -1,
137
137
  nil,
138
138
  nil,
139
- -2,
139
+ -8,
140
+ -7,
140
141
  nil,
141
142
  -5,
142
- -7,
143
- -8,
144
- -3,
143
+ -2,
145
144
  nil,
145
+ -3,
146
146
  -6,
147
147
  ]
148
148
  ### Nonterm to Int
@@ -166,8 +166,7 @@ class ATreeBuilderExtension_postrhs < Depager::LALR::Basis #:nodoc:all
166
166
  [ nil, 3, nil, nil, ],
167
167
  [ nil, nil, nil, nil, ],
168
168
  [ nil, nil, nil, nil, ],
169
- [ nil, nil, 7, 8, ],
170
- [ nil, nil, nil, nil, ],
169
+ [ nil, nil, 8, 9, ],
171
170
  [ nil, nil, nil, nil, ],
172
171
  [ nil, nil, nil, nil, ],
173
172
  [ nil, nil, nil, nil, ],
@@ -175,6 +174,7 @@ class ATreeBuilderExtension_postrhs < Depager::LALR::Basis #:nodoc:all
175
174
  [ nil, nil, nil, nil, ],
176
175
  [ nil, nil, nil, 13, ],
177
176
  [ nil, nil, nil, nil, ],
177
+ [ nil, nil, nil, nil, ],
178
178
  ]
179
179
 
180
180
  Tables = [ reduce_table, nparams, action_table,
@@ -187,7 +187,7 @@ class ATreeBuilderExtension_postrhs < Depager::LALR::Basis #:nodoc:all
187
187
  @g_parser = @p = p
188
188
  @master = @m = master
189
189
  @nparam = nparam
190
- @dect = D4ATreeBuilderExtension_postrhs::NVAction.new(self)
190
+ @dect = D4ATreeBuilderExtension_post_rhs::NVAction.new(self)
191
191
  init_parser
192
192
  end
193
193
 
@@ -251,9 +251,9 @@ end
251
251
 
252
252
  ### Outer Code
253
253
 
254
- class D4ATreeBuilderExtension_postrhs::NVAction < Depager::LALR::Action #:nodoc:all
254
+ class D4ATreeBuilderExtension_post_rhs::NVAction < Depager::LALR::Action #:nodoc:all
255
255
  include Depager::DecoratorUtils
256
- []
256
+
257
257
  on_reduce = [
258
258
  nil,
259
259
  :_act_0,
@@ -274,7 +274,7 @@ class D4ATreeBuilderExtension_postrhs::NVAction < Depager::LALR::Action #:nodoc:
274
274
  end
275
275
 
276
276
 
277
- module_eval <<-'.,.,120998292334355.,.,', 'atree.dr', 32
277
+ module_eval <<-'.,.,122745803312021.,.,', 'atree.dr', 32
278
278
  def _act_0 val
279
279
  _EG, _ast, = *val
280
280
 
@@ -284,63 +284,63 @@ def _act_0 val
284
284
  master.on_reduce[n] = ":_atree_#{n}"
285
285
 
286
286
  end
287
- .,.,120998292334355.,.,
287
+ .,.,122745803312021.,.,
288
288
 
289
- module_eval <<-'.,.,120998292322383.,.,', 'atree.dr', 40
289
+ module_eval <<-'.,.,122745803352334.,.,', 'atree.dr', 40
290
290
  def _act_1 val
291
291
  _ID, _, _, = *val
292
292
  "[:#{_ID.value}]"
293
293
 
294
294
  end
295
- .,.,120998292322383.,.,
295
+ .,.,122745803352334.,.,
296
296
 
297
- module_eval <<-'.,.,120998292327560.,.,', 'atree.dr', 41
297
+ module_eval <<-'.,.,122745803310141.,.,', 'atree.dr', 41
298
298
  def _act_2 val
299
299
  _ID, _, _fact_list, _, = *val
300
300
  "[:#{_ID.value}, #{_fact_list.join(',')}]"
301
301
 
302
302
  end
303
- .,.,120998292327560.,.,
303
+ .,.,122745803310141.,.,
304
304
 
305
- module_eval <<-'.,.,120998292335893.,.,', 'atree.dr', 42
305
+ module_eval <<-'.,.,12274580336943.,.,', 'atree.dr', 42
306
306
  def _act_3 val
307
307
  _ID, = *val
308
308
  "val[#{g_parser.name_to_rhs_index(_ID.value)}]"
309
309
 
310
310
  end
311
- .,.,120998292335893.,.,
311
+ .,.,12274580336943.,.,
312
312
 
313
- module_eval <<-'.,.,120998292340950.,.,', 'atree.dr', 45
313
+ module_eval <<-'.,.,122745803340243.,.,', 'atree.dr', 45
314
314
  def _act_4 val
315
315
  _fact, = *val
316
316
  [ _fact ]
317
317
 
318
318
  end
319
- .,.,120998292340950.,.,
319
+ .,.,122745803340243.,.,
320
320
 
321
- module_eval <<-'.,.,120998292327661.,.,', 'atree.dr', 46
321
+ module_eval <<-'.,.,122745803340227.,.,', 'atree.dr', 46
322
322
  def _act_5 val
323
323
  _fact_list, _, _fact, = *val
324
324
  _fact_list.push _fact
325
325
 
326
326
  end
327
- .,.,120998292327661.,.,
327
+ .,.,122745803340227.,.,
328
328
 
329
- module_eval <<-'.,.,120998292362107.,.,', 'atree.dr', 49
329
+ module_eval <<-'.,.,122745803346290.,.,', 'atree.dr', 49
330
330
  def _act_6 val
331
331
  _ID, = *val
332
332
  "val[#{g_parser.name_to_rhs_index(_ID.value)}]"
333
333
 
334
334
  end
335
- .,.,120998292362107.,.,
335
+ .,.,122745803346290.,.,
336
336
 
337
- module_eval <<-'.,.,120998292336597.,.,', 'atree.dr', 50
337
+ module_eval <<-'.,.,122745803310739.,.,', 'atree.dr', 50
338
338
  def _act_7 val
339
339
  _STR, = *val
340
340
  "'#{_STR.value}'"
341
341
 
342
342
  end
343
- .,.,120998292336597.,.,
343
+ .,.,122745803310739.,.,
344
344
 
345
345
  end
346
346
 
@@ -1,9 +1,8 @@
1
1
  %defext CSTBuilderExtension
2
- %extend Lexer ('depager/lex.rb')
3
- %extend NVAction ('depager/nvaction.rb')
2
+ %extend Lexer ('plugins/lex.rb')
3
+ %extend NVAction ('plugins/nvaction.rb')
4
4
  %decorate @NVAction
5
- #%decorate ShiftReducePrinter ('depager/srp.rb')
6
- %mixin ActionParser ('depager/parse_action')
5
+ #%decorate ShiftReducePrinter ('plugins/srp.rb')
7
6
  %inner{
8
7
  attr_accessor :optouter, :nodes_code
9
8
  def init_parser
@@ -17,15 +16,13 @@
17
16
  def modify_action_code code
18
17
  code.gsub(/~([a-z_])/, 'node.\1')
19
18
  end
20
- def postRhs
21
- code = ''
22
- lineno = g_parser.lineno
23
- if token[0] == '{'
24
- @line0, @line = g_parser.line0, g_parser.oldline
19
+ def post_rhs
20
+ code, lineno = '', g_parser.lineno
21
+ if g_parser.line =~ /\s*\{/
22
+ @line0, @line = g_parser.line0, g_parser.line
25
23
  code = parse_action
26
-
27
- fixline @line
28
- gettoken
24
+
25
+ g_parser.update_context @line
29
26
  end
30
27
 
31
28
  node_name = "#{lhs_name}_#{nrhs}"
@@ -67,7 +64,7 @@
67
64
 
68
65
  @on_reduce[nrules] = ":_cst_#{nrules}"
69
66
  end
70
- def postRuleList
67
+ def post_rule_list
71
68
  code = unindent %{
72
69
  class Node
73
70
  def accept
@@ -88,16 +85,15 @@
88
85
  @on_reduce, @optouter)
89
86
  end
90
87
  %}
91
- %hook prerulelist /%CST\{\s*\Z/ skip
88
+ %hook pre_rule_list /%CST\{\s*\Z/ skip
92
89
  %banner '%CST{ ... }'
93
- %mixin ActionParser ('depager/parse_action')
94
90
  %%
95
91
 
96
92
  %LEX{
97
93
  /\s+/, /#.*/ { }
98
94
  /%\}\s*\Z/ { yield nil,nil }
99
- 'Node' { yield _Token(:NODE, $&) }
100
- '{' ! { ln = lineno; yield _Token(:ACTION, parse_action, ln) }
95
+ 'Node' { yield token(:NODE, $&) }
96
+ '{' ! { ln = lineno; yield token(:ACTION, parse_action, ln) }
101
97
  %}
102
98
 
103
99
  #begin-rule
@@ -127,7 +123,7 @@
127
123
  ;
128
124
  #end-rule
129
125
  %%
130
- %hook postlhs /\[/ skip
126
+ %hook post_lhs /\[/ skip
131
127
  %banner '[ ... ]'
132
128
  %inner{
133
129
  def do_default
@@ -146,9 +142,9 @@
146
142
  /\A\s+/ { } #skip blank
147
143
  /""/,/''/,/[0-9]+/,
148
144
  /\{\s*\}/,/\[\s*\]/,
149
- /nil/ { yield _Token(:LIT, $&) }
150
- /\A[a-z][a-z_]*/ { yield _Token(:ID, $&) }
151
- /\A(.)/ { yield _Token($&, $&) }
145
+ /nil/ { yield token(:LIT, $&) }
146
+ /\A[a-z][a-z_]*/ { yield token(:ID, $&) }
147
+ /\A(.)/ { yield token($&, $&) }
152
148
  %}
153
149
 
154
150
  #begin-rule
@@ -4,7 +4,6 @@
4
4
  ###
5
5
  require 'pp.rb'
6
6
  require 'depager/parser.rb'
7
- require 'depager/parse_action'
8
7
 
9
8
 
10
9
  module D4CSTBuilderExtension #:nodoc:all
@@ -13,7 +12,6 @@ end
13
12
  class CSTBuilderExtension #:nodoc:all
14
13
  include Depager::ExtensionUtils
15
14
 
16
- include ActionParser
17
15
  attr_accessor :h2p
18
16
 
19
17
  def initialize
@@ -26,13 +24,13 @@ class CSTBuilderExtension #:nodoc:all
26
24
  def __regext__ p
27
25
  super p, :default, nil
28
26
 
29
- @hook[0] = CSTBuilderExtension_prerulelist.new(p, @nparam, self)
30
- @h2p['prerulelist'] = @hook[0]
31
- p.prerulelist.push [@hook[0], :do_parse]
27
+ @hook[0] = CSTBuilderExtension_post_lhs.new(p, @nparam, self)
28
+ @h2p['post_lhs'] = @hook[0]
29
+ p.hooks[:post_lhs].push [@hook[0], :do_parse]
32
30
 
33
- @hook[1] = CSTBuilderExtension_postlhs.new(p, @nparam, self)
34
- @h2p['postlhs'] = @hook[1]
35
- p.postlhs.push [@hook[1], :do_parse]
31
+ @hook[1] = CSTBuilderExtension_pre_rule_list.new(p, @nparam, self)
32
+ @h2p['pre_rule_list'] = @hook[1]
33
+ p.hooks[:pre_rule_list].push [@hook[1], :do_parse]
36
34
 
37
35
  regext p
38
36
  end
@@ -50,15 +48,13 @@ class CSTBuilderExtension #:nodoc:all
50
48
  def modify_action_code code
51
49
  code.gsub(/~([a-z_])/, 'node.\1')
52
50
  end
53
- def postRhs
54
- code = ''
55
- lineno = g_parser.lineno
56
- if token[0] == '{'
57
- @line0, @line = g_parser.line0, g_parser.oldline
51
+ def post_rhs
52
+ code, lineno = '', g_parser.lineno
53
+ if g_parser.line =~ /\s*\{/
54
+ @line0, @line = g_parser.line0, g_parser.line
58
55
  code = parse_action
59
-
60
- fixline @line
61
- gettoken
56
+
57
+ g_parser.update_context @line
62
58
  end
63
59
 
64
60
  node_name = "#{lhs_name}_#{nrhs}"
@@ -100,7 +96,7 @@ class CSTBuilderExtension #:nodoc:all
100
96
 
101
97
  @on_reduce[nrules] = ":_cst_#{nrules}"
102
98
  end
103
- def postRuleList
99
+ def post_rule_list
104
100
  code = unindent %{
105
101
  class Node
106
102
  def accept
@@ -126,15 +122,14 @@ end
126
122
  ### Outer Code
127
123
 
128
124
  ###
129
- ### CSTBuilderExtension_prerulelist - Part of Depager Extension (slave)
125
+ ### CSTBuilderExtension_pre_rule_list - Part of Depager Extension (slave)
130
126
  ###
131
- module D4CSTBuilderExtension_prerulelist #:nodoc:all
127
+ module D4CSTBuilderExtension_pre_rule_list #:nodoc:all
132
128
  end
133
129
 
134
- class CSTBuilderExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
130
+ class CSTBuilderExtension_pre_rule_list < Depager::LALR::Basis #:nodoc:all
135
131
  include Depager::ExtensionUtils
136
132
 
137
- include ActionParser
138
133
 
139
134
  ### Reduce Table
140
135
  reduce_table = [
@@ -167,10 +162,10 @@ class CSTBuilderExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
167
162
  ]
168
163
  ### Action Table
169
164
  action_table = [
170
- [ nil, nil, 3, nil, nil, ],
165
+ [ nil, nil, 1, nil, nil, ],
166
+ [ nil, nil, nil, 4, nil, ],
171
167
  [ ACC, nil, nil, nil, nil, ],
172
168
  [ nil, nil, nil, nil, 5, ],
173
- [ nil, nil, nil, 6, nil, ],
174
169
  [ nil, nil, nil, nil, nil, ],
175
170
  [ nil, nil, nil, 7, nil, ],
176
171
  [ nil, nil, nil, nil, nil, ],
@@ -180,11 +175,11 @@ class CSTBuilderExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
180
175
  defred_table = [
181
176
  -2,
182
177
  nil,
178
+ nil,
183
179
  -4,
180
+ -3,
184
181
  nil,
185
182
  -1,
186
- nil,
187
- -3,
188
183
  -5,
189
184
  ]
190
185
  defred_after_shift_table = [
@@ -192,9 +187,9 @@ class CSTBuilderExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
192
187
  nil,
193
188
  nil,
194
189
  nil,
195
- -1,
196
- nil,
197
190
  -3,
191
+ nil,
192
+ -1,
198
193
  -5,
199
194
  ]
200
195
  ### Nonterm to Int
@@ -211,10 +206,10 @@ class CSTBuilderExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
211
206
  ]
212
207
  ### Goto Table
213
208
  goto_table = [
214
- [ 1, 2, nil, ],
209
+ [ 2, 3, nil, ],
215
210
  [ nil, nil, nil, ],
216
- [ nil, nil, 4, ],
217
211
  [ nil, nil, nil, ],
212
+ [ nil, nil, 6, ],
218
213
  [ nil, nil, nil, ],
219
214
  [ nil, nil, nil, ],
220
215
  [ nil, nil, nil, ],
@@ -231,7 +226,7 @@ class CSTBuilderExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
231
226
  @g_parser = @p = p
232
227
  @master = @m = master
233
228
  @nparam = nparam
234
- @dect = D4CSTBuilderExtension_prerulelist::NVAction.new(self)
229
+ @dect = D4CSTBuilderExtension_pre_rule_list::NVAction.new(self)
235
230
  init_parser
236
231
  end
237
232
 
@@ -269,12 +264,12 @@ class CSTBuilderExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
269
264
 
270
265
  when /\ANode/
271
266
  @oldline = @line; @line = $'
272
- yield _Token(:NODE, $&)
267
+ yield token(:NODE, $&)
273
268
 
274
269
 
275
270
  when /\A\{/
276
271
  #
277
- ln = lineno; yield _Token(:ACTION, parse_action, ln)
272
+ ln = lineno; yield token(:ACTION, parse_action, ln)
278
273
 
279
274
 
280
275
  else
@@ -289,9 +284,9 @@ end
289
284
 
290
285
  ### Outer Code
291
286
 
292
- class D4CSTBuilderExtension_prerulelist::NVAction < Depager::LALR::Action #:nodoc:all
287
+ class D4CSTBuilderExtension_pre_rule_list::NVAction < Depager::LALR::Action #:nodoc:all
293
288
  include Depager::DecoratorUtils
294
- [" include ActionParser\n", " include ActionParser\n"]
289
+
295
290
  on_reduce = [
296
291
  nil,
297
292
  :_act_0,
@@ -309,7 +304,7 @@ class D4CSTBuilderExtension_prerulelist::NVAction < Depager::LALR::Action #:nodo
309
304
  end
310
305
 
311
306
 
312
- module_eval <<-'.,.,120998292315579.,.,', 'cst.dr', 104
307
+ module_eval <<-'.,.,122745803312555.,.,', 'cst.dr', 100
313
308
  def _act_0 val
314
309
  _opt_node, _opt_visitor, = *val
315
310
 
@@ -326,51 +321,50 @@ def _act_0 val
326
321
  .sub!('$$!!@ VISITOR @!!$$', _opt_visitor)
327
322
 
328
323
  end
329
- .,.,120998292315579.,.,
324
+ .,.,122745803312555.,.,
330
325
 
331
- module_eval <<-'.,.,120998292321982.,.,', 'cst.dr', 119
326
+ module_eval <<-'.,.,12274580333994.,.,', 'cst.dr', 115
332
327
  def _act_1 val
333
328
  ''
334
329
 
335
330
  end
336
- .,.,120998292321982.,.,
331
+ .,.,12274580333994.,.,
337
332
 
338
- module_eval <<-'.,.,120998292319798.,.,', 'cst.dr', 120
333
+ module_eval <<-'.,.,122745803355803.,.,', 'cst.dr', 116
339
334
  def _act_2 val
340
335
  _NODE, _ACTION, = *val
341
336
  _ACTION.value
342
337
 
343
338
  end
344
- .,.,120998292319798.,.,
339
+ .,.,122745803355803.,.,
345
340
 
346
- module_eval <<-'.,.,120998292317944.,.,', 'cst.dr', 123
341
+ module_eval <<-'.,.,122745803313768.,.,', 'cst.dr', 119
347
342
  def _act_3 val
348
343
  ''
349
344
 
350
345
  end
351
- .,.,120998292317944.,.,
346
+ .,.,122745803313768.,.,
352
347
 
353
- module_eval <<-'.,.,120998292323044.,.,', 'cst.dr', 124
348
+ module_eval <<-'.,.,122745803342911.,.,', 'cst.dr', 120
354
349
  def _act_4 val
355
350
  _VISITOR, _ACTION, = *val
356
351
  _ACTION.value
357
352
 
358
353
  end
359
- .,.,120998292323044.,.,
354
+ .,.,122745803342911.,.,
360
355
 
361
356
  end
362
357
 
363
358
 
364
359
  ###
365
- ### CSTBuilderExtension_postlhs - Part of Depager Extension (slave)
360
+ ### CSTBuilderExtension_post_lhs - Part of Depager Extension (slave)
366
361
  ###
367
- module D4CSTBuilderExtension_postlhs #:nodoc:all
362
+ module D4CSTBuilderExtension_post_lhs #:nodoc:all
368
363
  end
369
364
 
370
- class CSTBuilderExtension_postlhs < Depager::LALR::Basis #:nodoc:all
365
+ class CSTBuilderExtension_post_lhs < Depager::LALR::Basis #:nodoc:all
371
366
  include Depager::ExtensionUtils
372
367
 
373
- include ActionParser
374
368
 
375
369
  ### Reduce Table
376
370
  reduce_table = [
@@ -409,9 +403,9 @@ class CSTBuilderExtension_postlhs < Depager::LALR::Basis #:nodoc:all
409
403
  ]
410
404
  ### Action Table
411
405
  action_table = [
412
- [ nil, nil, 2, nil, nil, nil, nil, nil, ],
413
- [ ACC, nil, nil, nil, nil, nil, nil, nil, ],
406
+ [ nil, nil, 1, nil, nil, nil, nil, nil, ],
414
407
  [ nil, nil, nil, nil, nil, 5, nil, nil, ],
408
+ [ ACC, nil, nil, nil, nil, nil, nil, nil, ],
415
409
  [ nil, nil, nil, 6, 7, nil, nil, nil, ],
416
410
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
417
411
  [ nil, nil, nil, nil, nil, nil, 8, nil, ],
@@ -462,13 +456,13 @@ class CSTBuilderExtension_postlhs < Depager::LALR::Basis #:nodoc:all
462
456
  ]
463
457
  ### Goto Table
464
458
  goto_table = [
465
- [ 1, nil, nil, ],
466
- [ nil, nil, nil, ],
459
+ [ 2, nil, nil, ],
467
460
  [ nil, 3, 4, ],
468
461
  [ nil, nil, nil, ],
469
462
  [ nil, nil, nil, ],
470
463
  [ nil, nil, nil, ],
471
464
  [ nil, nil, nil, ],
465
+ [ nil, nil, nil, ],
472
466
  [ nil, nil, 9, ],
473
467
  [ nil, nil, nil, ],
474
468
  [ nil, nil, nil, ],
@@ -485,7 +479,7 @@ class CSTBuilderExtension_postlhs < Depager::LALR::Basis #:nodoc:all
485
479
  @g_parser = @p = p
486
480
  @master = @m = master
487
481
  @nparam = nparam
488
- @dect = D4CSTBuilderExtension_postlhs::NVAction.new(self)
482
+ @dect = D4CSTBuilderExtension_post_lhs::NVAction.new(self)
489
483
  init_parser
490
484
  end
491
485
 
@@ -518,17 +512,17 @@ class CSTBuilderExtension_postlhs < Depager::LALR::Basis #:nodoc:all
518
512
 
519
513
  when /\A""/, /\A''/, /\A[0-9]+/, /\A\{\s*\}/, /\A\[\s*\]/, /\Anil/
520
514
  @oldline = @line; @line = $'
521
- yield _Token(:LIT, $&)
515
+ yield token(:LIT, $&)
522
516
 
523
517
 
524
518
  when /\A\A[a-z][a-z_]*/
525
519
  @oldline = @line; @line = $'
526
- yield _Token(:ID, $&)
520
+ yield token(:ID, $&)
527
521
 
528
522
 
529
523
  when /\A\A(.)/
530
524
  @oldline = @line; @line = $'
531
- yield _Token($&, $&)
525
+ yield token($&, $&)
532
526
 
533
527
 
534
528
  else
@@ -552,9 +546,9 @@ end
552
546
 
553
547
  ### Outer Code
554
548
 
555
- class D4CSTBuilderExtension_postlhs::NVAction < Depager::LALR::Action #:nodoc:all
549
+ class D4CSTBuilderExtension_post_lhs::NVAction < Depager::LALR::Action #:nodoc:all
556
550
  include Depager::DecoratorUtils
557
- [" include ActionParser\n"]
551
+
558
552
  on_reduce = [
559
553
  nil,
560
554
  :_act_0,
@@ -572,7 +566,7 @@ class D4CSTBuilderExtension_postlhs::NVAction < Depager::LALR::Action #:nodoc:al
572
566
  end
573
567
 
574
568
 
575
- module_eval <<-'.,.,120998292354439.,.,', 'cst.dr', 155
569
+ module_eval <<-'.,.,122745803313978.,.,', 'cst.dr', 151
576
570
  def _act_0 val
577
571
  _, _pair, _, = *val
578
572
 
@@ -593,39 +587,39 @@ def _act_0 val
593
587
  }; #code
594
588
 
595
589
  end
596
- .,.,120998292354439.,.,
590
+ .,.,122745803313978.,.,
597
591
 
598
- module_eval <<-'.,.,120998292355813.,.,', 'cst.dr', 174
592
+ module_eval <<-'.,.,122745803351295.,.,', 'cst.dr', 170
599
593
  def _act_1 val
600
594
  _expr, = *val
601
595
  [ _expr ]
602
596
 
603
597
  end
604
- .,.,120998292355813.,.,
598
+ .,.,122745803351295.,.,
605
599
 
606
- module_eval <<-'.,.,120998292324404.,.,', 'cst.dr', 175
600
+ module_eval <<-'.,.,122745803357565.,.,', 'cst.dr', 171
607
601
  def _act_2 val
608
602
  _pair, _, _expr, = *val
609
603
  _pair << _expr
610
604
 
611
605
  end
612
- .,.,120998292324404.,.,
606
+ .,.,122745803357565.,.,
613
607
 
614
- module_eval <<-'.,.,12099829236180.,.,', 'cst.dr', 178
608
+ module_eval <<-'.,.,122745803313793.,.,', 'cst.dr', 174
615
609
  def _act_3 val
616
610
  _ID, = *val
617
611
  [ _ID.value, nil]
618
612
 
619
613
  end
620
- .,.,12099829236180.,.,
614
+ .,.,122745803313793.,.,
621
615
 
622
- module_eval <<-'.,.,12099829233028.,.,', 'cst.dr', 179
616
+ module_eval <<-'.,.,12274580337259.,.,', 'cst.dr', 175
623
617
  def _act_4 val
624
618
  _ID, _, _LIT, = *val
625
619
  [ _ID.value, _LIT.value ]
626
620
 
627
621
  end
628
- .,.,12099829233028.,.,
622
+ .,.,12274580337259.,.,
629
623
 
630
624
  end
631
625