rbs 1.0.6 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +2 -2
  3. data/CHANGELOG.md +37 -0
  4. data/Rakefile +3 -2
  5. data/Steepfile +2 -0
  6. data/bin/rbs-prof +1 -1
  7. data/core/array.rbs +8 -4
  8. data/core/thread.rbs +14 -1
  9. data/lib/rbs.rb +3 -0
  10. data/lib/rbs/ancestor_graph.rb +90 -0
  11. data/lib/rbs/char_scanner.rb +20 -0
  12. data/lib/rbs/definition_builder.rb +38 -20
  13. data/lib/rbs/definition_builder/method_builder.rb +14 -0
  14. data/lib/rbs/environment.rb +42 -5
  15. data/lib/rbs/environment_walker.rb +4 -4
  16. data/lib/rbs/errors.rb +32 -17
  17. data/lib/rbs/parser.rb +437 -416
  18. data/lib/rbs/parser.y +29 -16
  19. data/lib/rbs/test/type_check.rb +7 -3
  20. data/lib/rbs/version.rb +1 -1
  21. data/sig/ancestor_graph.rbs +40 -0
  22. data/sig/char_scanner.rbs +9 -0
  23. data/sig/definition_builder.rbs +5 -1
  24. data/sig/environment.rbs +22 -2
  25. data/sig/environment_walker.rbs +39 -0
  26. data/sig/errors.rbs +42 -17
  27. data/sig/method_builder.rbs +2 -0
  28. data/sig/parser.rbs +11 -4
  29. data/sig/polyfill.rbs +0 -14
  30. data/stdlib/cgi/0/core.rbs +595 -0
  31. data/stdlib/rubygems/0/basic_specification.rbs +3 -0
  32. data/stdlib/rubygems/0/config_file.rbs +3 -0
  33. data/stdlib/rubygems/0/dependency_installer.rbs +5 -0
  34. data/stdlib/rubygems/0/installer.rbs +3 -0
  35. data/stdlib/rubygems/0/path_support.rbs +3 -0
  36. data/stdlib/rubygems/0/platform.rbs +3 -0
  37. data/stdlib/rubygems/0/request_set.rbs +7 -0
  38. data/stdlib/rubygems/0/requirement.rbs +3 -0
  39. data/stdlib/rubygems/0/rubygems.rbs +710 -0
  40. data/stdlib/rubygems/0/source_list.rbs +2 -0
  41. data/stdlib/rubygems/0/specification.rbs +3 -0
  42. data/stdlib/rubygems/0/stream_ui.rbs +3 -0
  43. data/stdlib/rubygems/0/uninstaller.rbs +3 -0
  44. data/stdlib/rubygems/0/version.rbs +228 -0
  45. data/stdlib/strscan/0/string_scanner.rbs +582 -0
  46. metadata +23 -2
@@ -1,14 +1,14 @@
1
1
  module RBS
2
2
  class EnvironmentWalker
3
- InstanceNode = Struct.new(:type_name, keyword_init: true)
4
- SingletonNode = Struct.new(:type_name, keyword_init: true)
5
- TypeNameNode = Struct.new(:type_name, keyword_init: true)
3
+ InstanceNode = _ = Struct.new(:type_name, keyword_init: true)
4
+ SingletonNode = _ = Struct.new(:type_name, keyword_init: true)
5
+ TypeNameNode = _ = Struct.new(:type_name, keyword_init: true)
6
6
 
7
7
  attr_reader :env
8
8
 
9
9
  def initialize(env:)
10
10
  @env = env
11
- @only_ancestors = nil
11
+ @only_ancestors = false
12
12
  end
13
13
 
14
14
  def builder
data/lib/rbs/errors.rb CHANGED
@@ -14,7 +14,12 @@ module RBS
14
14
  end
15
15
  end
16
16
 
17
- class InvalidTypeApplicationError < StandardError
17
+ class ErrorBase < StandardError; end
18
+ class ParsingError < ErrorBase; end
19
+ class LoadingError < ErrorBase; end
20
+ class DefinitionError < ErrorBase; end
21
+
22
+ class InvalidTypeApplicationError < DefinitionError
18
23
  attr_reader :type_name
19
24
  attr_reader :args
20
25
  attr_reader :params
@@ -35,7 +40,7 @@ module RBS
35
40
  end
36
41
  end
37
42
 
38
- class RecursiveAncestorError < StandardError
43
+ class RecursiveAncestorError < DefinitionError
39
44
  attr_reader :ancestors
40
45
  attr_reader :location
41
46
 
@@ -73,7 +78,7 @@ module RBS
73
78
  end
74
79
  end
75
80
 
76
- class NoTypeFoundError < StandardError
81
+ class NoTypeFoundError < ErrorBase
77
82
  attr_reader :type_name
78
83
  attr_reader :location
79
84
 
@@ -102,7 +107,7 @@ module RBS
102
107
  end
103
108
  end
104
109
 
105
- class NoSuperclassFoundError < StandardError
110
+ class NoSuperclassFoundError < DefinitionError
106
111
  attr_reader :type_name
107
112
  attr_reader :location
108
113
 
@@ -118,7 +123,7 @@ module RBS
118
123
  end
119
124
  end
120
125
 
121
- class NoSelfTypeFoundError < StandardError
126
+ class NoSelfTypeFoundError < DefinitionError
122
127
  attr_reader :type_name
123
128
  attr_reader :location
124
129
 
@@ -145,7 +150,7 @@ module RBS
145
150
  end
146
151
  end
147
152
 
148
- class NoMixinFoundError < StandardError
153
+ class NoMixinFoundError < DefinitionError
149
154
  attr_reader :type_name
150
155
  attr_reader :member
151
156
 
@@ -174,7 +179,7 @@ module RBS
174
179
  end
175
180
  end
176
181
 
177
- class DuplicatedMethodDefinitionError < StandardError
182
+ class DuplicatedMethodDefinitionError < DefinitionError
178
183
  attr_reader :type
179
184
  attr_reader :method_name
180
185
  attr_reader :members
@@ -200,6 +205,10 @@ module RBS
200
205
  end
201
206
  end
202
207
 
208
+ def type_name
209
+ type.name
210
+ end
211
+
203
212
  def location
204
213
  members[0].location
205
214
  end
@@ -209,7 +218,7 @@ module RBS
209
218
  end
210
219
  end
211
220
 
212
- class DuplicatedInterfaceMethodDefinitionError < StandardError
221
+ class DuplicatedInterfaceMethodDefinitionError < DefinitionError
213
222
  attr_reader :type
214
223
  attr_reader :method_name
215
224
  attr_reader :member
@@ -230,23 +239,29 @@ module RBS
230
239
  "#{type.name}##{method_name}"
231
240
  end
232
241
  end
242
+
243
+ def type_name
244
+ type.name
245
+ end
233
246
  end
234
247
 
235
- class UnknownMethodAliasError < StandardError
248
+ class UnknownMethodAliasError < DefinitionError
249
+ attr_reader :type_name
236
250
  attr_reader :original_name
237
251
  attr_reader :aliased_name
238
252
  attr_reader :location
239
253
 
240
- def initialize(original_name:, aliased_name:, location:)
254
+ def initialize(type_name:, original_name:, aliased_name:, location:)
255
+ @type_name = type_name
241
256
  @original_name = original_name
242
257
  @aliased_name = aliased_name
243
258
  @location = location
244
259
 
245
- super "#{Location.to_string location}: Unknown method alias name: #{original_name} => #{aliased_name}"
260
+ super "#{Location.to_string location}: Unknown method alias name: #{original_name} => #{aliased_name} (#{type_name})"
246
261
  end
247
262
  end
248
263
 
249
- class SuperclassMismatchError < StandardError
264
+ class SuperclassMismatchError < DefinitionError
250
265
  attr_reader :name
251
266
  attr_reader :entry
252
267
 
@@ -257,7 +272,7 @@ module RBS
257
272
  end
258
273
  end
259
274
 
260
- class InvalidOverloadMethodError < StandardError
275
+ class InvalidOverloadMethodError < DefinitionError
261
276
  attr_reader :type_name
262
277
  attr_reader :method_name
263
278
  attr_reader :kind
@@ -280,7 +295,7 @@ module RBS
280
295
  end
281
296
  end
282
297
 
283
- class GenericParameterMismatchError < StandardError
298
+ class GenericParameterMismatchError < LoadingError
284
299
  attr_reader :name
285
300
  attr_reader :decl
286
301
 
@@ -291,7 +306,7 @@ module RBS
291
306
  end
292
307
  end
293
308
 
294
- class DuplicatedDeclarationError < StandardError
309
+ class DuplicatedDeclarationError < LoadingError
295
310
  attr_reader :name
296
311
  attr_reader :decls
297
312
 
@@ -304,7 +319,7 @@ module RBS
304
319
  end
305
320
  end
306
321
 
307
- class InvalidVarianceAnnotationError < StandardError
322
+ class InvalidVarianceAnnotationError < DefinitionError
308
323
  attr_reader :type_name
309
324
  attr_reader :param
310
325
  attr_reader :location
@@ -318,7 +333,7 @@ module RBS
318
333
  end
319
334
  end
320
335
 
321
- class RecursiveAliasDefinitionError < StandardError
336
+ class RecursiveAliasDefinitionError < DefinitionError
322
337
  attr_reader :type
323
338
  attr_reader :defs
324
339
 
data/lib/rbs/parser.rb CHANGED
@@ -8,7 +8,7 @@ require 'racc/parser.rb'
8
8
  module RBS
9
9
  class Parser < Racc::Parser
10
10
 
11
- module_eval(<<'...end parser.y/module_eval...', 'parser.y', 1068)
11
+ module_eval(<<'...end parser.y/module_eval...', 'parser.y', 1072)
12
12
 
13
13
  Types = RBS::Types
14
14
  Namespace = RBS::Namespace
@@ -28,8 +28,6 @@ class LocatedValue
28
28
  end
29
29
  end
30
30
 
31
- require "strscan"
32
-
33
31
  attr_reader :input
34
32
  attr_reader :buffer
35
33
  attr_reader :eof_re
@@ -38,7 +36,7 @@ def initialize(type, buffer:, eof_re:)
38
36
  super()
39
37
  @type = type
40
38
  @buffer = buffer
41
- @input = StringScanner.new(buffer.content)
39
+ @input = CharScanner.new(buffer.content)
42
40
  @eof_re = eof_re
43
41
  @eof = false
44
42
  @bound_variables_stack = []
@@ -154,11 +152,7 @@ def new_token(type, value = input.matched)
154
152
  end
155
153
 
156
154
  def charpos(scanner)
157
- if @ascii_only
158
- scanner.pos
159
- else
160
- scanner.charpos
161
- end
155
+ scanner.charpos
162
156
  end
163
157
 
164
158
  def empty_params_result
