depager 0.2.2 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. data/ChangeLog +4 -0
  2. data/README.ja +27 -28
  3. data/examples/c89/c89.dr +34 -34
  4. data/examples/c89/c89.tab.rb +3074 -3074
  5. data/examples/extension/paction.dr +4 -4
  6. data/examples/extension/pactiontest.dr +1 -1
  7. data/examples/pl0d/pl0ds.dr +27 -27
  8. data/examples/pl0d/pl0ds.tab.rb +626 -643
  9. data/examples/sample_calc/calc.action.dr +6 -6
  10. data/examples/sample_calc/calc.action.tab.rb +90 -90
  11. data/examples/sample_calc/calc.ast.action.dr +7 -7
  12. data/examples/sample_calc/calc.ast.action.tab.rb +121 -127
  13. data/examples/sample_calc/calc.ast.dr +6 -6
  14. data/examples/sample_calc/calc.ast.tab.rb +102 -109
  15. data/examples/sample_calc/calc.astdf.dr +6 -6
  16. data/examples/sample_calc/calc.astdf.tab.rb +102 -109
  17. data/examples/sample_calc/calc.atree.dr +6 -6
  18. data/examples/sample_calc/calc.atree.tab.rb +90 -90
  19. data/examples/sample_calc/calc.cst.dr +5 -5
  20. data/examples/sample_calc/calc.cst.tab.rb +106 -106
  21. data/examples/sample_calc/calc.dr +1 -1
  22. data/examples/sample_calc/calc.lex.dr +4 -4
  23. data/examples/sample_calc/calc.lex.tab.rb +73 -73
  24. data/examples/sample_calc/calc.nvaction.dr +6 -6
  25. data/examples/sample_calc/calc.nvaction.tab.rb +90 -90
  26. data/examples/sample_calc/calc.tab.rb +71 -71
  27. data/examples/sample_calc/calc_prec.nvaction.dr +6 -6
  28. data/examples/sample_calc/calc_prec.nvaction.tab.rb +46 -46
  29. data/examples/slex_test/divreg.slex.dr +7 -7
  30. data/examples/slex_test/divreg.slex.tab.rb +20 -20
  31. data/examples/slex_test/ljoin.slex.dr +7 -7
  32. data/examples/slex_test/ljoin.slex.tab.rb +15 -15
  33. data/lib/depager.rb +45 -83
  34. data/lib/depager/grammar.rb +3 -7
  35. data/lib/depager/lr.rb +123 -1
  36. data/lib/depager/parser.rb +29 -48
  37. data/lib/depager/{template/ast.erbs → ruby/plugins/_ast_tmpl.rb} +11 -7
  38. data/lib/depager/{action.rb → ruby/plugins/action.rb} +7 -11
  39. data/lib/depager/{ast.dr → ruby/plugins/ast.dr} +24 -25
  40. data/lib/depager/{ast.rb → ruby/plugins/ast.rb} +241 -243
  41. data/lib/depager/{astdf.rb → ruby/plugins/astdf.rb} +1 -2
  42. data/lib/depager/{atree.dr → ruby/plugins/atree.dr} +5 -5
  43. data/lib/depager/{atree.rb → ruby/plugins/atree.rb} +39 -39
  44. data/lib/depager/{cst.dr → ruby/plugins/cst.dr} +17 -21
  45. data/lib/depager/{cst.rb → ruby/plugins/cst.rb} +62 -68
  46. data/lib/depager/{lex.dr → ruby/plugins/lex.dr} +3 -4
  47. data/lib/depager/{lex.rb → ruby/plugins/lex.rb} +29 -31
  48. data/lib/depager/{nvaction.rb → ruby/plugins/nvaction.rb} +1 -3
  49. data/lib/depager/{slex.dr → ruby/plugins/slex.dr} +16 -17
  50. data/lib/depager/{slex.rb → ruby/plugins/slex.rb} +115 -117
  51. data/lib/depager/{srp.rb → ruby/plugins/srp.rb} +4 -4
  52. data/lib/depager/{template → ruby/templates}/extension_lalr_master.erb +6 -6
  53. data/lib/depager/{template → ruby/templates}/extension_lalr_slave.erb +0 -0
  54. data/lib/depager/{template → ruby/templates}/simple.erb +0 -0
  55. data/lib/depager/{template → ruby/templates}/single_lalr_parser.erb +0 -0
  56. data/lib/depager/utils.rb +30 -69
  57. data/lib/depager/version.rb +1 -1
  58. metadata +59 -56
  59. data/examples/Rakefile +0 -36
  60. data/lib/depager/Rakefile +0 -34
  61. data/lib/depager/lr_put_table.rb +0 -116
  62. data/lib/depager/parse_action.rb +0 -24
@@ -1,11 +1,10 @@
1
1
  %defext LexerExtension
2
- %extend NVAction ('depager/nvaction.rb')
2
+ %extend NVAction ('plugins/nvaction.rb')
3
3
  %decorate @NVAction
4
- #%decorate ShiftReducePrinter ('depager/srp.rb')
4
+ #%decorate ShiftReducePrinter ('plugins/srp.rb')
5
5
  %param :none