@@ -365,7 +359,11 @@ def next_token
365
359
  s = input.matched.yield_self {|s| s[1, s.length - 2] }.gsub(/\\'/, "'")
366
360
  new_token(:tSTRING, s)
367
361
  else
368
- raise "Unexpected token: #{input.peek(10)}..."
362
+ text = input.peek(10)
363
+ start_index = charpos(input)
364
+ end_index = start_index + text.length
365
+ location = RBS::Location.new(buffer: buffer, start_pos: start_index, end_pos: end_index)
366
+ raise LexerError.new(input: text, location: location)
369
367
  end
370
368
  end
371
369
 
@@ -373,7 +371,7 @@ def on_error(token_id, error_value, value_stack)
373
371
  raise SyntaxError.new(token_str: token_to_str(token_id), error_value: error_value, value_stack: value_stack)
374
372
  end
375
373
 
376
- class SyntaxError < StandardError
374
+ class SyntaxError < ParsingError
377
375
  attr_reader :token_str, :error_value, :value_stack
378
376
 
379
377
  def initialize(token_str:, error_value:, value_stack: nil)
@@ -385,7 +383,7 @@ class SyntaxError < StandardError
385
383
  end
386
384
  end
387
385
 
388
- class SemanticsError < StandardError
386
+ class SemanticsError < ParsingError
389
387
  attr_reader :subject, :location, :original_message
390
388
 
391
389
  def initialize(message, subject:, location:)
@@ -397,77 +395,88 @@ class SemanticsError < StandardError
397
395
  end
398
396
  end
399
397
 
398
+ class LexerError < ParsingError
399
+ attr_reader :location, :input
400
+
401
+ def initialize(input:, location:)
402
+ @input = input
403
+ @location = location
404
+
405
+ super "Unexpected string: #{input}..."
406
+ end
407
+ end
408
+
400
409
  ...end parser.y/module_eval...
401
410
  ##### State transition tables begin ###
402
411
 
403
412
  clist = [
404
- '351,352,33,353,5,113,37,33,33,42,338,394,49,33,33,350,43,245,336,393',
405
- '40,41,55,56,57,58,59,60,61,62,355,33,63,54,64,65,66,77,67,68,69,83,33',
406
- '32,53,346,340,341,32,32,344,342,345,305,32,32,33,343,82,70,71,72,74',
407
- '76,75,339,348,349,73,78,80,126,32,124,48,84,85,81,86,351,352,33,353',
408
- '32,96,97,98,99,104,49,39,33,33,33,350,205,205,32,125,40,41,55,56,57',
409
- '58,59,60,61,62,79,185,63,54,64,65,66,77,67,68,69,83,53,32,160,346,340',
410
- '341,53,53,344,342,345,32,32,32,125,343,82,70,71,72,74,76,75,339,348',
411
- '349,73,78,80,40,41,161,223,84,85,81,86,351,352,120,353,180,96,97,98',
412
- '99,164,179,101,102,165,103,350,166,280,327,360,224,39,55,56,57,58,59',
413
- '60,61,62,79,397,63,54,64,65,66,77,67,68,69,83,281,125,125,346,340,341',
414
- '398,399,344,342,345,323,40,41,125,343,82,70,71,72,74,76,75,339,348,349',
415
- '73,78,80,167,319,125,125,84,85,81,86,351,352,168,353,170,96,97,98,99',
416
- '2,3,4,40,41,171,350,40,41,40,41,40,41,55,56,57,58,59,60,61,62,79,172',
417
- '63,54,64,65,66,77,67,68,69,83,40,41,113,346,340,341,40,41,344,342,345',
418
- '40,41,40,41,343,82,70,71,72,74,76,75,339,348,349,73,78,80,351,352,178',
419
- '353,84,85,81,86,-4,181,-242,184,33,41,117,350,-242,40,41,40,41,113,55',
420
- '56,57,58,59,60,61,62,79,187,63,54,64,65,66,77,67,68,69,83,40,41,180',
421
- '346,340,341,283,284,344,342,345,32,372,373,188,343,82,70,71,72,74,76',
422
- '75,339,348,349,73,78,80,351,352,-104,353,84,85,81,86,40,41,40,41,-105',
423
- '39,-106,350,388,389,40,41,40,41,55,56,57,58,59,60,61,62,79,-107,63,54',
424
- '64,65,66,77,67,68,69,83,40,41,-108,346,340,341,40,41,344,342,345,40',
425
- '41,40,41,343,82,70,71,72,74,76,75,339,348,349,73,78,80,40,41,-109,-110',
426
- '84,85,81,86,351,352,-111,353,-112,96,97,98,99,-113,-114,48,-129,193',
427
- '194,350,195,196,197,198,206,207,55,56,57,58,59,60,61,62,79,42,63,54',
428
- '64,65,66,77,67,68,69,83,225,239,248,346,340,341,249,250,344,342,345',
429
- '252,254,255,42,343,82,70,71,72,74,76,75,339,348,349,73,78,80,351,352',
430
- '257,353,84,85,81,86,257,257,263,42,225,267,271,350,273,275,276,312,271',
431
- '314,55,56,57,58,59,60,61,62,79,275,63,54,64,65,66,77,67,68,69,83,324',
432
- '325,326,346,340,341,329,329,344,342,345,329,359,361,368,343,82,70,71',
433
- '72,74,76,75,339,348,349,73,78,80,369,370,371,374,84,85,81,86,33,376',
434
- '379,96,97,98,99,379,379,392,22,23,21,395,26,-219,25,396,30,403,131,132',
435
- '133,134,135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,404',
436
- '32,405,407,412,28,413,156,414,157,159,415,412,,,,82,70,71,72,74,76,75',
437
- ',,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,,25,,30',
438
- ',131,132,133,134,135,136,137,138,142,16,139,130,140,141,66,77,67,68',
439
- '69,83,,32,,,174,28,,177,,175,,,,,,,82,70,71,72,74,76,75,,,,73,78,80',
440
- '176,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131',
413
+ '354,355,33,356,5,113,37,33,33,42,341,397,49,33,33,353,43,248,339,396',
414
+ '40,41,55,56,57,58,59,60,61,62,358,33,63,54,64,65,66,77,67,68,69,83,33',
415
+ '32,53,349,343,344,32,32,347,345,348,308,32,32,33,346,82,70,71,72,74',
416
+ '76,75,342,351,352,73,78,80,126,32,185,48,84,85,81,86,354,355,33,356',
417
+ '32,96,97,98,99,104,49,39,33,33,33,353,207,207,32,186,40,41,55,56,57',
418
+ '58,59,60,61,62,79,226,63,54,64,65,66,77,67,68,69,83,53,32,160,349,343',
419
+ '344,53,53,347,345,348,32,32,32,227,346,82,70,71,72,74,76,75,342,351',
420
+ '352,73,78,80,40,41,161,283,84,85,81,86,354,355,120,356,180,96,97,98',
421
+ '99,125,179,101,102,165,103,353,166,330,363,400,284,39,55,56,57,58,59',
422
+ '60,61,62,79,401,63,54,64,65,66,77,67,68,69,83,186,186,186,349,343,344',
423
+ '402,167,347,345,348,326,40,41,186,346,82,70,71,72,74,76,75,342,351,352',
424
+ '73,78,80,168,322,186,170,84,85,81,86,354,355,171,356,172,96,97,98,99',
425
+ '2,3,4,40,41,113,353,40,41,40,41,40,41,55,56,57,58,59,60,61,62,79,178',
426
+ '63,54,64,65,66,77,67,68,69,83,40,41,181,349,343,344,40,41,347,345,348',
427
+ '40,41,40,41,346,82,70,71,72,74,76,75,342,351,352,73,78,80,354,355,184',
428
+ '356,84,85,81,86,-4,41,-242,187,33,189,117,353,-242,40,41,40,41,113,55',
429
+ '56,57,58,59,60,61,62,79,180,63,54,64,65,66,77,67,68,69,83,40,41,190',
430
+ '349,343,344,286,287,347,345,348,32,375,376,-104,346,82,70,71,72,74,76',
431
+ '75,342,351,352,73,78,80,354,355,-105,356,84,85,81,86,40,41,40,41,-106',
432
+ '39,-107,353,391,392,40,41,40,41,55,56,57,58,59,60,61,62,79,-108,63,54',
433
+ '64,65,66,77,67,68,69,83,40,41,-109,349,343,344,40,41,347,345,348,40',
434
+ '41,40,41,346,82,70,71,72,74,76,75,342,351,352,73,78,80,40,41,-110,-111',
435
+ '84,85,81,86,354,355,-112,356,-113,96,97,98,99,-114,48,-129,195,196,197',
436
+ '353,198,199,200,208,209,42,55,56,57,58,59,60,61,62,79,210,63,54,64,65',
437
+ '66,77,67,68,69,83,228,242,251,349,343,344,252,253,347,345,348,255,257',
438
+ '258,42,346,82,70,71,72,74,76,75,342,351,352,73,78,80,354,355,260,356',
439
+ '84,85,81,86,260,260,266,42,228,270,274,353,276,278,279,315,274,317,55',
440
+ '56,57,58,59,60,61,62,79,278,63,54,64,65,66,77,67,68,69,83,327,328,329',
441
+ '349,343,344,332,332,347,345,348,332,362,364,371,346,82,70,71,72,74,76',
442
+ '75,342,351,352,73,78,80,372,373,374,377,84,85,81,86,33,379,382,96,97',
443
+ '98,99,382,382,395,22,23,21,398,26,-219,25,399,30,406,131,132,133,134',
444
+ '135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,407,32,408',
445
+ '410,415,28,416,156,417,157,159,418,415,,,,82,70,71,72,74,76,75,,,,73',
446
+ '78,80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,,25,,30,,131',
441
447
  '132,133,134,135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83',
442
- ',32,,,,28,,156,,157,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84',
443
- '85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133,134',
444
- '135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,',
445
- '156,,157,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33',
446
- ',,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133,134,135,136,137',
447
- '138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,,231,,,159,,',
448
+ ',32,,,174,28,,177,,175,,,,,,,82,70,71,72,74,76,75,,,,73,78,80,176,,',
449
+ ',84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133',
450
+ '134,135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,',
451
+ '28,,156,,157,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81',
452
+ '86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133,134,135',
453
+ '136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,,156',
454
+ ',157,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,',
455
+ '96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133,134,135,136,137',
456
+ '138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,,234,,,159,,',
448
457
  ',,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99',
449
458
  ',,,22,23,21,,26,-219,25,,30,,131,132,133,134,135,136,137,138,142,16',
450
459
  '139,130,140,141,66,77,67,68,69,83,,32,,,,28,,156,,157,159,,,,,,82,70',
451
460
  '71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23',
452
461
  '21,,26,-219,25,,30,,131,132,133,134,135,136,137,138,142,16,139,130,140',
453
- '141,66,77,67,68,69,83,,32,,,,28,,231,,,159,,,,,,82,70,71,72,74,76,75',
462
+ '141,66,77,67,68,69,83,,32,,,,28,,234,,,159,,,,,,82,70,71,72,74,76,75',
454
463
  ',,,73,78,80,,,,,84,85,81,86,96,97,98,99,,,,90,89,91,,,,,,,,55,56,57',
455
- '58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,,,,,,,,,190,,191,,',
464
+ '58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,,,,,,,,,192,,193,,',
456
465
  ',,,82,70,71,72,74,76,75,,95,94,73,78,80,,,,,84,85,81,86,96,97,98,99',
457
466
  ',,,90,89,91,,,,,,40,41,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77',
458
- '67,68,69,83,192,,,,,,,,,,,,,,,,82,70,71,72,74,76,75,,95,94,73,78,80',
467
+ '67,68,69,83,194,,,,,,,,,,,,,,,,82,70,71,72,74,76,75,,95,94,73,78,80',
459
468
  '96,97,98,99,84,85,81,86,,,,,,,,,,55,56,57,58,59,60,61,62,79,,63,54,64',
460
- '65,66,77,67,68,69,83,190,,191,,,,,231,,,159,,,,,,82,70,71,72,74,76,75',
461
- '190,,191,73,78,80,96,97,98,99,84,85,81,86,,,,,,,,40,41,55,56,57,58,59',
462
- '60,61,62,79,,63,54,64,65,66,77,67,68,69,83,192,40,41,,,,,231,,,159,',
463
- ',,,,82,70,71,72,74,76,75,192,,,73,78,80,96,97,98,99,84,85,81,86,,,,',
464
- ',,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,190,',
465
- '191,190,,191,190,,191,,,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84',
466
- '85,81,86,,,,,,,,40,41,,40,41,,40,41,-242,,33,,117,,-242,,,300,301,113',
467
- ',,192,,,192,,,192,,-242,,33,,117,,-242,,302,300,301,113,,,,,,297,296',
468
- ',,32,-242,,33,,117,,-242,,302,300,301,113,,,,288,,297,296,,174,32,,177',
469
- ',175,,,323,,302,,,,,,,311,,297,296,,33,32,,176,,319,320,316,317,318',
470
- '22,23,21,321,26,,25,315,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
469
+ '65,66,77,67,68,69,83,192,,193,,,,,234,,,159,,,,,,82,70,71,72,74,76,75',
470
+ '192,,193,73,78,80,96,97,98,99,84,85,81,86,,,,,,,,40,41,55,56,57,58,59',
471
+ '60,61,62,79,,63,54,64,65,66,77,67,68,69,83,194,40,41,,,,,234,,,159,',
472
+ ',,,,82,70,71,72,74,76,75,194,,,73,78,80,96,97,98,99,84,85,81,86,,,,',
473
+ ',,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,192,',
474
+ '193,192,,193,192,,193,,,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84',
475
+ '85,81,86,,,,,,,,40,41,,40,41,,40,41,-242,,33,,117,,-242,,,303,304,113',
476
+ ',,194,,,194,,,194,,-242,,33,,117,,-242,,305,303,304,113,,,,,,300,299',
477
+ ',,32,-242,,33,,117,,-242,,305,303,304,113,,,,291,,300,299,,174,32,,177',
478
+ ',175,,,326,,305,,,,,,,314,,300,299,,33,32,,176,,322,323,319,320,321',
479
+ '22,23,21,324,26,,25,318,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
471
480
  ',,33,,,,,32,,,,28,22,23,21,,26,,25,45,30,,8,12,19,20,9,10,13,14,15,16',
472
481
  '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
473
482
  '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
@@ -476,44 +485,45 @@ clist = [
476
485
  '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
477
486
  ',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
478
487
  ',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
479
- '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
480
- '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
481
- '19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25',
482
- ',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23',
483
- '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
484
- ',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
485
- ',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
486
- '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
487
- '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
488
- '19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25',
489
- ',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23',
490
- '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
491
- ',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
492
- ',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
493
- '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
494
- '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
495
- '19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25',
496
- ',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23',
497
- '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
498
- ',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
499
- ',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
500
- '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
501
- '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
502
- '19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25',
503
- ',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23',
504
- '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
505
- ',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
506
- ',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
507
- '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
508
- '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
509
- '19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25',
510
- ',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23',
511
- '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
512
- ',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
513
- ',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
514
- '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
515
- '13,14,15,16,17,18,11,27,,,,,,,,32,,,,28' ]
516
- racc_action_table = arr = ::Array.new(3008, nil)
488
+ '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,-246,30,,8,12,19,20,9',
489
+ '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
490
+ '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
491
+ ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
492
+ '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
493
+ '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
494
+ '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
495
+ '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
496
+ '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
497
+ '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
498
+ ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
499
+ '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
500
+ '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
501
+ '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
502
+ '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
503
+ '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
504
+ '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
505
+ ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
506
+ '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
507
+ '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
508
+ '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
509
+ '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
510
+ '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
511
+ '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
512
+ ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
513
+ '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
514
+ '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
515
+ '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
516
+ '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
517
+ '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
518
+ '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
519
+ ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
520
+ '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
521
+ '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
522
+ '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
523
+ '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
524
+ '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
525
+ '12,19,20,9,10,13,14,15,16,17,18,11,27,,,,,,,,32,,,,28' ]
526
+ racc_action_table = arr = ::Array.new(3044, nil)
517
527
  idx = 0
518
528
  clist.each do |str|
519
529
  str.split(',', -1).each do |i|
@@ -523,82 +533,82 @@ clist = [
523
533
  end
524
534
 
525
535
  clist = [
526
- '323,323,48,323,1,277,5,177,215,7,322,379,28,216,217,323,24,216,322,379',
527
- '44,44,323,323,323,323,323,323,323,323,323,245,323,323,323,323,323,323',
528
- '323,323,323,323,267,48,28,323,323,323,177,215,323,323,323,277,216,217',
529
- '273,323,323,323,323,323,323,323,323,323,323,323,323,323,323,47,245,46',
530
- '27,323,323,323,323,330,330,275,330,267,330,330,330,330,32,119,35,319',
531
- '320,321,330,160,206,273,46,47,47,330,330,330,330,330,330,330,330,330',
532
- '123,330,330,330,330,330,330,330,330,330,330,119,275,51,330,330,330,160',
533
- '206,330,330,330,319,320,321,123,330,330,330,330,330,330,330,330,330',
534
- '330,330,330,330,330,6,6,51,183,330,330,330,330,331,331,36,331,116,331',
535
- '331,331,331,87,116,31,31,88,31,331,89,268,304,328,183,6,331,331,331',
536
- '331,331,331,331,331,331,384,331,331,331,331,331,331,331,331,331,331',
537
- '268,304,328,331,331,331,385,386,331,331,331,310,169,169,384,331,331',
538
- '331,331,331,331,331,331,331,331,331,331,331,331,90,310,385,386,331,331',
539
- '331,331,332,332,91,332,93,332,332,332,332,0,0,0,186,186,94,332,209,209',
540
- '210,210,211,211,332,332,332,332,332,332,332,332,332,95,332,332,332,332',
541
- '332,332,332,332,332,332,212,212,113,332,332,332,213,213,332,332,332',
542
- '214,214,220,220,332,332,332,332,332,332,332,332,332,332,332,332,332',
543
- '332,356,356,115,356,332,332,332,332,34,117,34,120,34,121,34,356,34,221',
544
- '221,222,222,34,356,356,356,356,356,356,356,356,356,127,356,356,356,356',
545
- '356,356,356,356,356,356,264,264,128,356,356,356,270,270,356,356,356',
546
- '34,347,347,129,356,356,356,356,356,356,356,356,356,356,356,356,356,356',
547
- '374,374,130,374,356,356,356,356,357,357,358,358,131,34,132,374,371,371',
548
- '377,377,380,380,374,374,374,374,374,374,374,374,374,133,374,374,374',
549
- '374,374,374,374,374,374,374,382,382,134,374,374,374,391,391,374,374',
550
- '374,406,406,408,408,374,374,374,374,374,374,374,374,374,374,374,374',
551
- '374,374,409,409,135,136,374,374,374,374,387,387,137,387,138,387,387',
552
- '387,387,139,140,141,142,145,146,387,148,150,153,154,161,162,387,387',
553
- '387,387,387,387,387,387,387,163,387,387,387,387,387,387,387,387,387',
554
- '387,188,204,218,387,387,387,219,224,387,387,387,229,240,241,242,387',
555
- '387,387,387,387,387,387,387,387,387,387,387,387,387,414,414,243,414',
556
- '387,387,387,387,244,246,247,251,254,256,257,414,258,259,261,279,281',
557
- '282,414,414,414,414,414,414,414,414,414,286,414,414,414,414,414,414',
558
- '414,414,414,414,300,301,302,414,414,414,316,317,414,414,414,318,326',
559
- '329,333,414,414,414,414,414,414,414,414,414,414,414,414,414,414,334',
560
- '335,337,355,414,414,414,414,49,359,363,49,49,49,49,365,367,378,49,49',
561
- '49,381,49,49,49,383,49,388,49,49,49,49,49,49,49,49,49,49,49,49,49,49',
562
- '49,49,49,49,49,49,389,49,390,394,400,49,402,49,405,49,49,411,415,,,',
563
- '49,49,49,49,49,49,49,,,,49,49,49,,,,,49,49,49,49,156,,,156,156,156,156',
564
- ',,,156,156,156,,156,,156,,156,,156,156,156,156,156,156,156,156,156,156',
565
- '156,156,156,156,156,156,156,156,156,156,,156,,,114,156,,114,,114,,,',
566
- ',,,156,156,156,156,156,156,156,,,,156,156,156,114,,,,156,156,156,156',
567
- '194,,,194,194,194,194,,,,194,194,194,,194,194,194,,194,,194,194,194',
568
- '194,194,194,194,194,194,194,194,194,194,194,194,194,194,194,194,194',
569
- ',194,,,,194,,194,,194,194,,,,,,194,194,194,194,194,194,194,,,,194,194',
570
- '194,,,,,194,194,194,194,195,,,195,195,195,195,,,,195,195,195,,195,195',
571
- '195,,195,,195,195,195,195,195,195,195,195,195,195,195,195,195,195,195',
572
- '195,195,195,195,195,,195,,,,195,,195,,195,195,,,,,,195,195,195,195,195',
573
- '195,195,,,,195,195,195,,,,,195,195,195,195,196,,,196,196,196,196,,,',
574
- '196,196,196,,196,196,196,,196,,196,196,196,196,196,196,196,196,196,196',
575
- '196,196,196,196,196,196,196,196,196,196,,196,,,,196,,196,,,196,,,,,',
576
- '196,196,196,196,196,196,196,,,,196,196,196,,,,,196,196,196,196,205,',
577
- ',205,205,205,205,,,,205,205,205,,205,205,205,,205,,205,205,205,205,205',
578
- '205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,,205,,,',
579
- '205,,205,,205,205,,,,,,205,205,205,205,205,205,205,,,,205,205,205,,',
580
- ',,205,205,205,205,252,,,252,252,252,252,,,,252,252,252,,252,252,252',
581
- ',252,,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252',
582
- '252,252,252,252,,252,,,,252,,252,,,252,,,,,,252,252,252,252,252,252',
583
- '252,,,,252,252,252,,,,,252,252,252,252,30,30,30,30,,,,30,30,30,,,,,',
536
+ '326,326,48,326,1,280,5,177,218,7,325,382,28,219,220,326,24,219,325,382',
537
+ '44,44,326,326,326,326,326,326,326,326,326,248,326,326,326,326,326,326',
538
+ '326,326,326,326,270,48,28,326,326,326,177,218,326,326,326,280,219,220',
539
+ '276,326,326,326,326,326,326,326,326,326,326,326,326,326,326,47,248,123',
540
+ '27,326,326,326,326,333,333,278,333,270,333,333,333,333,32,119,35,322',
541
+ '323,324,333,160,208,276,123,47,47,333,333,333,333,333,333,333,333,333',
542
+ '183,333,333,333,333,333,333,333,333,333,333,119,278,51,333,333,333,160',
543
+ '208,333,333,333,322,323,324,183,333,333,333,333,333,333,333,333,333',
544
+ '333,333,333,333,333,6,6,51,271,333,333,333,333,334,334,36,334,116,334',
545
+ '334,334,334,46,116,31,31,87,31,334,89,307,331,387,271,6,334,334,334',
546
+ '334,334,334,334,334,334,388,334,334,334,334,334,334,334,334,334,334',
547
+ '307,331,387,334,334,334,389,90,334,334,334,313,169,169,388,334,334,334',
548
+ '334,334,334,334,334,334,334,334,334,334,334,91,313,389,93,334,334,334',
549
+ '334,335,335,94,335,95,335,335,335,335,0,0,0,188,188,113,335,212,212',
550
+ '213,213,214,214,335,335,335,335,335,335,335,335,335,115,335,335,335',
551
+ '335,335,335,335,335,335,335,215,215,117,335,335,335,216,216,335,335',
552
+ '335,217,217,223,223,335,335,335,335,335,335,335,335,335,335,335,335',
553
+ '335,335,359,359,120,359,335,335,335,335,34,121,34,124,34,127,34,359',
554
+ '34,224,224,225,225,34,359,359,359,359,359,359,359,359,359,128,359,359',
555
+ '359,359,359,359,359,359,359,359,267,267,129,359,359,359,273,273,359',
556
+ '359,359,34,350,350,130,359,359,359,359,359,359,359,359,359,359,359,359',
557
+ '359,359,377,377,131,377,359,359,359,359,360,360,361,361,132,34,133,377',
558
+ '374,374,380,380,383,383,377,377,377,377,377,377,377,377,377,134,377',
559
+ '377,377,377,377,377,377,377,377,377,385,385,135,377,377,377,394,394',
560
+ '377,377,377,409,409,411,411,377,377,377,377,377,377,377,377,377,377',
561
+ '377,377,377,377,412,412,136,137,377,377,377,377,390,390,138,390,139',
562
+ '390,390,390,390,140,141,142,145,146,148,390,150,153,154,161,162,163',
563
+ '390,390,390,390,390,390,390,390,390,164,390,390,390,390,390,390,390',
564
+ '390,390,390,190,206,221,390,390,390,222,227,390,390,390,232,243,244',
565
+ '245,390,390,390,390,390,390,390,390,390,390,390,390,390,390,417,417',
566
+ '246,417,390,390,390,390,247,249,250,254,257,259,260,417,261,262,264',
567
+ '282,284,285,417,417,417,417,417,417,417,417,417,289,417,417,417,417',
568
+ '417,417,417,417,417,417,303,304,305,417,417,417,319,320,417,417,417',
569
+ '321,329,332,336,417,417,417,417,417,417,417,417,417,417,417,417,417',
570
+ '417,337,338,340,358,417,417,417,417,49,362,366,49,49,49,49,368,370,381',
571
+ '49,49,49,384,49,49,49,386,49,391,49,49,49,49,49,49,49,49,49,49,49,49',
572
+ '49,49,49,49,49,49,49,49,392,49,393,397,403,49,405,49,408,49,49,414,418',
573
+ ',,,49,49,49,49,49,49,49,,,,49,49,49,,,,,49,49,49,49,156,,,156,156,156',
574
+ '156,,,,156,156,156,,156,,156,,156,,156,156,156,156,156,156,156,156,156',
575
+ '156,156,156,156,156,156,156,156,156,156,156,,156,,,114,156,,114,,114',
576
+ ',,,,,,156,156,156,156,156,156,156,,,,156,156,156,114,,,,156,156,156',
577
+ '156,196,,,196,196,196,196,,,,196,196,196,,196,196,196,,196,,196,196',
578
+ '196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196',
579
+ '196,,196,,,,196,,196,,196,196,,,,,,196,196,196,196,196,196,196,,,,196',
580
+ '196,196,,,,,196,196,196,196,197,,,197,197,197,197,,,,197,197,197,,197',
581
+ '197,197,,197,,197,197,197,197,197,197,197,197,197,197,197,197,197,197',
582
+ '197,197,197,197,197,197,,197,,,,197,,197,,197,197,,,,,,197,197,197,197',
583
+ '197,197,197,,,,197,197,197,,,,,197,197,197,197,198,,,198,198,198,198',
584
+ ',,,198,198,198,,198,198,198,,198,,198,198,198,198,198,198,198,198,198',
585
+ '198,198,198,198,198,198,198,198,198,198,198,,198,,,,198,,198,,,198,',
586
+ ',,,,198,198,198,198,198,198,198,,,,198,198,198,,,,,198,198,198,198,207',
587
+ ',,207,207,207,207,,,,207,207,207,,207,207,207,,207,,207,207,207,207',
588
+ '207,207,207,207,207,207,207,207,207,207,207,207,207,207,207,207,,207',
589
+ ',,,207,,207,,207,207,,,,,,207,207,207,207,207,207,207,,,,207,207,207',
590
+ ',,,,207,207,207,207,255,,,255,255,255,255,,,,255,255,255,,255,255,255',
591
+ ',255,,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255',
592
+ '255,255,255,255,,255,,,,255,,255,,,255,,,,,,255,255,255,255,255,255',
593
+ '255,,,,255,255,255,,,,,255,255,255,255,30,30,30,30,,,,30,30,30,,,,,',
584
594
  ',,30,30,30,30,30,30,30,30,30,,30,30,30,30,30,30,30,30,30,30,,,,,,,,',
585
595
  '143,,143,,,,,,30,30,30,30,30,30,30,,30,30,30,30,30,,,,,30,30,30,30,165',
586
596
  '165,165,165,,,,165,165,165,,,,,,143,143,165,165,165,165,165,165,165',
587
597
  '165,165,,165,165,165,165,165,165,165,165,165,165,143,,,,,,,,,,,,,,,',
588
- '165,165,165,165,165,165,165,,165,165,165,165,165,197,197,197,197,165',
589
- '165,165,165,,,,,,,,,,197,197,197,197,197,197,197,197,197,,197,197,197',
590
- '197,197,197,197,197,197,197,199,,199,,,,,197,,,197,,,,,,197,197,197',
591
- '197,197,197,197,201,,201,197,197,197,198,198,198,198,197,197,197,197',
592
- ',,,,,,,199,199,198,198,198,198,198,198,198,198,198,,198,198,198,198',
593
- '198,198,198,198,198,198,199,201,201,,,,,198,,,198,,,,,,198,198,198,198',
594
- '198,198,198,201,,,198,198,198,231,231,231,231,198,198,198,198,,,,,,',
595
- ',,,231,231,231,231,231,231,231,231,231,,231,231,231,231,231,231,231',
596
- '231,231,231,202,,202,203,,203,235,,235,,,,,,,,231,231,231,231,231,231',
597
- '231,,,,231,231,231,,,,,231,231,231,231,,,,,,,,202,202,,203,203,,235',
598
- '235,274,,274,,274,,274,,,274,274,274,,,202,,,203,,,235,,278,,278,,278',
599
- ',278,,274,278,278,278,,,,,,274,274,,,274,285,,285,,285,,285,,278,285',
600
- '285,285,,,,274,,278,278,,287,278,,287,,287,,,287,,285,,,,,,,278,,285',
601
- '285,,2,285,,287,,287,287,287,287,287,2,2,2,287,2,,2,285,2,,2,2,2,2,2',
598
+ '165,165,165,165,165,165,165,,165,165,165,165,165,199,199,199,199,165',
599
+ '165,165,165,,,,,,,,,,199,199,199,199,199,199,199,199,199,,199,199,199',
600
+ '199,199,199,199,199,199,199,201,,201,,,,,199,,,199,,,,,,199,199,199',
601
+ '199,199,199,199,203,,203,199,199,199,200,200,200,200,199,199,199,199',
602
+ ',,,,,,,201,201,200,200,200,200,200,200,200,200,200,,200,200,200,200',
603
+ '200,200,200,200,200,200,201,203,203,,,,,200,,,200,,,,,,200,200,200,200',
604
+ '200,200,200,203,,,200,200,200,234,234,234,234,200,200,200,200,,,,,,',
605
+ ',,,234,234,234,234,234,234,234,234,234,,234,234,234,234,234,234,234',
606
+ '234,234,234,204,,204,205,,205,238,,238,,,,,,,,234,234,234,234,234,234',
607
+ '234,,,,234,234,234,,,,,234,234,234,234,,,,,,,,204,204,,205,205,,238',
608
+ '238,277,,277,,277,,277,,,277,277,277,,,204,,,205,,,238,,281,,281,,281',
609
+ ',281,,277,281,281,281,,,,,,277,277,,,277,288,,288,,288,,288,,281,288',
610
+ '288,288,,,,277,,281,281,,290,281,,290,,290,,,290,,288,,,,,,,281,,288',
611
+ '288,,2,288,,290,,290,290,290,290,290,2,2,2,290,2,,2,288,2,,2,2,2,2,2',
602
612
  '2,2,2,2,2,2,2,2,2,,,25,,,,,2,,,,2,25,25,25,,25,,25,25,25,,25,25,25,25',
603
613
  '25,25,25,25,25,25,25,25,25,25,,,26,,,,,25,,,,25,26,26,26,,26,,26,,26',
604
614
  ',26,26,26,26,26,26,26,26,26,26,26,26,26,26,,,40,,,,,26,,,,26,40,40,40',
@@ -608,54 +618,56 @@ clist = [
608
618
  '43,43,43,43,,,53,,,,,43,,,,43,53,53,53,,53,,53,,53,,53,53,53,53,53,53',
609
619
  '53,53,53,53,53,53,53,53,,,92,,,,,53,,,,53,92,92,92,,92,,92,,92,,92,92',
610
620
  '92,92,92,92,92,92,92,92,92,92,92,92,,,125,,,,,92,,,,92,125,125,125,',
611
- '125,,125,,125,,125,125,125,125,125,125,125,125,125,125,125,125,125,125',
612
- ',,157,,,,,125,,,,125,157,157,157,,157,,157,,157,,157,157,157,157,157',
613
- '157,157,157,157,157,157,157,157,157,,,158,,,,,157,,,,157,158,158,158',
614
- ',158,,158,,158,,158,158,158,158,158,158,158,158,158,158,158,158,158',
615
- '158,,,159,,,,,158,,,,158,159,159,159,,159,,159,,159,,159,159,159,159',
616
- '159,159,159,159,159,159,159,159,159,159,,,166,,,,,159,,,,159,166,166',
617
- '166,,166,,166,,166,,166,166,166,166,166,166,166,166,166,166,166,166',
618
- '166,166,,,167,,,,,166,,,,166,167,167,167,,167,,167,,167,,167,167,167',
619
- '167,167,167,167,167,167,167,167,167,167,167,,,168,,,,,167,,,,167,168',
620
- '168,168,,168,,168,,168,,168,168,168,168,168,168,168,168,168,168,168',
621
- '168,168,168,,,170,,,,,168,,,,168,170,170,170,,170,,170,,170,,170,170',
622
- '170,170,170,170,170,170,170,170,170,170,170,170,,,171,,,,,170,,,,170',
623
- '171,171,171,,171,,171,,171,,171,171,171,171,171,171,171,171,171,171',
624
- '171,171,171,171,,,172,,,,,171,,,,171,172,172,172,,172,,172,,172,,172',
625
- '172,172,172,172,172,172,172,172,172,172,172,172,172,,,178,,,,,172,,',
626
- ',172,178,178,178,,178,,178,,178,,178,178,178,178,178,178,178,178,178',
621
+ '125,,125,125,125,,125,125,125,125,125,125,125,125,125,125,125,125,125',
622
+ '125,,,157,,,,,125,,,,125,157,157,157,,157,,157,,157,,157,157,157,157',
623
+ '157,157,157,157,157,157,157,157,157,157,,,158,,,,,157,,,,157,158,158',
624
+ '158,,158,,158,,158,,158,158,158,158,158,158,158,158,158,158,158,158',
625
+ '158,158,,,159,,,,,158,,,,158,159,159,159,,159,,159,,159,,159,159,159',
626
+ '159,159,159,159,159,159,159,159,159,159,159,,,166,,,,,159,,,,159,166',
627
+ '166,166,,166,,166,,166,,166,166,166,166,166,166,166,166,166,166,166',
628
+ '166,166,166,,,167,,,,,166,,,,166,167,167,167,,167,,167,,167,,167,167',
629
+ '167,167,167,167,167,167,167,167,167,167,167,167,,,168,,,,,167,,,,167',
630
+ '168,168,168,,168,,168,,168,,168,168,168,168,168,168,168,168,168,168',
631
+ '168,168,168,168,,,170,,,,,168,,,,168,170,170,170,,170,,170,,170,,170',
632
+ '170,170,170,170,170,170,170,170,170,170,170,170,170,,,171,,,,,170,,',
633
+ ',170,171,171,171,,171,,171,,171,,171,171,171,171,171,171,171,171,171',
634
+ '171,171,171,171,171,,,172,,,,,171,,,,171,172,172,172,,172,,172,,172',
635
+ ',172,172,172,172,172,172,172,172,172,172,172,172,172,172,,,178,,,,,172',
636
+ ',,,172,178,178,178,,178,,178,,178,,178,178,178,178,178,178,178,178,178',
627
637
  '178,178,178,178,178,,,179,,,,,178,,,,178,179,179,179,,179,,179,,179',
628
638
  ',179,179,179,179,179,179,179,179,179,179,179,179,179,179,,,181,,,,,179',
629
639
  ',,,179,181,181,181,,181,,181,,181,,181,181,181,181,181,181,181,181,181',
630
- '181,181,181,181,181,,,200,,,,,181,,,,181,200,200,200,,200,,200,,200',
631
- ',200,200,200,200,200,200,200,200,200,200,200,200,200,200,,,207,,,,,200',
632
- ',,,200,207,207,207,,207,,207,,207,,207,207,207,207,207,207,207,207,207',
633
- '207,207,207,207,207,,,225,,,,,207,,,,207,225,225,225,,225,,225,,225',
634
- ',225,225,225,225,225,225,225,225,225,225,225,225,225,225,,,248,,,,,225',
635
- ',,,225,248,248,248,,248,,248,,248,,248,248,248,248,248,248,248,248,248',
636
- '248,248,248,248,248,,,276,,,,,248,,,,248,276,276,276,,276,,276,,276',
637
- ',276,276,276,276,276,276,276,276,276,276,276,276,276,276,,,312,,,,,276',
638
- ',,,276,312,312,312,,312,,312,,312,,312,312,312,312,312,312,312,312,312',
639
- '312,312,312,312,312,,,324,,,,,312,,,,312,324,324,324,,324,,324,,324',
640
- ',324,324,324,324,324,324,324,324,324,324,324,324,324,324,,,325,,,,,324',
641
- ',,,324,325,325,325,,325,,325,,325,,325,325,325,325,325,325,325,325,325',
642
- '325,325,325,325,325,,,362,,,,,325,,,,325,362,362,362,,362,,362,,362',
643
- ',362,362,362,362,362,362,362,362,362,362,362,362,362,362,,,364,,,,,362',
644
- ',,,362,364,364,364,,364,,364,,364,,364,364,364,364,364,364,364,364,364',
645
- '364,364,364,364,364,,,366,,,,,364,,,,364,366,366,366,,366,,366,,366',
646
- ',366,366,366,366,366,366,366,366,366,366,366,366,366,366,,,368,,,,,366',
647
- ',,,366,368,368,368,,368,,368,,368,,368,368,368,368,368,368,368,368,368',
648
- '368,368,368,368,368,,,369,,,,,368,,,,368,369,369,369,,369,,369,,369',
649
- ',369,369,369,369,369,369,369,369,369,369,369,369,369,369,,,370,,,,,369',
650
- ',,,369,370,370,370,,370,,370,,370,,370,370,370,370,370,370,370,370,370',
651
- '370,370,370,370,370,,,376,,,,,370,,,,370,376,376,376,,376,,376,,376',
652
- ',376,376,376,376,376,376,376,376,376,376,376,376,376,376,,,392,,,,,376',
653
- ',,,376,392,392,392,,392,,392,,392,,392,392,392,392,392,392,392,392,392',
654
- '392,392,392,392,392,,,395,,,,,392,,,,392,395,395,395,,395,,395,,395',
655
- ',395,395,395,395,395,395,395,395,395,395,395,395,395,395,,,396,,,,,395',
656
- ',,,395,396,396,396,,396,,396,,396,,396,396,396,396,396,396,396,396,396',
657
- '396,396,396,396,396,,,,,,,,396,,,,396' ]
658
- racc_action_check = arr = ::Array.new(3008, nil)
640
+ '181,181,181,181,181,,,186,,,,,181,,,,181,186,186,186,,186,,186,,186',
641
+ ',186,186,186,186,186,186,186,186,186,186,186,186,186,186,,,202,,,,,186',
642
+ ',,,186,202,202,202,,202,,202,,202,,202,202,202,202,202,202,202,202,202',
643
+ '202,202,202,202,202,,,209,,,,,202,,,,202,209,209,209,,209,,209,,209',
644
+ ',209,209,209,209,209,209,209,209,209,209,209,209,209,209,,,228,,,,,209',
645
+ ',,,209,228,228,228,,228,,228,,228,,228,228,228,228,228,228,228,228,228',
646
+ '228,228,228,228,228,,,251,,,,,228,,,,228,251,251,251,,251,,251,,251',
647
+ ',251,251,251,251,251,251,251,251,251,251,251,251,251,251,,,279,,,,,251',
648
+ ',,,251,279,279,279,,279,,279,,279,,279,279,279,279,279,279,279,279,279',
649
+ '279,279,279,279,279,,,315,,,,,279,,,,279,315,315,315,,315,,315,,315',
650
+ ',315,315,315,315,315,315,315,315,315,315,315,315,315,315,,,327,,,,,315',
651
+ ',,,315,327,327,327,,327,,327,,327,,327,327,327,327,327,327,327,327,327',
652
+ '327,327,327,327,327,,,328,,,,,327,,,,327,328,328,328,,328,,328,,328',
653
+ ',328,328,328,328,328,328,328,328,328,328,328,328,328,328,,,365,,,,,328',
654
+ ',,,328,365,365,365,,365,,365,,365,,365,365,365,365,365,365,365,365,365',
655
+ '365,365,365,365,365,,,367,,,,,365,,,,365,367,367,367,,367,,367,,367',
656
+ ',367,367,367,367,367,367,367,367,367,367,367,367,367,367,,,369,,,,,367',
657
+ ',,,367,369,369,369,,369,,369,,369,,369,369,369,369,369,369,369,369,369',
658
+ '369,369,369,369,369,,,371,,,,,369,,,,369,371,371,371,,371,,371,,371',
659
+ ',371,371,371,371,371,371,371,371,371,371,371,371,371,371,,,372,,,,,371',
660
+ ',,,371,372,372,372,,372,,372,,372,,372,372,372,372,372,372,372,372,372',
661
+ '372,372,372,372,372,,,373,,,,,372,,,,372,373,373,373,,373,,373,,373',
662
+ ',373,373,373,373,373,373,373,373,373,373,373,373,373,373,,,379,,,,,373',
663
+ ',,,373,379,379,379,,379,,379,,379,,379,379,379,379,379,379,379,379,379',
664
+ '379,379,379,379,379,,,395,,,,,379,,,,379,395,395,395,,395,,395,,395',
665
+ ',395,395,395,395,395,395,395,395,395,395,395,395,395,395,,,398,,,,,395',
666
+ ',,,395,398,398,398,,398,,398,,398,,398,398,398,398,398,398,398,398,398',
667
+ '398,398,398,398,398,,,399,,,,,398,,,,398,399,399,399,,399,,399,,399',
668
+ ',399,399,399,399,399,399,399,399,399,399,399,399,399,399,,,,,,,,399',
669
+ ',,,399' ]
670
+ racc_action_check = arr = ::Array.new(3044, nil)
659
671
  idx = 0
660
672
  clist.each do |str|
661
673
  str.split(',', -1).each do |i|
@@ -669,192 +681,194 @@ racc_action_pointer = [
669
681
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
670
682
  nil, nil, nil, nil, -4, 1626, 1662, 56, -6, nil,
671
683
  1140, 167, 84, nil, 316, 14, 140, nil, nil, nil,
672
- 1698, 1734, nil, 1770, -27, nil, 52, 52, -2, 604,
684
+ 1698, 1734, nil, 1770, -27, nil, 121, 52, -2, 604,
673
685
  nil, 101, nil, 1806, nil, nil, nil, nil, nil, nil,
674
686
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
675
687
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
676
- nil, nil, nil, nil, nil, nil, nil, 144, 125, 119,
677
- 174, 184, 1842, 197, 207, 224, nil, nil, nil, nil,
688
+ nil, nil, nil, nil, nil, nil, nil, 125, nil, 119,
689
+ 152, 174, 1842, 188, 195, 197, nil, nil, nil, nil,
678
690
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
679
- nil, nil, nil, 268, 694, 266, 160, 273, nil, 71,
680
- 317, 273, nil, 89, nil, 1878, nil, 320, 350, 345,
681
- 337, 347, 349, 366, 379, 408, 409, 416, 418, 423,
682
- 424, 451, 426, 1189, nil, 427, 426, nil, 428, nil,
683
- 429, nil, nil, 430, 431, nil, 681, 1914, 1950, 1986,
684
- 77, 456, 429, 438, nil, 1214, 2022, 2058, 2094, 165,
691
+ nil, nil, nil, 238, 694, 224, 160, 237, nil, 71,
692
+ 308, 269, nil, 52, 298, 1878, nil, 302, 337, 333,
693
+ 320, 337, 347, 349, 366, 379, 408, 409, 416, 418,
694
+ 423, 450, 425, 1189, nil, 426, 425, nil, 426, nil,
695
+ 428, nil, nil, 429, 430, nil, 681, 1914, 1950, 1986,
696
+ 77, 455, 428, 428, 466, 1214, 2022, 2058, 2094, 165,
685
697
  2130, 2166, 2202, nil, nil, nil, nil, 3, 2238, 2274,
686
- nil, 2310, nil, 132, nil, nil, 202, nil, 450, nil,
687
- nil, nil, nil, nil, 758, 835, 912, 1280, 1346, 1321,
688
- 2346, 1344, 1453, 1456, 478, 989, 78, 2382, nil, 206,
689
- 208, 210, 232, 238, 243, 4, 9, 10, 446, 503,
690
- 245, 278, 280, nil, 505, 2418, nil, nil, nil, 465,
691
- nil, 1412, nil, nil, nil, 1459, nil, nil, nil, nil,
692
- 493, 490, 463, 511, 517, 27, 518, 534, 2454, nil,
693
- nil, 489, 1066, nil, 491, nil, 483, 464, 501, 500,
694
- nil, 527, nil, nil, 303, nil, nil, 38, 154, nil,
695
- 279, nil, nil, 52, 1506, 77, 2490, -8, 1528, 528,
696
- nil, 470, 548, nil, nil, 1550, 514, 1537, nil, nil,
697
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
698
- 527, 528, 516, nil, 155, nil, nil, nil, nil, nil,
699
- 168, nil, 2526, nil, nil, nil, 545, 546, 550, 87,
700
- 88, 89, -62, -2, 2562, 2598, 572, nil, 156, 527,
701
- 77, 156, 235, 565, 580, 581, nil, 563, nil, nil,
702
- nil, nil, nil, nil, nil, nil, nil, 311, nil, nil,
703
- nil, nil, nil, nil, nil, 546, 306, 340, 342, 565,
704
- nil, nil, 2634, 592, 2670, 597, 2706, 598, 2742, 2778,
705
- 2814, 363, nil, nil, 377, nil, 2850, 350, 573, 0,
706
- 352, 577, 374, 581, 168, 185, 186, 456, 570, 591,
707
- 618, 380, 2886, nil, 632, 2922, 2958, nil, nil, nil,
708
- 594, nil, 610, nil, nil, 599, 385, nil, 387, 403,
709
- nil, 612, nil, nil, 527, 602, nil, nil ]
698
+ nil, 2310, nil, 89, nil, nil, 2346, nil, 202, nil,
699
+ 450, nil, nil, nil, nil, nil, 758, 835, 912, 1280,
700
+ 1346, 1321, 2382, 1344, 1453, 1456, 478, 989, 78, 2418,
701
+ nil, nil, 206, 208, 210, 232, 238, 243, 4, 9,
702
+ 10, 446, 503, 245, 278, 280, nil, 505, 2454, nil,
703
+ nil, nil, 465, nil, 1412, nil, nil, nil, 1459, nil,
704
+ nil, nil, nil, 493, 490, 463, 511, 517, 27, 518,
705
+ 534, 2490, nil, nil, 489, 1066, nil, 491, nil, 483,
706
+ 464, 501, 500, nil, 527, nil, nil, 303, nil, nil,
707
+ 38, 132, nil, 279, nil, nil, 52, 1506, 77, 2526,
708
+ -8, 1528, 528, nil, 470, 548, nil, nil, 1550, 514,
709
+ 1537, nil, nil, nil, nil, nil, nil, nil, nil, nil,
710
+ nil, nil, nil, 527, 528, 516, nil, 154, nil, nil,
711
+ nil, nil, nil, 168, nil, 2562, nil, nil, nil, 545,
712
+ 546, 550, 87, 88, 89, -62, -2, 2598, 2634, 572,
713
+ nil, 155, 527, 77, 156, 235, 565, 580, 581, nil,
714
+ 563, nil, nil, nil, nil, nil, nil, nil, nil, nil,
715
+ 311, nil, nil, nil, nil, nil, nil, nil, 546, 306,
716
+ 340, 342, 565, nil, nil, 2670, 592, 2706, 597, 2742,
717
+ 598, 2778, 2814, 2850, 363, nil, nil, 377, nil, 2886,
718
+ 350, 573, 0, 352, 577, 374, 581, 156, 168, 185,
719
+ 456, 570, 591, 618, 380, 2922, nil, 632, 2958, 2994,
720
+ nil, nil, nil, 594, nil, 610, nil, nil, 599, 385,
721
+ nil, 387, 403, nil, 612, nil, nil, 527, 602, nil,
722
+ nil ]
710
723
 
711
724
  racc_action_default = [
712
- -246, -246, -242, -6, -15, -246, -4, -157, -160, -161,
725
+ -248, -248, -242, -6, -15, -248, -4, -157, -160, -161,
713
726
  -162, -163, -164, -165, -166, -167, -168, -169, -170, -171,
714
- -172, -173, -174, -175, -176, -242, -242, -246, -80, -184,
715
- -246, -246, -243, -245, -16, -4, -147, 418, -1, -5,
716
- -242, -242, -183, -242, -185, -178, -246, -246, -242, -242,
717
- -182, -246, -204, -242, -104, -105, -106, -107, -108, -109,
727
+ -172, -173, -174, -175, -176, -242, -242, -248, -80, -184,
728
+ -248, -248, -243, -245, -16, -4, -147, 421, -1, -5,
729
+ -242, -242, -183, -242, -185, -178, -247, -248, -242, -242,
730
+ -182, -248, -204, -242, -104, -105, -106, -107, -108, -109,
718
731
  -110, -111, -112, -113, -114, -115, -116, -117, -118, -119,
719
732
  -120, -121, -122, -123, -124, -125, -126, -127, -128, -129,
720
- -130, -131, -132, -133, -134, -135, -136, -246, -188, -246,
721
- -246, -246, -242, -246, -246, -246, -199, -200, -201, -202,
733
+ -130, -131, -132, -133, -134, -135, -136, -247, -188, -248,
734
+ -248, -248, -242, -248, -248, -248, -199, -200, -201, -202,
722
735
  -235, -236, -237, -238, -244, -2, -7, -8, -9, -10,
723
- -11, -12, -13, -16, -246, -246, -246, -246, -3, -80,
724
- -246, -158, -159, -246, -179, -242, -180, -246, -246, -246,
736
+ -11, -12, -13, -16, -248, -248, -248, -248, -3, -80,
737
+ -248, -158, -159, -248, -248, -242, -180, -248, -248, -248,
725
738
  -170, -160, -164, -171, -172, -161, -162, -165, -166, -169,
726
- -163, -115, -167, -231, -197, -246, -208, -209, -211, -212,
739
+ -163, -115, -167, -231, -197, -248, -208, -209, -211, -212,
727
740
  -214, -215, -218, -221, -223, -224, -242, -242, -242, -242,
728
- -246, -246, -246, -206, -187, -246, -242, -242, -242, -193,
741
+ -248, -248, -248, -206, -248, -246, -242, -242, -242, -193,
729
742
  -242, -242, -242, -17, -14, -14, -14, -242, -242, -242,
730
- -240, -242, -79, -246, -149, -177, -186, -181, -81, -225,
731
- -232, -233, -234, -198, -242, -242, -242, -219, -219, -231,
732
- -242, -231, -231, -231, -246, -242, -246, -242, -189, -190,
733
- -191, -192, -194, -195, -196, -242, -242, -242, -246, -246,
734
- -154, -155, -156, -148, -246, -242, -207, -215, -210, -217,
735
- -213, -246, -220, -222, -226, -231, -227, -228, -230, -82,
736
- -246, -246, -203, -137, -137, -242, -137, -246, -242, -241,
737
- -150, -205, -242, -229, -246, -83, -19, -145, -24, -30,
738
- -26, -29, -57, -239, -153, -216, -30, -242, -246, -139,
739
- -142, -146, -30, -242, -16, -242, -242, -16, -16, -20,
740
- -138, -145, -246, -143, -144, -16, -25, -71, -23, -31,
741
- -32, -33, -34, -35, -36, -37, -38, -39, -40, -41,
742
- -246, -246, -246, -27, -246, -56, -58, -59, -60, -61,
743
- -71, -18, -242, -140, -141, -22, -42, -42, -42, -242,
744
- -242, -242, -68, -246, -242, -242, -246, -28, -246, -246,
745
- -246, -246, -246, -62, -64, -66, -69, -246, -72, -86,
746
- -87, -88, -89, -90, -91, -92, -93, -94, -97, -98,
747
- -99, -100, -101, -102, -103, -129, -246, -53, -54, -246,
748
- -21, -43, -242, -50, -242, -50, -242, -50, -242, -242,
749
- -242, -73, -95, -96, -246, -151, -242, -44, -246, -246,
750
- -46, -246, -48, -246, -246, -246, -246, -246, -246, -246,
751
- -246, -55, -242, -51, -246, -242, -242, -63, -65, -67,
752
- -15, -84, -246, -74, -75, -246, -45, -52, -47, -49,
753
- -70, -76, -77, -85, -246, -15, -152, -78 ]
743
+ -240, -242, -79, -248, -149, -177, -242, -179, -186, -181,
744
+ -81, -225, -232, -233, -234, -198, -242, -242, -242, -219,
745
+ -219, -231, -242, -231, -231, -231, -248, -242, -248, -242,
746
+ -187, -189, -190, -191, -192, -194, -195, -196, -242, -242,
747
+ -242, -248, -248, -154, -155, -156, -148, -248, -242, -207,
748
+ -215, -210, -217, -213, -248, -220, -222, -226, -231, -227,
749
+ -228, -230, -82, -248, -248, -203, -137, -137, -242, -137,
750
+ -248, -242, -241, -150, -205, -242, -229, -248, -83, -19,
751
+ -145, -24, -30, -26, -29, -57, -239, -153, -216, -30,
752
+ -242, -248, -139, -142, -146, -30, -242, -16, -242, -242,
753
+ -16, -16, -20, -138, -145, -248, -143, -144, -16, -25,
754
+ -71, -23, -31, -32, -33, -34, -35, -36, -37, -38,
755
+ -39, -40, -41, -248, -248, -248, -27, -248, -56, -58,
756
+ -59, -60, -61, -71, -18, -242, -140, -141, -22, -42,
757
+ -42, -42, -242, -242, -242, -68, -248, -242, -242, -248,
758
+ -28, -248, -248, -248, -248, -248, -62, -64, -66, -69,
759
+ -248, -72, -86, -87, -88, -89, -90, -91, -92, -93,
760
+ -94, -97, -98, -99, -100, -101, -102, -103, -129, -248,
761
+ -53, -54, -248, -21, -43, -242, -50, -242, -50, -242,
762
+ -50, -242, -242, -242, -73, -95, -96, -248, -151, -242,
763
+ -44, -248, -248, -46, -248, -48, -248, -248, -248, -248,
764
+ -248, -248, -248, -248, -55, -242, -51, -248, -242, -242,
765
+ -63, -65, -67, -15, -84, -248, -74, -75, -248, -45,
766
+ -52, -47, -49, -70, -76, -77, -85, -248, -15, -152,
767
+ -78 ]
754
768
 