6
- %hook prerulelist /%LEX\{\s*\Z/ skip
6
+ %hook pre_rule_list /%LEX\{\s*\Z/ skip
7
7
  %banner '%LEX{ ... }'
8
- %mixin ActionParser ('depager/parse_action')
9
8
  %inner{
10
9
  def init_parser
11
10
  super
@@ -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 D4LexerExtension #:nodoc:all
@@ -25,9 +24,9 @@ class LexerExtension #:nodoc:all
25
24
  def __regext__ p
26
25
  super p, :none, nil
27
26
 
28
- @hook[0] = LexerExtension_prerulelist.new(p, @nparam, self)
29
- @h2p['prerulelist'] = @hook[0]
30
- p.prerulelist.push [@hook[0], :do_parse]
27
+ @hook[0] = LexerExtension_pre_rule_list.new(p, @nparam, self)
28
+ @h2p['pre_rule_list'] = @hook[0]
29
+ p.hooks[:pre_rule_list].push [@hook[0], :do_parse]
31
30
 
32
31
  regext p
33
32
  end
@@ -39,15 +38,14 @@ end
39
38
  ### Outer Code
40
39
 
41
40
  ###
42
- ### LexerExtension_prerulelist - Part of Depager Extension (slave)
41
+ ### LexerExtension_pre_rule_list - Part of Depager Extension (slave)
43
42
  ###
44
- module D4LexerExtension_prerulelist #:nodoc:all
43
+ module D4LexerExtension_pre_rule_list #:nodoc:all
45
44
  end
46
45
 
47
- class LexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
46
+ class LexerExtension_pre_rule_list < Depager::LALR::Basis #:nodoc:all
48
47
  include Depager::ExtensionUtils
49
48
 
50
- include ActionParser
51
49
 
52
50
  ### Reduce Table
53
51
  reduce_table = [
@@ -89,14 +87,14 @@ class LexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
89
87
  [ ACC, nil, nil, nil, nil, nil, ],
90
88
  [ nil, nil, nil, nil, 5, nil, ],
91
89
  [ nil, nil, nil, nil, nil, nil, ],
92
- [ nil, nil, nil, 8, nil, 9, ],
90
+ [ nil, nil, nil, 9, nil, 8, ],
93
91
  [ nil, nil, nil, nil, nil, nil, ],
94
92
  [ nil, nil, nil, nil, nil, nil, ],
95
93
  [ nil, nil, 10, nil, nil, nil, ],
96
- [ nil, nil, nil, nil, nil, nil, ],
97
94
  [ nil, nil, nil, nil, 11, nil, ],
98
95
  [ nil, nil, nil, nil, nil, nil, ],
99
96
  [ nil, nil, nil, nil, nil, nil, ],
97
+ [ nil, nil, nil, nil, nil, nil, ],
100
98
  ]
101
99
  ### Default Reduce Table
102
100
  defred_table = [
@@ -108,8 +106,8 @@ class LexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
108
106
  -7,
109
107
  -3,
110
108
  nil,
111
- -6,
112
109
  nil,
110
+ -6,
113
111
  -4,
114
112
  -8,
115
113
  ]
@@ -122,8 +120,8 @@ class LexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
122
120
  -7,
123
121
  -3,
124
122
  nil,
125
- -6,
126
123
  nil,
124
+ -6,
127
125
  -4,
128
126
  -8,
129
127
  ]
@@ -169,7 +167,7 @@ class LexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
169
167
  @g_parser = @p = p
170
168
  @master = @m = master
171
169
  @nparam = nparam
172
- @dect = D4LexerExtension_prerulelist::NVAction.new(self)
170
+ @dect = D4LexerExtension_pre_rule_list::NVAction.new(self)
173
171
  init_parser
174
172
  end
175
173
 
@@ -228,9 +226,9 @@ end
228
226
 
229
227
  ### Outer Code
230
228
 
231
- class D4LexerExtension_prerulelist::NVAction < Depager::LALR::Action #:nodoc:all
229
+ class D4LexerExtension_pre_rule_list::NVAction < Depager::LALR::Action #:nodoc:all
232
230
  include Depager::DecoratorUtils
233
- [" include ActionParser\n"]
231
+
234
232
  on_reduce = [
235
233
  nil,
236
234
  :_act_0,
@@ -251,7 +249,7 @@ class D4LexerExtension_prerulelist::NVAction < Depager::LALR::Action #:nodoc:all
251
249
  end
252
250
 
253
251
 
254
- module_eval <<-'.,.,12099829229538.,.,', 'lex.dr', 48
252
+ module_eval <<-'.,.,122745803340181.,.,', 'lex.dr', 47
255
253
  def _act_0 val
256
254
  _lexactlist, = *val
257
255
 
@@ -271,25 +269,25 @@ def _act_0 val
271
269
  }; #code
272
270
 
273
271
  end
274
- .,.,12099829229538.,.,
272
+ .,.,122745803340181.,.,
275
273
 
276
- module_eval <<-'.,.,12099829229930.,.,', 'lex.dr', 66
274
+ module_eval <<-'.,.,122745803321867.,.,', 'lex.dr', 65
277
275
  def _act_1 val
278
276
  _lexact, = *val
279
277
  _lexact
280
278
 
281
279
  end
282
- .,.,12099829229930.,.,
280
+ .,.,122745803321867.,.,
283
281
 
284
- module_eval <<-'.,.,120998292251446.,.,', 'lex.dr', 67
282
+ module_eval <<-'.,.,122745803341492.,.,', 'lex.dr', 66
285
283
  def _act_2 val
286
284
  _lexactlist, _lexact, = *val
287
285
  _lexactlist << _lexact
288
286
 
289
287
  end
290
- .,.,120998292251446.,.,
288
+ .,.,122745803341492.,.,
291
289
 
292
- module_eval <<-'.,.,12099829229876.,.,', 'lex.dr', 71
290
+ module_eval <<-'.,.,1227458033110.,.,', 'lex.dr', 70
293
291
  def _act_3 val
294
292
  _lexlist, _opt_noskip, _ACTION, = *val
295
293
 
@@ -300,38 +298,38 @@ def _act_3 val
300
298
  }; #code
301
299
 
302
300
  end
303
- .,.,12099829229876.,.,
301
+ .,.,1227458033110.,.,
304
302
 
305
- module_eval <<-'.,.,120998292261886.,.,', 'lex.dr', 80
303
+ module_eval <<-'.,.,122745803341618.,.,', 'lex.dr', 79
306
304
  def _act_4 val
307
305
  false
308
306
 
309
307
  end
310
- .,.,120998292261886.,.,
308
+ .,.,122745803341618.,.,
311
309
 
312
- module_eval <<-'.,.,120998292263869.,.,', 'lex.dr', 81
310
+ module_eval <<-'.,.,122745803352625.,.,', 'lex.dr', 80
313
311
  def _act_5 val
314
312
  _, = *val
315
313
  true
316
314
 
317
315
  end
318
- .,.,120998292263869.,.,
316
+ .,.,122745803352625.,.,
319
317
 
320
- module_eval <<-'.,.,120998292217015.,.,', 'lex.dr', 84
318
+ module_eval <<-'.,.,122745803357424.,.,', 'lex.dr', 83
321
319
  def _act_6 val
322
320
  _LEX, = *val
323
321
  [ _LEX ]
324
322
 
325
323
  end
326
- .,.,120998292217015.,.,
324
+ .,.,122745803357424.,.,
327
325
 
328
- module_eval <<-'.,.,120998292239616.,.,', 'lex.dr', 85
326
+ module_eval <<-'.,.,122745803338595.,.,', 'lex.dr', 84
329
327
  def _act_7 val
330
328
  _lexlist, _, _LEX, = *val
331
329
  _lexlist << _LEX
332
330
 
333
331
  end
334
- .,.,120998292239616.,.,
332
+ .,.,122745803338595.,.,
335
333
 
336
334
  end
337
335
 
@@ -1,6 +1,4 @@
1
- require 'depager/action.rb'
2
- require 'depager/parser.rb'
3
- require 'depager/parse_action.rb'
1
+ require 'plugins/action.rb'
4
2
 
5
3
  class NVActionExtension < ActionExtension #:nodoc:all
6
4
  def modify_action_code code
@@ -1,8 +1,8 @@
1
1
  %defext StatefulLexerExtension
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')
5
+ #%decorate ShiftReducePrinter ('plugins/srp.rb')
6
6
  %inner{
7
7
  attr_accessor :ins, :code, :optval
8
8
  def init_parser
@@ -12,7 +12,7 @@
12
12
  @on_reduce = []
13
13
  @addition = []
14
14
  end
15
- def postRuleList
15
+ def post_rule_list
16
16
  @optouter << %{
17
17
  def afterError
18
18
  warn "StatefulLex: lex_state==\#{@basis.lex_state}" if $MP_DEBUG
@@ -22,7 +22,7 @@
22
22
  gen_action_decorator_code(target_name, paramkey,
23
23
  @on_reduce, @optouter)
24
24
  end
25
- def postRhs
25
+ def post_rhs
26
26
  j = 0
27
27
  rhs = g_parser.rhs
28
28
  @ins.each do |i, option_list, debug|
@@ -60,7 +60,7 @@
60
60
  end
61
61
  @ins.clear
62
62
  end
63
- def postRhsList
63
+ def post_rhs_list
64
64
  @addition.each do |isym, m_name|
65
65
  g_parser.add_rule isym, []
66
66
  @on_reduce[nrules] = ':'+m_name
@@ -71,26 +71,25 @@
71
71
  ######################################################################
72
72
  # Define Tokens
73
73
  ######################################################################
74
- %hook prerulelist /%LEX\{\s*\Z/ skip
75
- %mixin ActionParser ('depager/parse_action')
74
+ %hook pre_rule_list /%LEX\{\s*\Z/ skip
76
75
  %banner '%LEX{ ... }'
77
76
  %%
78
77
  %LEX{
79
78
  /\s+/, /#.*\Z/ { }
80
- /[A-Z]+/ { yield _Token(:ID, $&) }
79
+ /[A-Z]+/ { yield token(:ID, $&) }
81
80
  /\%\}\s*\Z/ { yield nil,nil }
82
- /\/(([^\/\\]+|\\.)*)\// { yield _Token(:LEX, "/\\A#{$1}/") }
81
+ /\/(([^\/\\]+|\\.)*)\// { yield token(:LEX, "/\\A#{$1}/") }
83
82
  /'([^'\\]+|\\.)*'/,
84
83
  /"([^"\\]+|\\.)*"/
85
84
  {
86
- yield _Token(:LEX, "/\\A#{Regexp.escape($1).gsub('/', '\/')}/")
85
+ yield token(:LEX, "/\\A#{Regexp.escape($1).gsub('/', '\/')}/")
87
86
  }
88
87
  '{' !
89
88
  {
90
89
  _lineno = lineno
91
- yield _Token(:ACTION, parse_action, _lineno)
90
+ yield token(:ACTION, parse_action, _lineno)
92
91
  }
93
- /./ { yield _Token($&, $&) }
92
+ /./ { yield token($&, $&) }
94
93
  %}
95
94
  #begin-rule
96
95
  start:
@@ -166,14 +165,14 @@
166
165
  ######################################################################
167
166
  # Change State
168
167
  ######################################################################
169
- %hook prerhs postsymbol /\[/
168
+ %hook pre_rhs post_symbol /\[/
170
169
  %banner '[> ...]'
171
170
  %%
172
171
  %LEX{
173
172
  /\s+/ { }
174
- /:[a-zA-Z_]+\??/ { yield _Token(:SYMBOL, $&) }
175
- /\]/ { yield _Token($&, $&); @line = $'; yield nil, nil }
176
- /./ { yield _Token($&, $&) }
173
+ /:[a-zA-Z_]+\??/ { yield token(:SYMBOL, $&) }
174
+ /\]/ { yield token($&, $&); @line = $'; yield nil, nil }
175
+ /./ { yield token($&, $&) }
177
176
  %}
178
177
 
179
178
  #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 D4StatefulLexerExtension #:nodoc:all
@@ -25,16 +24,16 @@ class StatefulLexerExtension #:nodoc:all
25
24
  def __regext__ p
26
25
  super p, :default, nil
27
26
 
28
- @hook[0] = StatefulLexerExtension_prerulelist.new(p, @nparam, self)
29
- @h2p['prerulelist'] = @hook[0]
30
- p.prerulelist.push [@hook[0], :do_parse]
27
+ @hook[0] = StatefulLexerExtension_pre_rhs__post_symbol.new(p, @nparam, self)
28
+ @h2p['pre_rhs__post_symbol'] = @hook[0]
29
+ p.hooks[:post_symbol].push [@hook[0], :do_parse]
31
30
 
32
- @hook[1] = StatefulLexerExtension_prerhs_postsymbol.new(p, @nparam, self)
33
- @h2p['prerhs_postsymbol'] = @hook[1]
34
- p.prerhs.push [@hook[1], :do_parse]
31
+ @hook[1] = StatefulLexerExtension_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]
35
34
 
36
- # use @hook[1](StatefulLexerExtension_prerhs_postsymbol)
37
- p.postsymbol.push [@hook[1], :do_parse]
35
+ # use @hook[0](StatefulLexerExtension_pre_rhs__post_symbol)
36
+ p.hooks[:pre_rhs].push [@hook[0], :do_parse]
38
37
 
39
38
  regext p
40
39
  end
@@ -48,7 +47,7 @@ class StatefulLexerExtension #:nodoc:all
48
47
  @on_reduce = []
49
48
  @addition = []
50
49
  end
51
- def postRuleList
50
+ def post_rule_list
52
51
  @optouter << %{
53
52
  def afterError
54
53
  warn "StatefulLex: lex_state==\#{@basis.lex_state}" if $MP_DEBUG
@@ -58,7 +57,7 @@ class StatefulLexerExtension #:nodoc:all
58
57
  gen_action_decorator_code(target_name, paramkey,
59
58
  @on_reduce, @optouter)
60
59
  end
61
- def postRhs
60
+ def post_rhs
62
61
  j = 0
63
62
  rhs = g_parser.rhs
64
63
  @ins.each do |i, option_list, debug|
@@ -96,7 +95,7 @@ class StatefulLexerExtension #:nodoc:all
96
95
  end
97
96
  @ins.clear
98
97
  end
99
- def postRhsList
98
+ def post_rhs_list
100
99
  @addition.each do |isym, m_name|
101
100
  g_parser.add_rule isym, []
102
101
  @on_reduce[nrules] = ':'+m_name
@@ -109,15 +108,14 @@ end
109
108
  ### Outer Code
110
109
 
111
110
  ###
112
- ### StatefulLexerExtension_prerulelist - Part of Depager Extension (slave)
111
+ ### StatefulLexerExtension_pre_rule_list - Part of Depager Extension (slave)
113
112
  ###
114
- module D4StatefulLexerExtension_prerulelist #:nodoc:all
113
+ module D4StatefulLexerExtension_pre_rule_list #:nodoc:all
115
114
  end
116
115
 
117
- class StatefulLexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
116
+ class StatefulLexerExtension_pre_rule_list < Depager::LALR::Basis #:nodoc:all
118
117
  include Depager::ExtensionUtils
119
118
 
120
- include ActionParser
121
119
 
122
120
  ### Reduce Table
123
121
  reduce_table = [
@@ -170,20 +168,20 @@ class StatefulLexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
170
168
  action_table = [
171
169
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
172
170
  [ ACC, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
173
- [ nil, nil, 4, nil, nil, nil, nil, nil, nil, nil, ],
174
- [ nil, nil, nil, nil, nil, nil, nil, nil, 8, nil, ],
175
- [ nil, nil, nil, 9, nil, nil, nil, nil, nil, nil, ],
176
- [ nil, nil, nil, nil, nil, nil, nil, nil, 8, nil, ],
171
+ [ nil, nil, 3, nil, nil, nil, nil, nil, nil, nil, ],
172
+ [ nil, nil, nil, 5, nil, nil, nil, nil, nil, nil, ],
173
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 6, nil, ],
174
+ [ nil, nil, nil, nil, nil, 11, nil, nil, nil, nil, ],
177
175
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
178
- [ nil, nil, nil, nil, nil, nil, nil, 12, nil, 13, ],
179
176
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
180
- [ nil, nil, nil, nil, nil, 15, nil, nil, nil, nil, ],
177
+ [ nil, nil, nil, nil, nil, nil, nil, 12, nil, 13, ],
178
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 6, nil, ],
179
+ [ nil, nil, nil, nil, 16, nil, nil, nil, nil, nil, ],
180
+ [ nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, ],
181
181
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
182
- [ nil, nil, nil, nil, nil, nil, 16, nil, nil, nil, ],
182
+ [ nil, nil, nil, nil, nil, nil, nil, nil, 18, nil, ],
183
+ [ nil, nil, nil, nil, nil, nil, 19, nil, nil, nil, ],
183
184
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
184
- [ nil, nil, nil, nil, nil, nil, nil, nil, 17, nil, ],
185
- [ nil, nil, nil, nil, 18, nil, nil, nil, nil, nil, ],
186
- [ nil, nil, nil, 19, nil, nil, nil, nil, nil, nil, ],
187
185
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
188
186
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
189
187
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
@@ -196,21 +194,21 @@ class StatefulLexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
196
194
  -1,
197
195
  nil,
198
196
  nil,
199
- -3,
197
+ -5,
198
+ -12,
200
199
  -7,
201
200
  -10,
202
- -12,
203
- -5,
204
- -8,
201
+ -3,
205
202
  nil,
206
- -11,
207
203
  nil,
204
+ -11,
208
205
  nil,
209
206
  nil,
210
- -9,
211
- -13,
207
+ -8,
212
208
  -4,
213
209
  -6,
210
+ -13,
211
+ -9,
214
212
  ]
215
213
  defred_after_shift_table = [
216
214
  -2,
@@ -219,20 +217,20 @@ class StatefulLexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
219
217
  nil,
220
218
  nil,
221
219
  nil,
220
+ -12,
222
221
  -7,
223
222
  nil,
224
- -12,
225
223
  nil,
226
- -8,
227
224
  nil,
228
- -11,
229
225
  nil,
226
+ -11,
230
227
  nil,
231
228
  nil,
232
- -9,
233
- -13,
229
+ -8,
234
230
  -4,
235
231
  -6,
232
+ -13,
233
+ -9,
236
234
  ]
237
235
  ### Nonterm to Int
238
236
  nt2i = {
@@ -260,14 +258,14 @@ class StatefulLexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
260
258
  goto_table = [
261
259
  [ 1, 2, nil, nil, nil, nil, nil, nil, ],
262
260
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
263
- [ nil, nil, 3, nil, nil, nil, nil, nil, ],
264
- [ nil, nil, nil, 5, nil, 6, 7, nil, ],
261
+ [ nil, nil, 4, nil, nil, nil, nil, nil, ],
265
262
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
266
- [ nil, nil, nil, nil, nil, 10, 7, nil, ],
263
+ [ nil, nil, nil, 9, nil, 7, 8, nil, ],
264
+ [ nil, nil, nil, nil, 10, nil, nil, nil, ],
267
265
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
268
- [ nil, nil, nil, nil, nil, nil, nil, 11, ],
269
266
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
270
- [ nil, nil, nil, nil, 14, nil, nil, nil, ],
267
+ [ nil, nil, nil, nil, nil, nil, nil, 14, ],
268
+ [ nil, nil, nil, nil, nil, 15, 8, nil, ],
271
269
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
272
270
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
273
271
  [ nil, nil, nil, nil, nil, nil, nil, nil, ],
@@ -290,7 +288,7 @@ class StatefulLexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
290
288
  @g_parser = @p = p
291
289
  @master = @m = master
292
290
  @nparam = nparam
293
- @dect = D4StatefulLexerExtension_prerulelist::NVAction.new(self)
291
+ @dect = D4StatefulLexerExtension_pre_rule_list::NVAction.new(self)
294
292
  init_parser
295
293
  end
296
294
 
@@ -323,7 +321,7 @@ class StatefulLexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
323
321
 
324
322
  when /\A[A-Z]+/
325
323
  @oldline = @line; @line = $'
326
- yield _Token(:ID, $&)
324
+ yield token(:ID, $&)
327
325
 
328
326
 
329
327
  when /\A\%\}\s*\Z/
@@ -333,25 +331,25 @@ class StatefulLexerExtension_prerulelist < Depager::LALR::Basis #:nodoc:all
333
331
 
334
332
  when /\A\/(([^\/\\]+|\\.)*)\//
335
333
  @oldline = @line; @line = $'
336
- yield _Token(:LEX, "/\\A#{$1}/")
334
+ yield token(:LEX, "/\\A#{$1}/")
337
335
 
338
336
 
339
337
  when /\A'([^'\\]+|\\.)*'/, /\A"([^"\\]+|\\.)*"/
340
338
  @oldline = @line; @line = $'
341
339
 
342
- yield _Token(:LEX, "/\\A#{Regexp.escape($1).gsub('/', '\/')}/")
340
+ yield token(:LEX, "/\\A#{Regexp.escape($1).gsub('/', '\/')}/")
343
341
 
344
342
 
345
343
  when /\A\{/
346
344
  #
347
345
 
348
346
  _lineno = lineno
349
- yield _Token(:ACTION, parse_action, _lineno)
347
+ yield token(:ACTION, parse_action, _lineno)
350
348
 
351
349
 
352
350
  when /\A./
353
351
  @oldline = @line; @line = $'
354
- yield _Token($&, $&)
352
+ yield token($&, $&)
355
353
 
356
354
 
357
355
  else
@@ -366,9 +364,9 @@ end
366
364
 
367
365
  ### Outer Code
368
366
 
369
- class D4StatefulLexerExtension_prerulelist::NVAction < Depager::LALR::Action #:nodoc:all
367
+ class D4StatefulLexerExtension_pre_rule_list::NVAction < Depager::LALR::Action #:nodoc:all
370
368
  include Depager::DecoratorUtils
371
- [" include ActionParser\n"]
369
+
372
370
  on_reduce = [
373
371
  nil,
374
372
  :_act_0,
@@ -394,7 +392,7 @@ class D4StatefulLexerExtension_prerulelist::NVAction < Depager::LALR::Action #:n
394
392
  end
395
393
 
396
394
 
397
- module_eval <<-'.,.,120998292328650.,.,', 'slex.dr', 96
395
+ module_eval <<-'.,.,1227458033159.,.,', 'slex.dr', 95
398
396
  def _act_0 val
399
397
  _mode_list, = *val
400
398
 
@@ -430,63 +428,63 @@ def _act_0 val
430
428
  }; #code
431
429
 
432
430
  end
433
- .,.,120998292328650.,.,
431
+ .,.,1227458033159.,.,
434
432
 
435
- module_eval <<-'.,.,120998292354849.,.,', 'slex.dr', 130
433
+ module_eval <<-'.,.,122745803342120.,.,', 'slex.dr', 129
436
434
  def _act_1 val
437
435
  [ ]
438
436
 
439
437
  end
440
- .,.,120998292354849.,.,
438
+ .,.,122745803342120.,.,
441
439
 
442
- module_eval <<-'.,.,120998292352082.,.,', 'slex.dr', 131
440
+ module_eval <<-'.,.,12274580336600.,.,', 'slex.dr', 130
443
441
  def _act_2 val
444
442
  _mode_list, _mode, _lexactlist, = *val
445
443
  _mode_list << [_mode[0], _mode[1], _lexactlist]
446
444
 
447
445
  end
448
- .,.,120998292352082.,.,
446
+ .,.,12274580336600.,.,
449
447
 
450
- module_eval <<-'.,.,12099829232991.,.,', 'slex.dr', 134
448
+ module_eval <<-'.,.,122745803347797.,.,', 'slex.dr', 133
451
449
  def _act_3 val
452
450
  _, _ID, _opt_super, _, = *val
453
451
  [ _ID.value, _opt_super ]
454
452
 
455
453
  end
456
- .,.,12099829232991.,.,
454
+ .,.,122745803347797.,.,
457
455
 
458
- module_eval <<-'.,.,12099829237562.,.,', 'slex.dr', 137
456
+ module_eval <<-'.,.,122745803312942.,.,', 'slex.dr', 136
459
457
  def _act_4 val
460
458
  nil
461
459
 
462
460
  end
463
- .,.,12099829237562.,.,
461
+ .,.,122745803312942.,.,
464
462
 
465
- module_eval <<-'.,.,120998292348892.,.,', 'slex.dr', 138
463
+ module_eval <<-'.,.,122745803315084.,.,', 'slex.dr', 137
466
464
  def _act_5 val
467
465
  _, _ID, = *val
468
466
  _ID.value
469
467
 
470
468
  end
471
- .,.,120998292348892.,.,
469
+ .,.,122745803315084.,.,
472
470
 
473
- module_eval <<-'.,.,120998292360134.,.,', 'slex.dr', 141
471
+ module_eval <<-'.,.,12274580334440.,.,', 'slex.dr', 140
474
472
  def _act_6 val
475
473
  _lexact, = *val
476
474
  _lexact
477
475
 
478
476
  end
479
- .,.,120998292360134.,.,
477
+ .,.,12274580334440.,.,
480
478
 
481
- module_eval <<-'.,.,120998292332012.,.,', 'slex.dr', 142
479
+ module_eval <<-'.,.,122745803358254.,.,', 'slex.dr', 141
482
480
  def _act_7 val
483
481
  _lexactlist, _lexact, = *val
484
482
  _lexactlist << _lexact
485
483
 
486
484
  end
487
- .,.,120998292332012.,.,
485
+ .,.,122745803358254.,.,
488
486
 
489
- module_eval <<-'.,.,12099829232968.,.,', 'slex.dr', 146
487
+ module_eval <<-'.,.,122745803337351.,.,', 'slex.dr', 145
490
488
  def _act_8 val
491
489
  _lexlist, _opt_noskip, _ACTION, = *val
492
490
 
@@ -497,49 +495,49 @@ def _act_8 val
497
495
  }; #code
498
496
 
499
497
  end
500
- .,.,12099829232968.,.,
498
+ .,.,122745803337351.,.,
501
499
 
502
- module_eval <<-'.,.,120998292350935.,.,', 'slex.dr', 155
500
+ module_eval <<-'.,.,122745803316408.,.,', 'slex.dr', 154
503
501
  def _act_9 val
504
502
  false
505
503
 
506
504
  end
507
- .,.,120998292350935.,.,
505
+ .,.,122745803316408.,.,
508
506
 
509
- module_eval <<-'.,.,120998292356440.,.,', 'slex.dr', 156
507
+ module_eval <<-'.,.,122745803341193.,.,', 'slex.dr', 155
510
508
  def _act_10 val
511
509
  _, = *val
512
510
  true
513
511
 
514
512
  end
515
- .,.,120998292356440.,.,
513
+ .,.,122745803341193.,.,
516
514
 
517
- module_eval <<-'.,.,120998292318605.,.,', 'slex.dr', 159
515
+ module_eval <<-'.,.,12274580332500.,.,', 'slex.dr', 158
518
516
  def _act_11 val
519
517
  _LEX, = *val
520
518
  [ _LEX.value ]
521
519
 
522
520
  end
523
- .,.,120998292318605.,.,
521
+ .,.,12274580332500.,.,
524
522
 
525
- module_eval <<-'.,.,120998292362428.,.,', 'slex.dr', 160
523
+ module_eval <<-'.,.,122745803323427.,.,', 'slex.dr', 159
526
524
  def _act_12 val
527
525
  _lexlist, _, _LEX, = *val
528
526
  _lexlist.push _LEX.value
529
527
 
530
528
  end
531
- .,.,120998292362428.,.,
529
+ .,.,122745803323427.,.,
532
530
 
533
531
  end
534
532
 
535
533
 
536
534
  ###
537
- ### StatefulLexerExtension_prerhs_postsymbol - Part of Depager Extension (slave)
535
+ ### StatefulLexerExtension_pre_rhs__post_symbol - Part of Depager Extension (slave)
538
536
  ###
539
- module D4StatefulLexerExtension_prerhs_postsymbol #:nodoc:all
537
+ module D4StatefulLexerExtension_pre_rhs__post_symbol #:nodoc:all
540
538
  end
541
539
 
542
- class StatefulLexerExtension_prerhs_postsymbol < Depager::LALR::Basis #:nodoc:all
540
+ class StatefulLexerExtension_pre_rhs__post_symbol < Depager::LALR::Basis #:nodoc:all
543
541
  include Depager::ExtensionUtils
544
542
 
545
543
 
@@ -584,18 +582,18 @@ class StatefulLexerExtension_prerhs_postsymbol < Depager::LALR::Basis #:nodoc:al
584
582
  ]