755
769
  racc_goto_table = [
756
- 6, 93, 129, 46, 92, 116, 127, 87, 114, 163,
757
- 189, 200, 50, 204, 227, 38, 230, 259, 261, 128,
758
- 356, 123, 229, 229, 47, 269, 410, 363, 365, 367,
759
- 378, 1, 381, 34, 383, 215, 216, 217, 121, 122,
760
- 35, 417, 106, 105, 118, 286, 261, 143, 261, 313,
761
- 274, 256, 258, 375, 262, 232, 233, 278, 266, 241,
762
- 330, 331, 332, 285, 272, 303, 234, 307, 236, 237,
763
- 238, 390, 265, 308, 309, 246, 277, 306, 337, 229,
764
- 387, 400, 119, 162, 402, 268, 200, 173, 282, 183,
765
- 169, 218, 333, 334, 335, 228, 100, nil, nil, nil,
766
- nil, nil, 253, 182, nil, nil, nil, nil, nil, nil,
767
- nil, 416, nil, nil, nil, nil, nil, nil, nil, nil,
768
- nil, nil, nil, 186, nil, nil, nil, nil, nil, nil,
770
+ 6, 93, 127, 46, 92, 116, 163, 88, 114, 191,
771
+ 50, 202, 206, 129, 38, 230, 124, 233, 264, 128,
772
+ 272, 123, 359, 262, 47, 232, 232, 1, 277, 366,
773
+ 368, 370, 235, 236, 413, 281, 34, 35, 121, 122,
774
+ 106, 288, 105, 118, 316, 269, 264, 143, 264, 420,
775
+ 381, 289, 384, 275, 386, 378, 306, 164, 259, 261,
776
+ 244, 265, 218, 219, 220, 310, 311, 237, 312, 239,
777
+ 240, 241, 249, 393, 268, 333, 334, 335, 280, 309,
778
+ 340, 390, 403, 232, 119, 162, 405, 173, 271, 202,
779
+ 169, 285, 336, 337, 338, 183, 221, 87, 231, 100,
780
+ nil, 182, nil, nil, 256, nil, nil, nil, nil, nil,
781
+ nil, nil, nil, 419, nil, nil, nil, nil, nil, nil,
782
+ nil, nil, nil, 188, nil, nil, nil, nil, nil, nil,
769
783
  nil, nil, nil, nil, nil, nil, 93, nil, nil, 92,
770
- nil, nil, 208, nil, nil, nil, nil, 226, 219, nil,
771
- nil, nil, nil, nil, 199, 201, 202, 203, 240, nil,
772
- nil, nil, nil, 242, 209, 210, 211, nil, 212, 213,
773
- 214, nil, nil, 243, 244, nil, 220, 221, nil, 222,
774
- nil, 251, nil, nil, nil, nil, 128, 128, 247, nil,
775
- nil, nil, 143, 143, 143, nil, nil, nil, 235, nil,
776
- nil, nil, nil, 143, nil, nil, nil, nil, nil, nil,
784
+ nil, nil, 211, nil, nil, nil, nil, nil, 222, nil,
785
+ nil, nil, nil, nil, 201, 203, 204, 205, nil, nil,
786
+ 229, nil, 245, nil, 212, 213, 214, nil, 215, 216,
787
+ 217, 243, 246, 247, nil, nil, 223, 224, nil, 225,
788
+ nil, 254, nil, nil, 188, nil, nil, nil, nil, 128,
789
+ 128, 250, nil, nil, 143, 143, 143, nil, nil, nil,
790
+ 238, nil, nil, nil, nil, 143, nil, nil, nil, nil,
777
791
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
778
- nil, nil, nil, nil, nil, 279, nil, nil, nil, nil,
779
- nil, nil, nil, nil, nil, nil, nil, nil, 128, nil,
780
- nil, nil, nil, nil, nil, 116, 264, nil, nil, 116,
781
- 143, 310, nil, nil, 304, nil, 116, nil, nil, nil,
792
+ nil, nil, nil, nil, 282, nil, nil, nil, nil, nil,
782
793
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
794
+ nil, 128, nil, nil, nil, nil, nil, nil, 116, 267,
795
+ nil, nil, 116, 143, 313, nil, nil, 307, nil, 116,
783
796
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
784
797
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
785
- 328, nil, nil, nil, 354, nil, nil, nil, nil, nil,
786
- nil, 354, 354, 354, 362, 364, 366, nil, nil, nil,
787
798
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
788
- nil, nil, 357, 358, nil, nil, nil, 354, nil, nil,
799
+ nil, nil, nil, 331, nil, nil, nil, 357, nil, nil,
800
+ nil, nil, nil, nil, 357, 357, 357, 365, 367, 369,
789
801
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
790
- nil, nil, nil, nil, nil, 354, 384, 385, 386, nil,
791
- nil, nil, nil, nil, nil, nil, nil, nil, 354, nil,
792
- 377, 401, 380, nil, 382, nil, nil, nil, nil, nil,
793
- nil, nil, nil, nil, 391, nil, nil, nil, nil, nil,
794
- nil, nil, nil, nil, nil, 354, nil, nil, nil, nil,
795
- 406, nil, nil, 408, 409 ]
802
+ nil, nil, nil, nil, nil, 360, 361, nil, nil, nil,
803
+ 357, nil, nil, nil, nil, nil, nil, nil, nil, nil,
804
+ nil, nil, nil, nil, nil, nil, nil, nil, 357, 387,
805
+ 388, 389, nil, nil, nil, nil, nil, nil, nil, nil,
806
+ nil, 357, nil, 380, 404, 383, nil, 385, nil, nil,
807
+ nil, nil, nil, nil, nil, nil, nil, 394, nil, nil,
808
+ nil, nil, nil, nil, nil, nil, nil, nil, 357, nil,
809
+ nil, nil, nil, 409, nil, nil, 411, 412 ]
796
810
 
797
811
  racc_goto_check = [
798
- 2, 52, 48, 20, 34, 59, 16, 62, 15, 60,
799
- 75, 64, 46, 50, 70, 3, 70, 22, 24, 59,
800
- 35, 20, 65, 65, 2, 54, 44, 35, 35, 35,
801
- 36, 1, 36, 4, 36, 13, 13, 13, 2, 2,
802
- 5, 44, 6, 3, 3, 22, 24, 2, 24, 54,
803
- 19, 17, 17, 35, 17, 71, 71, 19, 18, 50,
804
- 33, 33, 33, 19, 21, 23, 75, 26, 75, 75,
805
- 75, 35, 70, 27, 32, 37, 38, 39, 40, 65,
806
- 42, 43, 45, 49, 35, 53, 64, 15, 56, 57,
807
- 2, 58, 24, 24, 24, 66, 76, nil, nil, nil,
808
- nil, nil, 75, 46, nil, nil, nil, nil, nil, nil,
809
- nil, 35, nil, nil, nil, nil, nil, nil, nil, nil,
812
+ 2, 52, 16, 20, 34, 59, 60, 64, 15, 76,
813
+ 46, 65, 50, 48, 3, 71, 61, 71, 24, 59,
814
+ 54, 20, 35, 22, 2, 66, 66, 1, 19, 35,
815
+ 35, 35, 72, 72, 44, 19, 4, 5, 2, 2,
816
+ 6, 19, 3, 3, 54, 18, 24, 2, 24, 44,
817
+ 36, 22, 36, 21, 36, 35, 23, 61, 17, 17,
818
+ 50, 17, 13, 13, 13, 26, 27, 76, 32, 76,
819
+ 76, 76, 37, 35, 71, 33, 33, 33, 38, 39,
820
+ 40, 42, 43, 66, 45, 49, 35, 15, 53, 65,
821
+ 2, 56, 24, 24, 24, 57, 58, 63, 67, 77,
822
+ nil, 46, nil, nil, 76, nil, nil, nil, nil, nil,
823
+ nil, nil, nil, 35, nil, nil, nil, nil, nil, nil,
810
824
  nil, nil, nil, 2, nil, nil, nil, nil, nil, nil,
811
825
  nil, nil, nil, nil, nil, nil, 52, nil, nil, 34,
812
- nil, nil, 62, nil, nil, nil, nil, 48, 59, nil,
813
- nil, nil, nil, nil, 2, 2, 2, 2, 48, nil,
814
- nil, nil, nil, 60, 2, 2, 2, nil, 2, 2,
815
- 2, nil, nil, 16, 16, nil, 2, 2, nil, 2,
816
- nil, 60, nil, nil, nil, nil, 59, 59, 59, nil,
817
- nil, nil, 2, 2, 2, nil, nil, nil, 2, nil,
818
- nil, nil, nil, 2, nil, nil, nil, nil, nil, nil,
826
+ nil, nil, 64, nil, nil, nil, nil, nil, 59, nil,
827
+ nil, nil, nil, nil, 2, 2, 2, 2, nil, nil,
828
+ 48, nil, 60, nil, 2, 2, 2, nil, 2, 2,
829
+ 2, 48, 16, 16, nil, nil, 2, 2, nil, 2,
830
+ nil, 60, nil, nil, 2, nil, nil, nil, nil, 59,
831
+ 59, 59, nil, nil, 2, 2, 2, nil, nil, nil,
832
+ 2, nil, nil, nil, nil, 2, nil, nil, nil, nil,
819
833
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
820
- nil, nil, nil, nil, nil, 16, nil, nil, nil, nil,
821
- nil, nil, nil, nil, nil, nil, nil, nil, 59, nil,
822
- nil, nil, nil, nil, nil, 59, 2, nil, nil, 59,
823
- 2, 15, nil, nil, 20, nil, 59, nil, nil, nil,
834
+ nil, nil, nil, nil, 16, nil, nil, nil, nil, nil,
824
835
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
836
+ nil, 59, nil, nil, nil, nil, nil, nil, 59, 2,
837
+ nil, nil, 59, 2, 15, nil, nil, 20, nil, 59,
825
838
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
826
839
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
827
- 20, nil, nil, nil, 52, nil, nil, nil, nil, nil,
828
- nil, 52, 52, 52, 34, 34, 34, nil, nil, nil,
829
840
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
830
- nil, nil, 2, 2, nil, nil, nil, 52, nil, nil,
841
+ nil, nil, nil, 20, nil, nil, nil, 52, nil, nil,
842
+ nil, nil, nil, nil, 52, 52, 52, 34, 34, 34,
831
843
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
832
- nil, nil, nil, nil, nil, 52, 20, 20, 20, nil,
844
+ nil, nil, nil, nil, nil, 2, 2, nil, nil, nil,
845
+ 52, nil, nil, nil, nil, nil, nil, nil, nil, nil,
846
+ nil, nil, nil, nil, nil, nil, nil, nil, 52, 20,
847
+ 20, 20, nil, nil, nil, nil, nil, nil, nil, nil,
848
+ nil, 52, nil, 2, 34, 2, nil, 2, nil, nil,
849
+ nil, nil, nil, nil, nil, nil, nil, 2, nil, nil,
833
850
  nil, nil, nil, nil, nil, nil, nil, nil, 52, nil,
834
- 2, 34, 2, nil, 2, nil, nil, nil, nil, nil,
835
- nil, nil, nil, nil, 2, nil, nil, nil, nil, nil,
836
- nil, nil, nil, nil, nil, 52, nil, nil, nil, nil,
837
- 2, nil, nil, 2, 2 ]
851
+ nil, nil, nil, 2, nil, nil, 2, 2 ]
838
852
 