585
583
  ### Action Table
586
584
  action_table = [
587
- [ nil, nil, 2, nil, nil, nil, nil, nil, nil, ],
585
+ [ nil, nil, 1, nil, nil, nil, nil, nil, nil, ],
586
+ [ nil, nil, nil, nil, nil, 7, nil, 3, 4, ],
588
587
  [ ACC, nil, nil, nil, nil, nil, nil, nil, nil, ],
589
- [ nil, nil, nil, nil, nil, 5, nil, 6, 7, ],
590
- [ nil, nil, nil, 8, 10, 5, nil, 6, 7, ],
588
+ [ nil, nil, nil, nil, nil, nil, 8, nil, nil, ],
589
+ [ nil, nil, nil, nil, nil, nil, 9, nil, nil, ],
590
+ [ nil, nil, nil, 10, 11, 7, nil, 3, 4, ],
591
591
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
592
- [ nil, nil, nil, nil, nil, nil, 11, nil, nil, ],
593
- [ nil, nil, nil, nil, nil, nil, 12, nil, nil, ],
594
592
  [ nil, nil, nil, nil, nil, nil, 13, nil, nil, ],
595
593
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
596
594
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
597
- [ nil, nil, nil, 14, nil, nil, nil, nil, nil, ],
598
595
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
596
+ [ nil, nil, nil, 14, nil, nil, nil, nil, nil, ],
599
597
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
600
598
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
601
599
  [ nil, nil, nil, nil, nil, nil, nil, nil, nil, ],
@@ -606,16 +604,16 @@ class StatefulLexerExtension_prerhs_postsymbol < Depager::LALR::Basis #:nodoc:al
606
604
  nil,
607
605
  nil,
608
606
  nil,
609
- -3,
610
607
  nil,
611
608
  nil,
609
+ -3,
612
610
  nil,
611
+ -6,
612
+ -7,
613
613
  -1,
614
- -4,
615
614
  nil,
615
+ -4,
616
616
  -5,
617
- -6,
618
- -7,
619
617
  -2,
620
618
  ]