839
853
  racc_goto_pointer = [
840
- nil, 31, -2, 9, 30, 36, 8, nil, nil, nil,
841
- nil, nil, nil, -139, nil, -26, -42, -192, -198, -209,
842
- -22, -194, -228, -210, -227, nil, -210, -204, nil, nil,
843
- nil, nil, -203, -256, -26, -303, -333, -142, -186, -200,
844
- -244, nil, -291, -306, -374, 46, -16, nil, -47, 32,
845
- -147, nil, -29, -172, -232, nil, -182, -31, -86, -29,
846
- -44, nil, -23, nil, -145, -173, -100, nil, nil, nil,
847
- -180, -142, nil, nil, nil, -133, 65 ]
854
+ nil, 27, -2, 8, 33, 33, 6, nil, nil, nil,
855
+ nil, nil, nil, -112, nil, -26, -46, -188, -214, -234,
856
+ -22, -208, -225, -222, -230, nil, -215, -214, nil, nil,
857
+ nil, nil, -212, -244, -26, -304, -316, -148, -187, -201,
858
+ -245, nil, -293, -308, -369, 48, -18, nil, -36, 34,
859
+ -148, nil, -29, -172, -240, nil, -182, -25, -81, -29,
860
+ -47, -30, nil, 67, -23, -145, -172, -99, nil, nil,
861
+ nil, -181, -167, nil, nil, nil, -134, 68 ]
848
862
 