621
619
  defred_after_shift_table = [
@@ -623,16 +621,16 @@ class StatefulLexerExtension_prerhs_postsymbol < Depager::LALR::Basis #:nodoc:al
623
621
  nil,
624
622
  nil,
625
623
  nil,
626
- -3,
627
624
  nil,
628
625
  nil,
626
+ -3,
629
627
  nil,
628
+ -6,
629
+ -7,
630
630
  -1,
631
- -4,
632
631
  nil,
632
+ -4,
633
633
  -5,
634
- -6,
635
- -7,
636
634
  -2,
637
635
  ]
638
636
  ### Nonterm to Int
@@ -649,12 +647,12 @@ class StatefulLexerExtension_prerhs_postsymbol < Depager::LALR::Basis #:nodoc:al
649
647
  ]
650
648
  ### Goto Table
651
649
  goto_table = [
652
- [ 1, nil, nil, ],
650
+ [ 2, nil, nil, ],
651
+ [ nil, 5, 6, ],
653
652
  [ nil, nil, nil, ],
654
- [ nil, 3, 4, ],
655
- [ nil, nil, 9, ],
656
653
  [ nil, nil, nil, ],
657
654
  [ nil, nil, nil, ],
655
+ [ nil, nil, 12, ],
658
656
  [ nil, nil, nil, ],
659
657
  [ nil, nil, nil, ],
660
658
  [ nil, nil, nil, ],
@@ -676,7 +674,7 @@ class StatefulLexerExtension_prerhs_postsymbol < Depager::LALR::Basis #:nodoc:al
676
674
  @g_parser = @p = p
677
675
  @master = @m = master
678
676
  @nparam = nparam
679
- @dect = D4StatefulLexerExtension_prerhs_postsymbol::NVAction.new(self)
677
+ @dect = D4StatefulLexerExtension_pre_rhs__post_symbol::NVAction.new(self)
680
678
  init_parser
681
679
  end
682
680
 
@@ -709,17 +707,17 @@ class StatefulLexerExtension_prerhs_postsymbol < Depager::LALR::Basis #:nodoc:al
709
707
 
710
708
  when /\A:[a-zA-Z_]+\??/
711
709
  @oldline = @line; @line = $'
712
- yield _Token(:SYMBOL, $&)
710
+ yield token(:SYMBOL, $&)
713
711
 
714
712
 
715
713
  when /\A\]/