849
863
  racc_goto_default = [
850
- nil, nil, 44, nil, nil, 411, 299, 107, 108, 109,
851
- 110, 111, 112, nil, 36, 287, 115, nil, nil, nil,
852
- nil, nil, nil, 260, 24, 289, 290, 291, 292, 293,
853
- 294, 295, 298, nil, 144, nil, nil, nil, nil, nil,
854
- nil, 322, nil, nil, nil, nil, nil, 51, nil, nil,
855
- 52, 347, 145, nil, nil, 270, nil, nil, nil, 31,
856
- 7, 29, nil, 88, 158, 146, 147, 148, 149, 150,
857
- 151, 152, 153, 154, 155, nil, nil ]
864
+ nil, nil, 44, nil, nil, 414, 302, 107, 108, 109,
865
+ 110, 111, 112, nil, 36, 290, 115, nil, nil, nil,
866
+ nil, nil, nil, 263, 24, 292, 293, 294, 295, 296,
867
+ 297, 298, 301, nil, 144, nil, nil, nil, nil, nil,
868
+ nil, 325, nil, nil, nil, nil, nil, 51, nil, nil,
869
+ 52, 350, 145, nil, nil, 273, nil, nil, nil, 31,
870
+ 7, nil, 29, nil, nil, 158, 146, 147, 148, 149,
871
+ 150, 151, 152, 153, 154, 155, nil, nil ]
858
872
 