716
714
  @oldline = @line; @line = $'
717
- yield _Token($&, $&); @line = $'; yield nil, nil
715
+ yield token($&, $&); @line = $'; yield nil, nil
718
716
 
719
717
 
720
718
  when /\A./
721
719
  @oldline = @line; @line = $'
722
- yield _Token($&, $&)
720
+ yield token($&, $&)
723
721
 
724
722
 
725
723
  else
@@ -734,9 +732,9 @@ end
734
732
 
735
733
  ### Outer Code
736
734
 
737
- class D4StatefulLexerExtension_prerhs_postsymbol::NVAction < Depager::LALR::Action #:nodoc:all
735
+ class D4StatefulLexerExtension_pre_rhs__post_symbol::NVAction < Depager::LALR::Action #:nodoc:all
738
736
  include Depager::DecoratorUtils
739
- []
737
+
740
738
  on_reduce = [
741
739
  nil,
742
740
  :_act_0,
@@ -756,63 +754,63 @@ class D4StatefulLexerExtension_prerhs_postsymbol::NVAction < Depager::LALR::Acti
756
754
  end
757
755
 
758
756
 
759
- module_eval <<-'.,.,120998292310380.,.,', 'slex.dr', 180
757
+ module_eval <<-'.,.,122745803310395.,.,', 'slex.dr', 179
760
758
  def _act_0 val
761
759
  _, _option_list, _, = *val
762
760
 
763
761
  master.ins.push [g_parser.rhs.size, _option_list, false]
764
762
 
765
763
  end
766
- .,.,120998292310380.,.,
764
+ .,.,122745803310395.,.,
767
765
 
768
- module_eval <<-'.,.,120998292354182.,.,', 'slex.dr', 184
766
+ module_eval <<-'.,.,122745803327506.,.,', 'slex.dr', 183
769
767
  def _act_1 val
770
768
  _, _option_list, _, _, = *val
771
769
 
772
770
  master.ins.push [g_parser.rhs.size, _option_list, true]
773
771
 
774
772
  end
775
- .,.,120998292354182.,.,
773
+ .,.,122745803327506.,.,
776
774
 
777
- module_eval <<-'.,.,120998292345458.,.,', 'slex.dr', 190
775
+ module_eval <<-'.,.,122745803335394.,.,', 'slex.dr', 189
778
776
  def _act_2 val
779
777
  _option, = *val
780
778
  [_option]
781
779
 
782
780
  end
783
- .,.,120998292345458.,.,
781
+ .,.,122745803335394.,.,
784
782
 
785
- module_eval <<-'.,.,120998292359833.,.,', 'slex.dr', 191
783
+ module_eval <<-'.,.,122745803345722.,.,', 'slex.dr', 190
786
784
  def _act_3 val
787
785
  _option_list, _option, = *val
788
786
  _option_list << _option
789
787
 
790
788
  end
791
- .,.,120998292359833.,.,
789
+ .,.,122745803345722.,.,
792
790
 
793
- module_eval <<-'.,.,120998292340459.,.,', 'slex.dr', 194
791
+ module_eval <<-'.,.,122745803311899.,.,', 'slex.dr', 193
794
792
  def _act_4 val
795
793
  _, _SYMBOL, = *val
796
794
  [:GOTO, _SYMBOL.value]
797
795
 
798
796
  end
799
- .,.,120998292340459.,.,
797
+ .,.,122745803311899.,.,
800
798
 
801
- module_eval <<-'.,.,120998292339947.,.,', 'slex.dr', 195
799
+ module_eval <<-'.,.,122745803346690.,.,', 'slex.dr', 194
802
800
  def _act_5 val
803
801
  _, _SYMBOL, = *val
804
802
  [:ADD, _SYMBOL.value]
805
803
 
806
804
  end
807
- .,.,120998292339947.,.,
805
+ .,.,122745803346690.,.,
808
806
 
809
- module_eval <<-'.,.,120998292319195.,.,', 'slex.dr', 196
807
+ module_eval <<-'.,.,122745803330412.,.,', 'slex.dr', 195
810
808
  def _act_6 val
811
809
  _, _SYMBOL, = *val
812
810
  [:SUB, _SYMBOL.value]
813
811
 
814
812
  end
815
- .,.,120998292319195.,.,
813
+ .,.,122745803330412.,.,
816
814
 
817
815
  end
818
816