859
873
  racc_reduce_table = [
860
874
  0, 0, :racc_error,
@@ -1036,7 +1050,7 @@ racc_reduce_table = [
1036
1050
  1, 141, :_reduce_176,
1037
1051
  4, 141, :_reduce_177,
1038
1052
  2, 141, :_reduce_178,
1039
- 3, 141, :_reduce_179,
1053
+ 4, 141, :_reduce_179,
1040
1054
  3, 141, :_reduce_180,
1041
1055
  4, 141, :_reduce_181,
1042
1056
  2, 141, :_reduce_182,
@@ -1044,18 +1058,18 @@ racc_reduce_table = [
1044
1058
  1, 141, :_reduce_none,
1045
1059
  1, 101, :_reduce_185,
1046
1060
  3, 101, :_reduce_186,
1047
- 3, 142, :_reduce_187,
1048
- 1, 143, :_reduce_188,
1049
- 3, 143, :_reduce_189,
1050
- 3, 144, :_reduce_190,
1051
- 3, 144, :_reduce_191,
1052
- 3, 144, :_reduce_192,
1053
- 2, 144, :_reduce_193,
1054
- 3, 144, :_reduce_194,
1055
- 3, 144, :_reduce_195,
1056
- 3, 144, :_reduce_196,
1057
- 1, 145, :_reduce_none,
1058
- 2, 145, :_reduce_198,
1061
+ 4, 143, :_reduce_187,
1062
+ 1, 144, :_reduce_188,
1063
+ 3, 144, :_reduce_189,
1064
+ 3, 145, :_reduce_190,
1065
+ 3, 145, :_reduce_191,
1066
+ 3, 145, :_reduce_192,
1067
+ 2, 145, :_reduce_193,
1068
+ 3, 145, :_reduce_194,
1069
+ 3, 145, :_reduce_195,
1070
+ 3, 145, :_reduce_196,
1071
+ 1, 146, :_reduce_none,
1072
+ 2, 146, :_reduce_198,
1059
1073
  1, 115, :_reduce_none,
1060
1074
  1, 115, :_reduce_none,
1061
1075
  1, 115, :_reduce_none,
@@ -1067,46 +1081,48 @@ racc_reduce_table = [
1067
1081
  3, 129, :_reduce_207,
1068
1082
  1, 129, :_reduce_208,
1069
1083
  1, 129, :_reduce_none,
1070
- 3, 147, :_reduce_210,
1071
- 1, 147, :_reduce_211,
1072
- 1, 147, :_reduce_none,
1073
- 3, 149, :_reduce_213,
1074
- 1, 149, :_reduce_214,
1075
- 1, 149, :_reduce_none,
1076
- 3, 151, :_reduce_216,
1077
- 1, 151, :_reduce_217,
1078
- 1, 151, :_reduce_none,
1079
- 0, 152, :_reduce_219,
1080
- 3, 152, :_reduce_220,
1081
- 1, 152, :_reduce_221,
1082
- 3, 152, :_reduce_222,
1083
- 1, 152, :_reduce_223,
1084
- 1, 152, :_reduce_224,
1085
- 2, 146, :_reduce_225,
1086
- 3, 148, :_reduce_226,
1087
- 3, 150, :_reduce_227,
1088
- 3, 153, :_reduce_228,
1089
- 4, 154, :_reduce_229,
1090
- 3, 155, :_reduce_230,
1091
- 0, 156, :_reduce_none,
1092
- 1, 156, :_reduce_none,
1093
- 1, 156, :_reduce_none,
1094
- 1, 156, :_reduce_none,
1095
- 2, 105, :_reduce_235,
1084
+ 3, 148, :_reduce_210,
1085
+ 1, 148, :_reduce_211,
1086
+ 1, 148, :_reduce_none,
1087
+ 3, 150, :_reduce_213,
1088
+ 1, 150, :_reduce_214,
1089
+ 1, 150, :_reduce_none,
1090
+ 3, 152, :_reduce_216,
1091
+ 1, 152, :_reduce_217,
1092
+ 1, 152, :_reduce_none,
1093
+ 0, 153, :_reduce_219,
1094
+ 3, 153, :_reduce_220,
1095
+ 1, 153, :_reduce_221,
1096
+ 3, 153, :_reduce_222,
1097
+ 1, 153, :_reduce_223,
1098
+ 1, 153, :_reduce_224,
1099
+ 2, 147, :_reduce_225,
1100
+ 3, 149, :_reduce_226,
1101
+ 3, 151, :_reduce_227,
1102
+ 3, 154, :_reduce_228,
1103
+ 4, 155, :_reduce_229,
1104
+ 3, 156, :_reduce_230,
1105
+ 0, 157, :_reduce_none,
1096
1106
  1, 157, :_reduce_none,
1097
1107
  1, 157, :_reduce_none,
1098
1108
  1, 157, :_reduce_none,
1109
+ 2, 105, :_reduce_235,
1110
+ 1, 158, :_reduce_none,
1111
+ 1, 158, :_reduce_none,
1112
+ 1, 158, :_reduce_none,
1099
1113
  2, 118, :_reduce_239,
1100
1114
  2, 97, :_reduce_240,
1101
1115
  2, 139, :_reduce_241,
1102
1116
  0, 140, :_reduce_242,
1103
1117
  1, 140, :_reduce_243,
1104
1118
  2, 140, :_reduce_244,
1105
- 1, 140, :_reduce_245 ]
1119
+ 1, 140, :_reduce_245,
1120
+ 1, 142, :_reduce_none,
1121
+ 0, 142, :_reduce_none ]
1106
1122
 
1107
- racc_reduce_n = 246
1123
+ racc_reduce_n = 248
1108
1124
 
1109
- racc_shift_n = 418
1125
+ racc_shift_n = 421
1110
1126
 
1111
1127
  racc_token_table = {
1112
1128
  false => 0,
@@ -1354,6 +1370,7 @@ Racc_token_to_s_table = [
1354
1370
  "type_alias_name",
1355
1371
  "namespace",
1356
1372
  "simple_type",
1373
+ "comma_opt",
1357
1374
  "record_type",
1358
1375
  "record_fields",
1359
1376
  "record_field",
@@ -2702,7 +2719,7 @@ module_eval(<<'.,.,', 'parser.y', 759)
2702
2719
 
2703
2720
  module_eval(<<'.,.,', 'parser.y', 763)
2704
2721
  def _reduce_179(val, _values, result)
2705
- location = val[0].location + val[2].location
2722
+ location = val[0].location + val[3].location
2706
2723
  types = val[1]
2707
2724
  result = Types::Tuple.new(types: types, location: location)
2708
2725
 
@@ -2770,7 +2787,7 @@ module_eval(<<'.,.,', 'parser.y', 797)
2770
2787
  def _reduce_187(val, _values, result)
2771
2788
  result = Types::Record.new(
2772
2789
  fields: val[1],
2773
- location: val[0].location + val[2].location
2790
+ location: val[0].location + val[3].location
2774
2791
  )
2775
2792
 
2776
2793
  result
@@ -3225,6 +3242,10 @@ module_eval(<<'.,.,', 'parser.y', 1061)
3225
3242
  end
3226
3243
  .,.,
3227
3244
 
3245
+ # reduce 246 omitted
3246
+
3247
+ # reduce 247 omitted
3248
+
3228
3249
  def _reduce_none(val, _values, result)
3229
3250
  val[0]
3230
3251
  end