rbs 1.0.0.pre → 1.0.0.pre2

Sign up to get free protection for your applications and to get access to all the features.
@@ -30,14 +30,62 @@ module RBS
30
30
  yield s
31
31
  end
32
32
 
33
+ each_self_type(&block)
34
+ each_included_module(&block)
35
+ each_included_interface(&block)
36
+ each_prepended_module(&block)
37
+ each_extended_module(&block)
38
+ each_extended_interface(&block)
39
+ else
40
+ enum_for :each_ancestor
41
+ end
42
+ end
43
+
44
+ def each_self_type(&block)
45
+ if block
33
46
  self_types&.each(&block)
47
+ else
48
+ enum_for :each_self_type
49
+ end
50
+ end
51
+
52
+ def each_included_module(&block)
53
+ if block
34
54
  included_modules&.each(&block)
55
+ else
56
+ enum_for :each_included_module
57
+ end
58
+ end
59
+
60
+ def each_included_interface(&block)
61
+ if block
35
62
  included_interfaces&.each(&block)
63
+ else
64
+ enum_for :each_included_interface
65
+ end
66
+ end
67
+
68
+ def each_prepended_module(&block)
69
+ if block
36
70
  prepended_modules&.each(&block)
71
+ else
72
+ enum_for :each_prepended_module
73
+ end
74
+ end
75
+
76
+ def each_extended_module(&block)
77
+ if block
37
78
  extended_modules&.each(&block)
79
+ else
80
+ enum_for :each_extended_module
81
+ end
82
+ end
83
+
84
+ def each_extended_interface(&block)
85
+ if block
38
86
  extended_interfaces&.each(&block)
39
87
  else
40
- enum_for :each_ancestor
88
+ enum_for :each_extended_interface
41
89
  end
42
90
  end
43
91
 
@@ -136,7 +184,7 @@ module RBS
136
184
 
137
185
  return if super_types.size == 1
138
186
 
139
- raise SuperclassMismatchError.new(name: type_name, super_classes: super_types, entry: entry)
187
+ raise SuperclassMismatchError.new(name: type_name, entry: entry)
140
188
  end
141
189
 
142
190
  def one_instance_ancestors(type_name)
@@ -457,7 +505,8 @@ module RBS
457
505
  one_ancestors = one_interface_ancestors(type_name)
458
506
  ancestors = []
459
507
 
460
- one_ancestors.included_interfaces.each do |a|
508
+ included_interfaces = one_ancestors.included_interfaces or raise
509
+ included_interfaces.each do |a|
461
510
  included_ancestors = interface_ancestors(a.name, building_ancestors: building_ancestors)
462
511
  ancestors.unshift(*included_ancestors.apply(a.args, location: entry.decl.location))
463
512
  end
@@ -133,7 +133,7 @@ module RBS
133
133
 
134
134
  def cache_name(cache, name:, decl:, outer:)
135
135
  if cache.key?(name)
136
- raise DuplicatedDeclarationError.new(name, decl, cache[name].decl)
136
+ raise DuplicatedDeclarationError.new(_ = name, _ = decl, _ = cache[name].decl)
137
137
  end
138
138
 
139
139
  cache[name] = SingleEntry.new(name: name, decl: decl, outer: outer)
@@ -195,9 +195,6 @@ module RBS
195
195
 
196
196
  when AST::Declarations::Global
197
197
  cache_name global_decls, name: decl.name, decl: decl, outer: outer
198
-
199
- when AST::Declarations::Extension
200
- RBS.logger.warn "#{Location.to_string decl.location} Extension construct is deprecated: use class/module syntax instead"
201
198
  end
202
199
  end
203
200
 
@@ -326,9 +323,6 @@ module RBS
326
323
  location: decl.location,
327
324
  comment: decl.comment
328
325
  )
329
-
330
- else
331
- raise
332
326
  end
333
327
  end
334
328
 
@@ -48,7 +48,11 @@ module RBS
48
48
  end
49
49
 
50
50
  def has_library?(library:, version:)
51
- self.class.gem_sig_path(library, version) || repository.lookup(library, version)
51
+ if self.class.gem_sig_path(library, version) || repository.lookup(library, version)
52
+ true
53
+ else
54
+ false
55
+ end
52
56
  end
53
57
 
54
58
  def load(env:)
@@ -70,7 +74,7 @@ module RBS
70
74
 
71
75
  libs.each do |lib|
72
76
  unless has_library?(version: lib.version, library: lib.name)
73
- raise UnknownLibraryError.new(lib: lib)
77
+ raise UnknownLibraryError.new(lib: lib)
74
78
  end
75
79
 
76
80
  case
@@ -97,7 +101,7 @@ module RBS
97
101
  if path.basename.to_s.start_with?("_")
98
102
  if skip_hidden
99
103
  unless immediate
100
- return
104
+ return
101
105
  end
102
106
  end
103
107
  end
@@ -35,34 +35,6 @@ module RBS
35
35
  end
36
36
  end
37
37
 
38
- class InvalidExtensionParameterError < StandardError
39
- attr_reader :type_name
40
- attr_reader :extension_name
41
- attr_reader :location
42
- attr_reader :extension_params
43
- attr_reader :class_params
44
-
45
- def initialize(type_name:, extension_name:, extension_params:, class_params:, location:)
46
- @type_name = type_name
47
- @extension_name = extension_name
48
- @extension_params = extension_params
49
- @class_params = class_params
50
- @location = location
51
-
52
- super "#{Location.to_string location}: Expected #{class_params.size} parameters to #{type_name} (#{extension_name}) but has #{extension_params.size} parameters"
53
- end
54
-
55
- def self.check!(type_name:, extension_name:, extension_params:, class_params:, location:)
56
- unless extension_params.size == class_params.size
57
- raise new(type_name: type_name,
58
- extension_name: extension_name,
59
- extension_params: extension_params,
60
- class_params: class_params,
61
- location: location)
62
- end
63
- end
64
- end
65
-
66
38
  class RecursiveAncestorError < StandardError
67
39
  attr_reader :ancestors
68
40
  attr_reader :location
@@ -162,6 +134,8 @@ module RBS
162
134
  env.class_decls
163
135
  when type_name.interface?
164
136
  env.interface_decls
137
+ else
138
+ raise
165
139
  end
166
140
 
167
141
  dic.key?(type_name) or raise new(type_name: type_name, location: self_type.location)
@@ -189,6 +163,8 @@ module RBS
189
163
  env.class_decls
190
164
  when type_name.interface?
191
165
  env.interface_decls
166
+ else
167
+ raise
192
168
  end
193
169
 
194
170
  dic.key?(type_name) or raise new(type_name: type_name, member: member)
@@ -205,7 +181,11 @@ module RBS
205
181
  @method_name = method_name
206
182
  @members = members
207
183
 
208
- super "#{Location.to_string location}: #{qualified_method_name} has duplicated definitions"
184
+ message = "#{Location.to_string location}: #{qualified_method_name} has duplicated definitions"
185
+ if members.size > 1
186
+ message << " in #{other_locations.map { |loc| Location.to_string loc }.join(', ')}"
187
+ end
188
+ super message
209
189
  end
210
190
 
211
191
  def qualified_method_name
@@ -220,11 +200,13 @@ module RBS
220
200
  def location
221
201
  members[0].location
222
202
  end
203
+
204
+ def other_locations
205
+ members.drop(1).map(&:location)
206
+ end
223
207
  end
224
208
 
225
209
  class DuplicatedInterfaceMethodDefinitionError < StandardError
226
- include MethodNameHelper
227
-
228
210
  attr_reader :type
229
211
  attr_reader :method_name
230
212
  attr_reader :member
@@ -265,36 +247,13 @@ module RBS
265
247
  attr_reader :name
266
248
  attr_reader :entry
267
249
 
268
- def initialize(name:, super_classes:, entry:)
250
+ def initialize(name:, entry:)
269
251
  @name = name
270
252
  @entry = entry
271
253
  super "#{Location.to_string entry.primary.decl.location}: Superclass mismatch: #{name}"
272
254
  end
273
255
  end
274
256
 
275
- class InconsistentMethodVisibilityError < StandardError
276
- attr_reader :type_name
277
- attr_reader :method_name
278
- attr_reader :kind
279
- attr_reader :member_pairs
280
-
281
- def initialize(type_name:, method_name:, kind:, member_pairs:)
282
- @type_name = type_name
283
- @method_name = method_name
284
- @kind = kind
285
- @member_pairs = member_pairs
286
-
287
- delimiter = case kind
288
- when :instance
289
- "#"
290
- when :singleton
291
- "."
292
- end
293
-
294
- super "#{Location.to_string member_pairs[0][0].location}: Inconsistent method visibility: #{type_name}#{delimiter}#{method_name}"
295
- end
296
- end
297
-
298
257
  class InvalidOverloadMethodError < StandardError
299
258
  attr_reader :type_name
300
259
  attr_reader :method_name
@@ -337,7 +296,8 @@ module RBS
337
296
  @name = name
338
297
  @decls = decls
339
298
 
340
- super "#{Location.to_string decls.last.location}: Duplicated declaration: #{name}"
299
+ last_decl = decls.last or raise
300
+ super "#{Location.to_string last_decl.location}: Duplicated declaration: #{name}"
341
301
  end
342
302
  end
343
303
 
@@ -367,7 +327,9 @@ module RBS
367
327
  end
368
328
 
369
329
  def location
370
- defs[0].original.location
330
+ first_def = defs.first or raise
331
+ original = first_def.original or raise
332
+ original.location
371
333
  end
372
334
  end
373
335
  end
@@ -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', 1077)
11
+ module_eval(<<'...end parser.y/module_eval...', 'parser.y', 1058)
12
12
 
13
13
  Types = RBS::Types
14
14
  Namespace = RBS::Namespace
@@ -401,121 +401,119 @@ end
401
401
  ##### State transition tables begin ###
402
402
 
403
403
  clist = [
404
- '360,361,33,362,182,114,5,33,33,347,181,404,49,33,33,359,37,345,248,403',
405
- '40,41,55,56,57,58,59,60,61,62,364,33,63,54,64,65,66,77,67,68,69,83,33',
406
- '32,53,355,349,350,32,32,353,351,354,312,32,32,33,352,82,70,71,72,74',
407
- '76,75,348,357,358,73,78,80,127,32,125,42,84,85,81,86,360,361,33,362',
408
- '32,96,97,98,99,43,49,48,33,33,33,359,207,207,32,126,40,41,55,56,57,58',
409
- '59,60,61,62,79,33,63,54,64,65,66,77,67,68,69,83,53,32,161,355,349,350',
410
- '53,53,353,351,354,32,32,32,187,352,82,70,71,72,74,76,75,348,357,358',
411
- '73,78,80,225,32,162,287,84,85,81,86,360,361,126,362,104,96,97,98,99',
412
- '101,102,39,103,40,41,359,121,226,335,370,288,165,55,56,57,58,59,60,61',
413
- '62,79,407,63,54,64,65,66,77,67,68,69,83,39,126,126,355,349,350,408,409',
414
- '353,351,354,331,40,41,126,352,82,70,71,72,74,76,75,348,357,358,73,78',
415
- '80,166,327,126,126,84,85,81,86,360,361,167,362,168,96,97,98,99,2,3,4',
416
- '40,41,169,359,40,41,40,41,40,41,55,56,57,58,59,60,61,62,79,171,63,54',
417
- '64,65,66,77,67,68,69,83,40,41,172,355,349,350,40,41,353,351,354,40,41',
418
- '40,41,352,82,70,71,72,74,76,75,348,357,358,73,78,80,360,361,173,362',
419
- '84,85,81,86,-4,114,-245,180,33,183,118,359,-245,40,41,40,41,114,55,56',
420
- '57,58,59,60,61,62,79,186,63,54,64,65,66,77,67,68,69,83,40,41,41,355',
421
- '349,350,283,284,353,351,354,32,290,291,189,352,82,70,71,72,74,76,75',
422
- '348,357,358,73,78,80,360,361,182,362,84,85,81,86,382,383,40,41,190,39',
423
- '-108,359,40,41,398,399,40,41,55,56,57,58,59,60,61,62,79,-109,63,54,64',
424
- '65,66,77,67,68,69,83,40,41,-110,355,349,350,40,41,353,351,354,40,41',
425
- '40,41,352,82,70,71,72,74,76,75,348,357,358,73,78,80,40,41,40,41,84,85',
426
- '81,86,360,361,-111,362,-112,96,97,98,99,-113,-114,-115,-116,-117,-118',
427
- '359,48,-133,195,196,197,198,55,56,57,58,59,60,61,62,79,199,63,54,64',
428
- '65,66,77,67,68,69,83,200,208,209,355,349,350,42,227,353,351,354,241',
429
- '251,252,254,352,82,70,71,72,74,76,75,348,357,358,73,78,80,360,361,256',
430
- '362,84,85,81,86,257,42,121,260,260,260,266,359,42,227,269,271,275,277',
431
- '55,56,57,58,59,60,61,62,79,279,63,54,64,65,66,77,67,68,69,83,280,318',
432
- '320,355,349,350,275,322,353,351,354,279,332,333,334,352,82,70,71,72',
433
- '74,76,75,348,357,358,73,78,80,338,338,338,368,84,85,81,86,33,371,378',
434
- '96,97,98,99,379,380,381,22,23,21,384,26,-223,25,386,30,389,132,133,134',
435
- '135,136,137,138,139,143,16,140,131,141,142,66,77,67,68,69,83,389,32',
436
- '389,402,405,28,406,157,413,158,160,414,415,417,422,423,82,70,71,72,74',
437
- '76,75,424,425,422,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23',
438
- '21,,26,,25,,30,,132,133,134,135,136,137,138,139,143,16,140,131,141,142',
439
- '66,77,67,68,69,83,,32,,,,28,,,,,,,,,,,82,70,71,72,74,76,75,,,,73,78',
440
- '80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-223,25,,30,,132',
441
- '133,134,135,136,137,138,139,143,16,140,131,141,142,66,77,67,68,69,83',
442
- ',32,,,,28,,157,,158,160,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84',
443
- '85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-223,25,,30,,132,133,134,135',
444
- '136,137,138,139,143,16,140,131,141,142,66,77,67,68,69,83,,32,,,,28,',
445
- '157,,158,160,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33',
446
- ',,96,97,98,99,,,,22,23,21,,26,-223,25,,30,,132,133,134,135,136,137,138',
447
- '139,143,16,140,131,141,142,66,77,67,68,69,83,,32,,,,28,,233,,,160,,',
404
+ '349,350,33,351,5,113,37,33,33,42,336,392,49,33,33,348,43,244,334,391',
405
+ '40,41,55,56,57,58,59,60,61,62,353,33,63,54,64,65,66,77,67,68,69,83,33',
406
+ '32,53,344,338,339,32,32,342,340,343,303,32,32,33,341,82,70,71,72,74',
407
+ '76,75,337,346,347,73,78,80,126,32,124,48,84,85,81,86,349,350,33,351',
408
+ '32,96,97,98,99,104,49,39,33,33,33,348,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,344,338',
410
+ '339,53,53,342,340,343,32,32,32,125,341,82,70,71,72,74,76,75,337,346',
411
+ '347,73,78,80,40,41,161,222,84,85,81,86,349,350,120,351,180,96,97,98',
412
+ '99,164,179,101,102,165,103,348,166,278,325,358,223,39,55,56,57,58,59',
413
+ '60,61,62,79,395,63,54,64,65,66,77,67,68,69,83,279,125,125,344,338,339',
414
+ '396,397,342,340,343,321,40,41,125,341,82,70,71,72,74,76,75,337,346,347',
415
+ '73,78,80,167,317,125,125,84,85,81,86,349,350,168,351,170,96,97,98,99',
416
+ '2,3,4,40,41,171,348,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,344,338,339,40,41,342,340,343',
418
+ '40,41,40,41,341,82,70,71,72,74,76,75,337,346,347,73,78,80,349,350,178',
419
+ '351,84,85,81,86,-4,181,-241,184,33,41,117,348,-241,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
+ '344,338,339,281,282,342,340,343,32,370,371,188,341,82,70,71,72,74,76',
422
+ '75,337,346,347,73,78,80,349,350,-104,351,84,85,81,86,40,41,40,41,-105',
423
+ '39,-106,348,386,387,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,344,338,339,40,41,342,340,343,40',
425
+ '41,40,41,341,82,70,71,72,74,76,75,337,346,347,73,78,80,40,41,-109,-110',
426
+ '84,85,81,86,349,350,-111,351,-112,96,97,98,99,-113,-114,48,-129,193',
427
+ '194,348,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,224,238,247,344,338,339,248,250,342,340,343',
429
+ '252,253,42,255,341,82,70,71,72,74,76,75,337,346,347,73,78,80,349,350',
430
+ '255,351,84,85,81,86,255,261,42,224,265,269,271,348,273,274,310,269,312',
431
+ '273,55,56,57,58,59,60,61,62,79,322,63,54,64,65,66,77,67,68,69,83,323',
432
+ '324,327,344,338,339,327,327,342,340,343,357,359,366,367,341,82,70,71',
433
+ '72,74,76,75,337,346,347,73,78,80,368,369,372,374,84,85,81,86,33,377',
434
+ '377,96,97,98,99,377,390,393,22,23,21,394,26,-219,25,401,30,402,131,132',
435
+ '133,134,135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,403',
436
+ '32,405,410,411,28,412,156,413,157,159,410,,,,,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',
441
+ '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,,230,,,159,,',
448
448
  ',,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99',
449
- ',,,22,23,21,,26,-223,25,,30,,132,133,134,135,136,137,138,139,143,16',
450
- '140,131,141,142,66,77,67,68,69,83,,32,,,,28,,157,,158,160,,,,,,82,70',
449
+ ',,,22,23,21,,26,-219,25,,30,,131,132,133,134,135,136,137,138,142,16',
450
+ '139,130,140,141,66,77,67,68,69,83,,32,,,,28,,156,,157,159,,,,,,82,70',
451
451
  '71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23',
452
- '21,,26,-223,25,,30,,132,133,134,135,136,137,138,139,143,16,140,131,141',
453
- '142,66,77,67,68,69,83,,32,,,,28,176,233,,179,160,177,,,,,82,70,71,72',
454
- '74,76,75,,,,73,78,80,,,178,,84,85,81,86,96,97,98,99,,175,,90,89,91,',
455
- ',,,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,,,,',
456
- ',,,,192,,193,,,,,,82,70,71,72,74,76,75,,95,94,73,78,80,,,,,84,85,81',
457
- '86,96,97,98,99,,,,90,89,91,,,,,,40,41,55,56,57,58,59,60,61,62,79,,63',
458
- '54,64,65,66,77,67,68,69,83,194,,,,,,,,,,,,,,,,82,70,71,72,74,76,75,',
459
- '95,94,73,78,80,96,97,98,99,84,85,81,86,,,,,,,,,,55,56,57,58,59,60,61',
460
- '62,79,,63,54,64,65,66,77,67,68,69,83,192,,193,,,,,233,,,160,,,,,,82',
461
- '70,71,72,74,76,75,192,,193,73,78,80,96,97,98,99,84,85,81,86,,,,,,,,40',
462
- '41,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,194,40',
463
- '41,,,,,233,,,160,,,,,,82,70,71,72,74,76,75,194,,,73,78,80,96,97,98,99',
464
- '84,85,81,86,,,,,,,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67',
465
- '68,69,83,192,,193,192,,193,192,,193,,,,,,,,82,70,71,72,74,76,75,,,,73',
466
- '78,80,,,,,84,85,81,86,,,,,,,,40,41,,40,41,,40,41,-245,,33,,118,,-245',
467
- ',,307,308,114,,,194,,,194,,,194,,-245,,33,,118,,-245,,309,307,308,114',
468
- ',,,,,304,303,,,32,-245,,33,,118,,-245,,309,307,308,114,,,,295,,304,303',
469
- ',,32,-245,,33,,118,,-245,,309,307,308,114,,,,319,,304,303,,,32,,,,,',
470
- ',,,309,,,,,,,323,,304,303,,33,32,,,,,,,,,22,23,21,,26,,25,369,30,,8',
471
- '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
472
- ',25,45,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28',
473
- '22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,',
474
- ',,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18',
475
- '11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14',
476
- '15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20',
477
- '9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30',
478
- ',8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21',
479
- ',26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,',
480
- '28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33',
481
- ',,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18',
482
- '11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14',
483
- '15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20',
484
- '9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30',
485
- ',8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21',
486
- ',26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,',
487
- '28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33',
488
- ',,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18',
489
- '11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14',
490
- '15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20',
491
- '9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30',
492
- ',8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21',
493
- ',26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,',
494
- '28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33',
495
- ',,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18',
496
- '11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14',
497
- '15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20',
498
- '9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30',
499
- ',8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21',
500
- ',26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,',
501
- '28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33',
502
- ',,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18',
503
- '11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14',
504
- '15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20',
505
- '9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30',
506
- ',8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21',
507
- ',26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,',
508
- '28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33',
509
- ',,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18',
510
- '11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14',
511
- '15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20',
512
- '9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30',
513
- ',8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21',
514
- ',26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,',
515
- '28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,176',
516
- ',,179,,177,,32,331,,,28,,,,,,,,,,,,,,178,,327,328,324,325,326,,,,329',
517
- '175' ]
518
- racc_action_table = arr = ::Array.new(3055, nil)
452
+ '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,,230,,,159,,,,,,82,70,71,72,74,76,75',
454
+ ',,,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,,',
456
+ ',,,82,70,71,72,74,76,75,,95,94,73,78,80,,,,,84,85,81,86,96,97,98,99',
457
+ ',,,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',
459
+ '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,,,,,230,,,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,,,,,230,,,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,-241,,33,,117,,-241,,,298,299,113',
467
+ ',,192,,,192,,,192,,-241,,33,,117,,-241,,300,298,299,113,,,,,,295,294',
468
+ ',,32,-241,,33,,117,,-241,,300,298,299,113,,,,286,,295,294,,174,32,,177',
469
+ ',175,,,321,,300,,,,,,,309,,295,294,,33,32,,176,,317,318,314,315,316',
470
+ '22,23,21,319,26,,25,313,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
471
+ ',,33,,,,,32,,,,28,22,23,21,,26,,25,45,30,,8,12,19,20,9,10,13,14,15,16',
472
+ '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
473
+ '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
474
+ '19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25',
475
+ ',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23',
476
+ '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
477
+ ',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
478
+ ',,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)
519
517
  idx = 0
520
518
  clist.each do |str|
521
519
  str.split(',', -1).each do |i|
@@ -525,140 +523,139 @@ clist = [
525
523
  end
526
524
 
527
525
  clist = [
528
- '331,331,48,331,117,281,1,179,217,330,117,389,28,218,219,331,5,330,219',
529
- '389,44,44,331,331,331,331,331,331,331,331,331,220,331,331,331,331,331',
530
- '331,331,331,331,331,248,48,28,331,331,331,179,217,331,331,331,281,218',
531
- '219,271,331,331,331,331,331,331,331,331,331,331,331,331,331,331,47,220',
532
- '46,7,331,331,331,331,339,339,277,339,248,339,339,339,339,24,120,27,279',
533
- '327,328,339,161,208,271,46,47,47,339,339,339,339,339,339,339,339,339',
534
- '329,339,339,339,339,339,339,339,339,339,339,120,277,51,339,339,339,161',
535
- '208,339,339,339,279,327,328,124,339,339,339,339,339,339,339,339,339',
536
- '339,339,339,339,339,185,329,51,272,339,339,339,339,340,340,124,340,32',
537
- '340,340,340,340,31,31,35,31,6,6,340,36,185,311,337,272,87,340,340,340',
538
- '340,340,340,340,340,340,394,340,340,340,340,340,340,340,340,340,340',
539
- '6,311,337,340,340,340,395,396,340,340,340,317,170,170,394,340,340,340',
540
- '340,340,340,340,340,340,340,340,340,340,340,88,317,395,396,340,340,340',
541
- '340,341,341,89,341,90,341,341,341,341,0,0,0,188,188,91,341,211,211,212',
542
- '212,213,213,341,341,341,341,341,341,341,341,341,93,341,341,341,341,341',
543
- '341,341,341,341,341,214,214,94,341,341,341,215,215,341,341,341,216,216',
544
- '222,222,341,341,341,341,341,341,341,341,341,341,341,341,341,341,365',
545
- '365,95,365,341,341,341,341,34,114,34,116,34,118,34,365,34,223,223,224',
546
- '224,34,365,365,365,365,365,365,365,365,365,121,365,365,365,365,365,365',
547
- '365,365,365,365,267,267,122,365,365,365,269,269,365,365,365,34,274,274',
548
- '128,365,365,365,365,365,365,365,365,365,365,365,365,365,365,384,384',
549
- '129,384,365,365,365,365,356,356,366,366,130,34,131,384,367,367,381,381',
550
- '387,387,384,384,384,384,384,384,384,384,384,132,384,384,384,384,384',
551
- '384,384,384,384,384,390,390,133,384,384,384,392,392,384,384,384,401',
552
- '401,416,416,384,384,384,384,384,384,384,384,384,384,384,384,384,384',
553
- '418,418,419,419,384,384,384,384,397,397,134,397,135,397,397,397,397',
554
- '136,137,138,139,140,141,397,142,143,146,147,149,151,397,397,397,397',
555
- '397,397,397,397,397,154,397,397,397,397,397,397,397,397,397,397,155',
556
- '162,163,397,397,397,164,190,397,397,397,206,221,226,231,397,397,397',
557
- '397,397,397,397,397,397,397,397,397,397,397,424,424,242,424,397,397',
558
- '397,397,243,244,245,246,247,249,250,424,253,256,258,259,260,261,424',
559
- '424,424,424,424,424,424,424,424,262,424,424,424,424,424,424,424,424',
560
- '424,424,264,282,286,424,424,424,288,289,424,424,424,293,307,308,309',
561
- '424,424,424,424,424,424,424,424,424,424,424,424,424,424,324,325,326',
562
- '334,424,424,424,424,49,338,342,49,49,49,49,343,344,346,49,49,49,364',
563
- '49,49,49,368,49,373,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49',
564
- '49,49,49,49,375,49,377,388,391,49,393,49,398,49,49,399,400,404,410,412',
565
- '49,49,49,49,49,49,49,415,421,425,49,49,49,,,,,49,49,49,49,157,,,157',
566
- '157,157,157,,,,157,157,157,,157,,157,,157,,157,157,157,157,157,157,157',
567
- '157,157,157,157,157,157,157,157,157,157,157,157,157,,157,,,,157,,,,',
568
- ',,,,,,157,157,157,157,157,157,157,,,,157,157,157,,,,,157,157,157,157',
569
- '196,,,196,196,196,196,,,,196,196,196,,196,196,196,,196,,196,196,196',
570
- '196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196',
571
- ',196,,,,196,,196,,196,196,,,,,,196,196,196,196,196,196,196,,,,196,196',
572
- '196,,,,,196,196,196,196,197,,,197,197,197,197,,,,197,197,197,,197,197',
573
- '197,,197,,197,197,197,197,197,197,197,197,197,197,197,197,197,197,197',
574
- '197,197,197,197,197,,197,,,,197,,197,,197,197,,,,,,197,197,197,197,197',
575
- '197,197,,,,197,197,197,,,,,197,197,197,197,198,,,198,198,198,198,,,',
576
- '198,198,198,,198,198,198,,198,,198,198,198,198,198,198,198,198,198,198',
577
- '198,198,198,198,198,198,198,198,198,198,,198,,,,198,,198,,,198,,,,,',
578
- '198,198,198,198,198,198,198,,,,198,198,198,,,,,198,198,198,198,207,',
579
- ',207,207,207,207,,,,207,207,207,,207,207,207,,207,,207,207,207,207,207',
580
- '207,207,207,207,207,207,207,207,207,207,207,207,207,207,207,,207,,,',
581
- '207,,207,,207,207,,,,,,207,207,207,207,207,207,207,,,,207,207,207,,',
582
- ',,207,207,207,207,254,,,254,254,254,254,,,,254,254,254,,254,254,254',
583
- ',254,,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254',
584
- '254,254,254,254,,254,,,,254,115,254,,115,254,115,,,,,254,254,254,254',
585
- '254,254,254,,,,254,254,254,,,115,,254,254,254,254,30,30,30,30,,115,',
586
- '30,30,30,,,,,,,,30,30,30,30,30,30,30,30,30,,30,30,30,30,30,30,30,30',
587
- '30,30,,,,,,,,,144,,144,,,,,,30,30,30,30,30,30,30,,30,30,30,30,30,,,',
588
- ',30,30,30,30,166,166,166,166,,,,166,166,166,,,,,,144,144,166,166,166',
589
- '166,166,166,166,166,166,,166,166,166,166,166,166,166,166,166,166,144',
590
- ',,,,,,,,,,,,,,,166,166,166,166,166,166,166,,166,166,166,166,166,199',
591
- '199,199,199,166,166,166,166,,,,,,,,,,199,199,199,199,199,199,199,199',
592
- '199,,199,199,199,199,199,199,199,199,199,199,201,,201,,,,,199,,,199',
593
- ',,,,,199,199,199,199,199,199,199,203,,203,199,199,199,200,200,200,200',
594
- '199,199,199,199,,,,,,,,201,201,200,200,200,200,200,200,200,200,200,',
595
- '200,200,200,200,200,200,200,200,200,200,201,203,203,,,,,200,,,200,,',
596
- ',,,200,200,200,200,200,200,200,203,,,200,200,200,233,233,233,233,200',
597
- '200,200,200,,,,,,,,,,233,233,233,233,233,233,233,233,233,,233,233,233',
598
- '233,233,233,233,233,233,233,204,,204,205,,205,237,,237,,,,,,,,233,233',
599
- '233,233,233,233,233,,,,233,233,233,,,,,233,233,233,233,,,,,,,,204,204',
600
- ',205,205,,237,237,278,,278,,278,,278,,,278,278,278,,,204,,,205,,,237',
601
- ',285,,285,,285,,285,,278,285,285,285,,,,,,278,278,,,278,292,,292,,292',
602
- ',292,,285,292,292,292,,,,278,,285,285,,,285,336,,336,,336,,336,,292',
603
- '336,336,336,,,,285,,292,292,,,292,,,,,,,,,336,,,,,,,292,,336,336,,2',
604
- '336,,,,,,,,,2,2,2,,2,,2,336,2,,2,2,2,2,2,2,2,2,2,2,2,2,2,2,,,25,,,,',
605
- '2,,,,2,25,25,25,,25,,25,25,25,,25,25,25,25,25,25,25,25,25,25,25,25,25',
606
- '25,,,26,,,,,25,,,,25,26,26,26,,26,,26,,26,,26,26,26,26,26,26,26,26,26',
607
- '26,26,26,26,26,,,40,,,,,26,,,,26,40,40,40,,40,,40,,40,,40,40,40,40,40',
608
- '40,40,40,40,40,40,40,40,40,,,41,,,,,40,,,,40,41,41,41,,41,,41,,41,,41',
609
- '41,41,41,41,41,41,41,41,41,41,41,41,41,,,43,,,,,41,,,,41,43,43,43,,43',
610
- ',43,,43,,43,43,43,43,43,43,43,43,43,43,43,43,43,43,,,53,,,,,43,,,,43',
611
- '53,53,53,,53,,53,,53,,53,53,53,53,53,53,53,53,53,53,53,53,53,53,,,92',
612
- ',,,,53,,,,53,92,92,92,,92,,92,,92,,92,92,92,92,92,92,92,92,92,92,92',
613
- '92,92,92,,,126,,,,,92,,,,92,126,126,126,,126,,126,,126,,126,126,126',
614
- '126,126,126,126,126,126,126,126,126,126,126,,,158,,,,,126,,,,126,158',
615
- '158,158,,158,,158,,158,,158,158,158,158,158,158,158,158,158,158,158',
616
- '158,158,158,,,159,,,,,158,,,,158,159,159,159,,159,,159,,159,,159,159',
617
- '159,159,159,159,159,159,159,159,159,159,159,159,,,160,,,,,159,,,,159',
618
- '160,160,160,,160,,160,,160,,160,160,160,160,160,160,160,160,160,160',
619
- '160,160,160,160,,,167,,,,,160,,,,160,167,167,167,,167,,167,,167,,167',
620
- '167,167,167,167,167,167,167,167,167,167,167,167,167,,,168,,,,,167,,',
621
- ',167,168,168,168,,168,,168,,168,,168,168,168,168,168,168,168,168,168',
622
- '168,168,168,168,168,,,169,,,,,168,,,,168,169,169,169,,169,,169,,169',
623
- ',169,169,169,169,169,169,169,169,169,169,169,169,169,169,,,171,,,,,169',
624
- ',,,169,171,171,171,,171,,171,,171,,171,171,171,171,171,171,171,171,171',
625
- '171,171,171,171,171,,,172,,,,,171,,,,171,172,172,172,,172,,172,,172',
626
- ',172,172,172,172,172,172,172,172,172,172,172,172,172,172,,,173,,,,,172',
627
- ',,,172,173,173,173,,173,,173,,173,,173,173,173,173,173,173,173,173,173',
628
- '173,173,173,173,173,,,180,,,,,173,,,,173,180,180,180,,180,,180,,180',
629
- ',180,180,180,180,180,180,180,180,180,180,180,180,180,180,,,181,,,,,180',
630
- ',,,180,181,181,181,,181,,181,,181,,181,181,181,181,181,181,181,181,181',
631
- '181,181,181,181,181,,,183,,,,,181,,,,181,183,183,183,,183,,183,,183',
632
- ',183,183,183,183,183,183,183,183,183,183,183,183,183,183,,,202,,,,,183',
633
- ',,,183,202,202,202,,202,,202,,202,,202,202,202,202,202,202,202,202,202',
634
- '202,202,202,202,202,,,209,,,,,202,,,,202,209,209,209,,209,,209,,209',
635
- ',209,209,209,209,209,209,209,209,209,209,209,209,209,209,,,227,,,,,209',
636
- ',,,209,227,227,227,,227,,227,,227,,227,227,227,227,227,227,227,227,227',
637
- '227,227,227,227,227,,,251,,,,,227,,,,227,251,251,251,,251,,251,,251',
638
- ',251,251,251,251,251,251,251,251,251,251,251,251,251,251,,,280,,,,,251',
639
- ',,,251,280,280,280,,280,,280,,280,,280,280,280,280,280,280,280,280,280',
640
- '280,280,280,280,280,,,320,,,,,280,,,,280,320,320,320,,320,,320,,320',
641
- ',320,320,320,320,320,320,320,320,320,320,320,320,320,320,,,332,,,,,320',
642
- ',,,320,332,332,332,,332,,332,,332,,332,332,332,332,332,332,332,332,332',
643
- '332,332,332,332,332,,,333,,,,,332,,,,332,333,333,333,,333,,333,,333',
644
- ',333,333,333,333,333,333,333,333,333,333,333,333,333,333,,,372,,,,,333',
645
- ',,,333,372,372,372,,372,,372,,372,,372,372,372,372,372,372,372,372,372',
646
- '372,372,372,372,372,,,374,,,,,372,,,,372,374,374,374,,374,,374,,374',
647
- ',374,374,374,374,374,374,374,374,374,374,374,374,374,374,,,376,,,,,374',
648
- ',,,374,376,376,376,,376,,376,,376,,376,376,376,376,376,376,376,376,376',
649
- '376,376,376,376,376,,,378,,,,,376,,,,376,378,378,378,,378,,378,,378',
650
- ',378,378,378,378,378,378,378,378,378,378,378,378,378,378,,,379,,,,,378',
651
- ',,,378,379,379,379,,379,,379,,379,,379,379,379,379,379,379,379,379,379',
652
- '379,379,379,379,379,,,380,,,,,379,,,,379,380,380,380,,380,,380,,380',
653
- ',380,380,380,380,380,380,380,380,380,380,380,380,380,380,,,386,,,,,380',
654
- ',,,380,386,386,386,,386,,386,,386,,386,386,386,386,386,386,386,386,386',
655
- '386,386,386,386,386,,,402,,,,,386,,,,386,402,402,402,,402,,402,,402',
656
- ',402,402,402,402,402,402,402,402,402,402,402,402,402,402,,,405,,,,,402',
657
- ',,,402,405,405,405,,405,,405,,405,,405,405,405,405,405,405,405,405,405',
658
- '405,405,405,405,405,,,406,,,,,405,,,,405,406,406,406,,406,,406,,406',
659
- ',406,406,406,406,406,406,406,406,406,406,406,406,406,406,294,,,294,',
660
- '294,,406,294,,,406,,,,,,,,,,,,,,294,,294,294,294,294,294,,,,294,294' ]
661
- racc_action_check = arr = ::Array.new(3055, nil)
526
+ '321,321,48,321,1,275,5,177,215,7,320,377,28,216,217,321,24,216,320,377',
527
+ '44,44,321,321,321,321,321,321,321,321,321,244,321,321,321,321,321,321',
528
+ '321,321,321,321,265,48,28,321,321,321,177,215,321,321,321,275,216,217',
529
+ '271,321,321,321,321,321,321,321,321,321,321,321,321,321,321,47,244,46',
530
+ '27,321,321,321,321,328,328,273,328,265,328,328,328,328,32,119,35,317',
531
+ '318,319,328,160,206,271,46,47,47,328,328,328,328,328,328,328,328,328',
532
+ '123,328,328,328,328,328,328,328,328,328,328,119,273,51,328,328,328,160',
533
+ '206,328,328,328,317,318,319,123,328,328,328,328,328,328,328,328,328',
534
+ '328,328,328,328,328,6,6,51,183,328,328,328,328,329,329,36,329,116,329',
535
+ '329,329,329,87,116,31,31,88,31,329,89,266,302,326,183,6,329,329,329',
536
+ '329,329,329,329,329,329,382,329,329,329,329,329,329,329,329,329,329',
537
+ '266,302,326,329,329,329,383,384,329,329,329,308,169,169,382,329,329',
538
+ '329,329,329,329,329,329,329,329,329,329,329,329,90,308,383,384,329,329',
539
+ '329,329,330,330,91,330,93,330,330,330,330,0,0,0,186,186,94,330,209,209',
540
+ '210,210,211,211,330,330,330,330,330,330,330,330,330,95,330,330,330,330',
541
+ '330,330,330,330,330,330,212,212,113,330,330,330,213,213,330,330,330',
542
+ '214,214,219,219,330,330,330,330,330,330,330,330,330,330,330,330,330',
543
+ '330,354,354,115,354,330,330,330,330,34,117,34,120,34,121,34,354,34,220',
544
+ '220,221,221,34,354,354,354,354,354,354,354,354,354,127,354,354,354,354',
545
+ '354,354,354,354,354,354,262,262,128,354,354,354,268,268,354,354,354',
546
+ '34,345,345,129,354,354,354,354,354,354,354,354,354,354,354,354,354,354',
547
+ '372,372,130,372,354,354,354,354,355,355,356,356,131,34,132,372,369,369',
548
+ '375,375,378,378,372,372,372,372,372,372,372,372,372,133,372,372,372',
549
+ '372,372,372,372,372,372,372,380,380,134,372,372,372,389,389,372,372',
550
+ '372,404,404,406,406,372,372,372,372,372,372,372,372,372,372,372,372',
551
+ '372,372,407,407,135,136,372,372,372,372,385,385,137,385,138,385,385',
552
+ '385,385,139,140,141,142,145,146,385,148,150,153,154,161,162,385,385',
553
+ '385,385,385,385,385,385,385,163,385,385,385,385,385,385,385,385,385',
554
+ '385,188,204,218,385,385,385,223,228,385,385,385,239,240,241,242,385',
555
+ '385,385,385,385,385,385,385,385,385,385,385,385,385,412,412,243,412',
556
+ '385,385,385,385,245,246,249,252,254,255,256,412,257,259,277,279,280',
557
+ '284,412,412,412,412,412,412,412,412,412,298,412,412,412,412,412,412',
558
+ '412,412,412,412,299,300,314,412,412,412,315,316,412,412,412,324,327',
559
+ '331,332,412,412,412,412,412,412,412,412,412,412,412,412,412,412,333',
560
+ '335,353,357,412,412,412,412,49,361,363,49,49,49,49,365,376,379,49,49',
561
+ '49,381,49,49,49,386,49,387,49,49,49,49,49,49,49,49,49,49,49,49,49,49',
562
+ '49,49,49,49,49,49,388,49,392,398,400,49,403,49,409,49,49,413,,,,,49',
563
+ '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,250,,,250,250,250,250,,,,250,250,250,,250,250,250',
581
+ ',250,,250,250,250,250,250,250,250,250,250,250,250,250,250,250,250,250',
582
+ '250,250,250,250,,250,,,,250,,250,,,250,,,,,,250,250,250,250,250,250',
583
+ '250,,,,250,250,250,,,,,250,250,250,250,30,30,30,30,,,,30,30,30,,,,,',
584
+ ',,30,30,30,30,30,30,30,30,30,,30,30,30,30,30,30,30,30,30,30,,,,,,,,',
585
+ '143,,143,,,,,,30,30,30,30,30,30,30,,30,30,30,30,30,,,,,30,30,30,30,165',
586
+ '165,165,165,,,,165,165,165,,,,,,143,143,165,165,165,165,165,165,165',
587
+ '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,230,230,230,230,198,198,198,198,,,,,,',
595
+ ',,,230,230,230,230,230,230,230,230,230,,230,230,230,230,230,230,230',
596
+ '230,230,230,202,,202,203,,203,234,,234,,,,,,,,230,230,230,230,230,230',
597
+ '230,,,,230,230,230,,,,,230,230,230,230,,,,,,,,202,202,,203,203,,234',
598
+ '234,272,,272,,272,,272,,,272,272,272,,,202,,,203,,,234,,276,,276,,276',
599
+ ',276,,272,276,276,276,,,,,,272,272,,,272,283,,283,,283,,283,,276,283',
600
+ '283,283,,,,272,,276,276,,285,276,,285,,285,,,285,,283,,,,,,,276,,283',
601
+ '283,,2,283,,285,,285,285,285,285,285,2,2,2,285,2,,2,283,2,,2,2,2,2,2',
602
+ '2,2,2,2,2,2,2,2,2,,,25,,,,,2,,,,2,25,25,25,,25,,25,25,25,,25,25,25,25',
603
+ '25,25,25,25,25,25,25,25,25,25,,,26,,,,,25,,,,25,26,26,26,,26,,26,,26',
604
+ ',26,26,26,26,26,26,26,26,26,26,26,26,26,26,,,40,,,,,26,,,,26,40,40,40',
605
+ ',40,,40,,40,,40,40,40,40,40,40,40,40,40,40,40,40,40,40,,,41,,,,,40,',
606
+ ',,40,41,41,41,,41,,41,,41,,41,41,41,41,41,41,41,41,41,41,41,41,41,41',
607
+ ',,43,,,,,41,,,,41,43,43,43,,43,,43,,43,,43,43,43,43,43,43,43,43,43,43',
608
+ '43,43,43,43,,,53,,,,,43,,,,43,53,53,53,,53,,53,,53,,53,53,53,53,53,53',
609
+ '53,53,53,53,53,53,53,53,,,92,,,,,53,,,,53,92,92,92,,92,,92,,92,,92,92',
610
+ '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',
627
+ '178,178,178,178,178,,,179,,,,,178,,,,178,179,179,179,,179,,179,,179',
628
+ ',179,179,179,179,179,179,179,179,179,179,179,179,179,179,,,181,,,,,179',
629
+ ',,,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,,,224,,,,,207,,,,207,224,224,224,,224,,224,,224',
634
+ ',224,224,224,224,224,224,224,224,224,224,224,224,224,224,,,247,,,,,224',
635
+ ',,,224,247,247,247,,247,,247,,247,,247,247,247,247,247,247,247,247,247',
636
+ '247,247,247,247,247,,,274,,,,,247,,,,247,274,274,274,,274,,274,,274',
637
+ ',274,274,274,274,274,274,274,274,274,274,274,274,274,274,,,310,,,,,274',
638
+ ',,,274,310,310,310,,310,,310,,310,,310,310,310,310,310,310,310,310,310',
639
+ '310,310,310,310,310,,,322,,,,,310,,,,310,322,322,322,,322,,322,,322',
640
+ ',322,322,322,322,322,322,322,322,322,322,322,322,322,322,,,323,,,,,322',
641
+ ',,,322,323,323,323,,323,,323,,323,,323,323,323,323,323,323,323,323,323',
642
+ '323,323,323,323,323,,,360,,,,,323,,,,323,360,360,360,,360,,360,,360',
643
+ ',360,360,360,360,360,360,360,360,360,360,360,360,360,360,,,362,,,,,360',
644
+ ',,,360,362,362,362,,362,,362,,362,,362,362,362,362,362,362,362,362,362',
645
+ '362,362,362,362,362,,,364,,,,,362,,,,362,364,364,364,,364,,364,,364',
646
+ ',364,364,364,364,364,364,364,364,364,364,364,364,364,364,,,366,,,,,364',
647
+ ',,,364,366,366,366,,366,,366,,366,,366,366,366,366,366,366,366,366,366',
648
+ '366,366,366,366,366,,,367,,,,,366,,,,366,367,367,367,,367,,367,,367',
649
+ ',367,367,367,367,367,367,367,367,367,367,367,367,367,367,,,368,,,,,367',
650
+ ',,,367,368,368,368,,368,,368,,368,,368,368,368,368,368,368,368,368,368',
651
+ '368,368,368,368,368,,,374,,,,,368,,,,368,374,374,374,,374,,374,,374',
652
+ ',374,374,374,374,374,374,374,374,374,374,374,374,374,374,,,390,,,,,374',
653
+ ',,,374,390,390,390,,390,,390,,390,,390,390,390,390,390,390,390,390,390',
654
+ '390,390,390,390,390,,,393,,,,,390,,,,390,393,393,393,,393,,393,,393',
655
+ ',393,393,393,393,393,393,393,393,393,393,393,393,393,393,,,394,,,,,393',
656
+ ',,,393,394,394,394,,394,,394,,394,,394,394,394,394,394,394,394,394,394',
657
+ '394,394,394,394,394,,,,,,,,394,,,,394' ]
658
+ racc_action_check = arr = ::Array.new(3008, nil)
662
659
  idx = 0
663
660
  clist.each do |str|
664
661
  str.split(',', -1).each do |i|
@@ -668,200 +665,196 @@ clist = [
668
665
  end
669
666
 
670
667
  racc_action_pointer = [
671
- 173, 6, 1612, nil, nil, 16, 124, 23, nil, nil,
668
+ 173, 4, 1590, nil, nil, 6, 103, -42, nil, nil,
672
669
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
673
- nil, nil, nil, nil, 68, 1648, 1684, 72, -6, nil,
674
- 1140, 165, 158, nil, 316, 93, 154, nil, nil, nil,
675
- 1720, 1756, nil, 1792, -27, nil, 52, 52, -2, 604,
676
- nil, 101, nil, 1828, nil, nil, nil, nil, nil, nil,
670
+ nil, nil, nil, nil, -4, 1626, 1662, 56, -6, nil,
671
+ 1140, 167, 84, nil, 316, 14, 140, nil, nil, nil,
672
+ 1698, 1734, nil, 1770, -27, nil, 52, 52, -2, 604,
673
+ nil, 101, nil, 1806, nil, nil, nil, nil, nil, nil,
677
674
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
678
675
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
679
- nil, nil, nil, nil, nil, nil, nil, 156, 183, 184,
680
- 186, 196, 1864, 224, 237, 266, 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,
681
678
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
682
- nil, nil, nil, nil, 304, 1081, 275, 2, 277, nil,
683
- 71, 337, 304, nil, 114, nil, 1900, nil, 345, 379,
684
- 372, 349, 366, 379, 416, 418, 423, 424, 425, 426,
685
- 427, 428, 456, 431, 1189, nil, 432, 431, nil, 432,
686
- nil, 433, nil, nil, 443, 454, nil, 681, 1936, 1972,
687
- 2008, 77, 479, 452, 455, nil, 1214, 2044, 2080, 2116,
688
- 165, 2152, 2188, 2224, nil, nil, nil, nil, nil, 3,
689
- 2260, 2296, nil, 2332, nil, 129, nil, nil, 202, nil,
690
- 457, nil, nil, nil, nil, nil, 758, 835, 912, 1280,
691
- 1346, 1321, 2368, 1344, 1453, 1456, 488, 989, 78, 2404,
692
- nil, 206, 208, 210, 232, 238, 243, 4, 9, 10,
693
- 27, 456, 245, 278, 280, nil, 511, 2440, nil, nil,
694
- nil, 468, nil, 1412, nil, nil, nil, 1459, nil, nil,
695
- nil, nil, 512, 514, 487, 519, 520, 521, 38, 522,
696
- 538, 2476, nil, 494, 1066, nil, 496, nil, 529, 489,
697
- 470, 506, 514, nil, 551, nil, nil, 303, nil, 354,
698
- nil, 52, 132, nil, 285, nil, nil, 77, 1506, 87,
699
- 2512, -8, 553, nil, nil, 1528, 553, nil, 498, 576,
700
- nil, nil, 1550, 536, 2983, nil, nil, nil, nil, nil,
701
- nil, nil, nil, nil, nil, nil, nil, 539, 540, 528,
702
- nil, 155, nil, nil, nil, nil, nil, 168, nil, nil,
703
- 2548, nil, nil, nil, 568, 569, 570, 88, 89, 106,
704
- -63, -2, 2584, 2620, 592, nil, 1572, 156, 552, 77,
705
- 156, 235, 590, 595, 596, nil, 578, nil, nil, nil,
706
- nil, nil, nil, nil, nil, nil, 336, nil, nil, nil,
707
- nil, nil, nil, nil, 564, 306, 342, 348, 581, nil,
708
- nil, nil, 2656, 609, 2692, 630, 2728, 632, 2764, 2800,
709
- 2836, 365, nil, nil, 377, nil, 2872, 352, 607, 0,
710
- 374, 608, 380, 610, 168, 185, 186, 456, 599, 602,
711
- 628, 385, 2908, nil, 642, 2944, 2980, nil, nil, nil,
712
- 604, nil, 619, nil, nil, 614, 387, nil, 403, 405,
713
- nil, 625, nil, nil, 527, 615, 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,
685
+ 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, 245,
690
+ 278, 280, nil, 504, 2418, nil, nil, nil, 461, nil,
691
+ 1412, nil, nil, nil, 1459, nil, nil, nil, nil, 492,
692
+ 489, 462, 494, 511, 27, 517, 533, 2454, nil, 488,
693
+ 1066, nil, 490, nil, 482, 463, 499, 499, nil, 526,
694
+ nil, nil, 303, nil, nil, 38, 154, nil, 279, nil,
695
+ nil, 52, 1506, 77, 2490, -8, 1528, 527, nil, 469,
696
+ 547, nil, nil, 1550, 504, 1537, nil, nil, nil, nil,
697
+ nil, nil, nil, nil, nil, nil, nil, nil, 516, 527,
698
+ 515, nil, 155, nil, nil, nil, nil, nil, 168, nil,
699
+ 2526, nil, nil, nil, 541, 545, 546, 87, 88, 89,
700
+ -62, -2, 2562, 2598, 571, nil, 156, 526, 77, 156,
701
+ 235, 564, 565, 580, nil, 562, nil, nil, nil, nil,
702
+ nil, nil, nil, nil, nil, 311, nil, nil, nil, nil,
703
+ nil, nil, nil, 545, 306, 340, 342, 559, nil, nil,
704
+ 2634, 591, 2670, 592, 2706, 597, 2742, 2778, 2814, 363,
705
+ nil, nil, 377, nil, 2850, 350, 572, 0, 352, 573,
706
+ 374, 577, 168, 185, 186, 456, 568, 570, 616, 380,
707
+ 2886, nil, 631, 2922, 2958, nil, nil, nil, 593, nil,
708
+ 608, nil, nil, 597, 385, nil, 387, 403, nil, 609,
709
+ nil, nil, 527, 601, nil, nil ]
714
710
 
715
711
  racc_action_default = [
716
- -249, -249, -245, -6, -16, -249, -4, -161, -164, -165,
717
- -166, -167, -168, -169, -170, -171, -172, -173, -174, -175,
718
- -176, -177, -178, -179, -180, -245, -245, -249, -84, -188,
719
- -249, -249, -246, -248, -17, -4, -151, 428, -1, -5,
720
- -245, -245, -187, -245, -189, -182, -249, -249, -245, -245,
721
- -186, -249, -208, -245, -108, -109, -110, -111, -112, -113,
722
- -114, -115, -116, -117, -118, -119, -120, -121, -122, -123,
723
- -124, -125, -126, -127, -128, -129, -130, -131, -132, -133,
724
- -134, -135, -136, -137, -138, -139, -140, -249, -192, -249,
725
- -249, -249, -245, -249, -249, -249, -203, -204, -205, -206,
726
- -239, -240, -241, -242, -247, -2, -7, -8, -9, -10,
727
- -11, -12, -13, -14, -17, -249, -249, -249, -249, -3,
728
- -84, -249, -162, -163, -249, -183, -245, -184, -249, -249,
729
- -249, -174, -164, -168, -175, -176, -165, -166, -169, -170,
730
- -173, -167, -119, -171, -235, -201, -249, -212, -213, -215,
731
- -216, -218, -219, -222, -225, -227, -228, -245, -245, -245,
732
- -245, -249, -249, -249, -210, -191, -249, -245, -245, -245,
733
- -197, -245, -245, -245, -18, -15, -15, -15, -15, -245,
734
- -245, -245, -244, -245, -83, -249, -153, -181, -190, -185,
735
- -85, -229, -236, -237, -238, -202, -245, -245, -245, -223,
736
- -223, -235, -245, -235, -235, -235, -249, -245, -249, -245,
737
- -193, -194, -195, -196, -198, -199, -200, -245, -245, -245,
738
- -245, -249, -158, -159, -160, -152, -249, -245, -211, -219,
739
- -214, -221, -217, -249, -224, -226, -230, -235, -231, -232,
740
- -234, -86, -249, -249, -207, -151, -141, -141, -245, -141,
741
- -249, -245, -154, -209, -245, -233, -249, -87, -249, -23,
742
- -149, -28, -34, -30, -33, -61, -243, -157, -220, -249,
743
- -34, -245, -249, -143, -146, -150, -34, -245, -17, -245,
744
- -245, -17, -249, -20, -21, -17, -24, -142, -149, -249,
745
- -147, -148, -17, -29, -75, -27, -35, -36, -37, -38,
746
- -39, -40, -41, -42, -43, -44, -45, -249, -249, -249,
747
- -31, -249, -60, -62, -63, -64, -65, -75, -34, -22,
748
- -245, -144, -145, -26, -46, -46, -46, -245, -245, -245,
749
- -72, -249, -245, -245, -249, -32, -17, -249, -249, -249,
750
- -249, -249, -66, -68, -70, -73, -249, -76, -90, -91,
751
- -92, -93, -94, -95, -96, -97, -98, -101, -102, -103,
752
- -104, -105, -106, -107, -133, -249, -57, -58, -249, -19,
753
- -25, -47, -245, -54, -245, -54, -245, -54, -245, -245,
754
- -245, -77, -99, -100, -249, -155, -245, -48, -249, -249,
755
- -50, -249, -52, -249, -249, -249, -249, -249, -249, -249,
756
- -249, -59, -245, -55, -249, -245, -245, -67, -69, -71,
757
- -16, -88, -249, -78, -79, -249, -49, -56, -51, -53,
758
- -74, -80, -81, -89, -249, -16, -156, -82 ]
712
+ -245, -245, -241, -6, -15, -245, -4, -157, -160, -161,
713
+ -162, -163, -164, -165, -166, -167, -168, -169, -170, -171,
714
+ -172, -173, -174, -175, -176, -241, -241, -245, -80, -184,
715
+ -245, -245, -242, -244, -16, -4, -147, 416, -1, -5,
716
+ -241, -241, -183, -241, -185, -178, -245, -245, -241, -241,
717
+ -182, -245, -204, -241, -104, -105, -106, -107, -108, -109,
718
+ -110, -111, -112, -113, -114, -115, -116, -117, -118, -119,
719
+ -120, -121, -122, -123, -124, -125, -126, -127, -128, -129,
720
+ -130, -131, -132, -133, -134, -135, -136, -245, -188, -245,
721
+ -245, -245, -241, -245, -245, -245, -199, -200, -201, -202,
722
+ -235, -236, -237, -238, -243, -2, -7, -8, -9, -10,
723
+ -11, -12, -13, -16, -245, -245, -245, -245, -3, -80,
724
+ -245, -158, -159, -245, -179, -241, -180, -245, -245, -245,
725
+ -170, -160, -164, -171, -172, -161, -162, -165, -166, -169,
726
+ -163, -115, -167, -231, -197, -245, -208, -209, -211, -212,
727
+ -214, -215, -218, -221, -223, -224, -241, -241, -241, -241,
728
+ -245, -245, -245, -206, -187, -245, -241, -241, -241, -193,
729
+ -241, -241, -241, -17, -14, -14, -14, -241, -241, -241,
730
+ -240, -241, -79, -245, -149, -177, -186, -181, -81, -225,
731
+ -232, -233, -234, -198, -241, -241, -241, -219, -219, -231,
732
+ -241, -231, -231, -231, -245, -241, -245, -241, -189, -190,
733
+ -191, -192, -194, -195, -196, -241, -241, -241, -245, -154,
734
+ -155, -156, -148, -245, -241, -207, -215, -210, -217, -213,
735
+ -245, -220, -222, -226, -231, -227, -228, -230, -82, -245,
736
+ -245, -203, -137, -137, -241, -137, -245, -241, -150, -205,
737
+ -241, -229, -245, -83, -19, -145, -24, -30, -26, -29,
738
+ -57, -239, -153, -216, -30, -241, -245, -139, -142, -146,
739
+ -30, -241, -16, -241, -241, -16, -16, -20, -138, -145,
740
+ -245, -143, -144, -16, -25, -71, -23, -31, -32, -33,
741
+ -34, -35, -36, -37, -38, -39, -40, -41, -245, -245,
742
+ -245, -27, -245, -56, -58, -59, -60, -61, -71, -18,
743
+ -241, -140, -141, -22, -42, -42, -42, -241, -241, -241,
744
+ -68, -245, -241, -241, -245, -28, -245, -245, -245, -245,
745
+ -245, -62, -64, -66, -69, -245, -72, -86, -87, -88,
746
+ -89, -90, -91, -92, -93, -94, -97, -98, -99, -100,
747
+ -101, -102, -103, -129, -245, -53, -54, -245, -21, -43,
748
+ -241, -50, -241, -50, -241, -50, -241, -241, -241, -73,
749
+ -95, -96, -245, -151, -241, -44, -245, -245, -46, -245,
750
+ -48, -245, -245, -245, -245, -245, -245, -245, -245, -55,
751
+ -241, -51, -245, -241, -241, -63, -65, -67, -15, -84,
752
+ -245, -74, -75, -245, -45, -52, -47, -49, -70, -76,
753
+ -77, -85, -245, -15, -152, -78 ]
759
754
 
760
755
  racc_goto_table = [
761
- 6, 93, 117, 46, 92, 128, 120, 115, 164, 87,
762
- 365, 191, 202, 50, 130, 229, 129, 232, 373, 375,
763
- 377, 124, 231, 231, 47, 38, 278, 206, 262, 1,
764
- 273, 420, 34, 388, 285, 391, 35, 393, 122, 123,
765
- 292, 221, 259, 261, 385, 265, 427, 144, 217, 218,
766
- 219, 220, 106, 105, 119, 234, 235, 293, 321, 339,
767
- 340, 341, 282, 400, 270, 276, 310, 314, 236, 315,
768
- 238, 239, 240, 268, 243, 316, 412, 249, 281, 231,
769
- 313, 346, 336, 397, 410, 163, 272, 174, 202, 289,
770
- 170, 185, 230, 100, nil, nil, nil, nil, nil, nil,
771
- nil, nil, nil, 426, 255, 184, nil, nil, nil, nil,
772
- 264, nil, nil, nil, nil, nil, nil, nil, nil, nil,
773
- nil, nil, nil, nil, 188, nil, nil, nil, nil, nil,
774
- nil, nil, nil, nil, nil, nil, nil, 93, nil, 264,
775
- 92, 264, nil, nil, nil, 210, nil, nil, nil, nil,
776
- nil, nil, nil, nil, nil, 201, 203, 204, 205, nil,
777
- nil, 228, nil, nil, 244, 211, 212, 213, nil, 214,
778
- 215, 216, 242, nil, 245, 246, 247, nil, 222, 223,
779
- nil, 224, 253, nil, nil, 129, 129, 129, 250, 342,
780
- 343, 344, nil, nil, 144, 144, 144, nil, nil, nil,
781
- 237, nil, nil, nil, nil, 144, nil, nil, nil, nil,
782
- nil, nil, nil, nil, nil, 258, nil, nil, nil, nil,
783
- nil, nil, nil, nil, nil, nil, nil, nil, 286, nil,
784
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 129,
785
- nil, nil, nil, nil, nil, nil, 117, nil, nil, 267,
786
- nil, nil, 144, 117, 317, nil, nil, nil, 311, nil,
787
- 117, nil, nil, nil, nil, nil, nil, nil, nil, nil,
756
+ 6, 93, 116, 46, 92, 114, 127, 163, 218, 87,
757
+ 354, 200, 50, 228, 228, 129, 128, 361, 363, 365,
758
+ 189, 123, 38, 204, 47, 226, 257, 229, 267, 408,
759
+ 376, 1, 379, 272, 381, 215, 216, 217, 121, 122,
760
+ 276, 231, 232, 373, 415, 34, 283, 143, 35, 106,
761
+ 105, 118, 311, 284, 254, 256, 264, 260, 328, 329,
762
+ 330, 388, 270, 301, 305, 306, 307, 245, 228, 240,
763
+ 275, 304, 335, 385, 400, 259, 233, 398, 235, 236,
764
+ 237, 263, 119, 162, 173, 200, 266, 280, 183, 227,
765
+ 169, 100, nil, nil, nil, nil, nil, nil, nil, nil,
766
+ nil, 414, 259, 182, 259, nil, nil, nil, nil, nil,
767
+ nil, 251, nil, nil, nil, nil, nil, nil, nil, nil,
768
+ nil, nil, nil, 186, nil, nil, nil, nil, nil, nil,
769
+ nil, nil, nil, nil, nil, nil, 93, nil, nil, 92,
770
+ nil, nil, nil, nil, 208, nil, nil, nil, 331, 332,
771
+ 333, nil, nil, nil, 199, 201, 202, 203, nil, nil,
772
+ 225, 241, nil, nil, 209, 210, 211, nil, 212, 213,
773
+ 214, 239, nil, 242, 243, nil, 219, 220, 249, 221,
774
+ nil, nil, nil, 128, 128, 246, nil, nil, nil, nil,
775
+ nil, nil, 143, 143, 143, nil, nil, nil, 234, nil,
776
+ nil, nil, nil, 143, nil, nil, nil, nil, nil, nil,
788
777
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
778
+ nil, nil, nil, 277, nil, nil, nil, nil, nil, nil,
779
+ nil, nil, nil, 128, nil, nil, nil, nil, nil, nil,
780
+ 116, nil, nil, nil, 116, 262, 308, nil, 143, nil,
781
+ nil, 116, 302, nil, nil, nil, nil, nil, nil, nil,
789
782
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
790
- nil, nil, nil, nil, nil, nil, nil, nil, 337, nil,
791
- nil, nil, 363, nil, 117, nil, nil, nil, nil, nil,
792
- 363, 363, 363, 372, 374, 376, nil, nil, nil, nil,
793
783
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
794
- 366, 367, nil, nil, nil, nil, 363, nil, nil, nil,
784
+ nil, nil, nil, nil, nil, nil, nil, nil, 326, nil,
785
+ nil, nil, 352, nil, nil, nil, nil, nil, nil, 352,
786
+ 352, 352, 360, 362, 364, nil, nil, nil, nil, nil,
795
787
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
796
- nil, nil, nil, nil, nil, 363, 394, 395, 396, nil,
797
- nil, nil, nil, nil, nil, nil, nil, nil, 363, nil,
798
- 387, 411, 390, nil, 392, nil, nil, nil, nil, nil,
799
- nil, nil, nil, nil, 401, nil, nil, nil, nil, nil,
800
- nil, nil, nil, nil, nil, 363, nil, nil, nil, nil,
801
- 416, nil, nil, 418, 419 ]
788
+ 355, 356, nil, nil, nil, 352, nil, nil, nil, nil,
789
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
790
+ nil, nil, nil, 352, 382, 383, 384, nil, nil, nil,
791
+ nil, nil, nil, nil, nil, nil, 352, nil, 375, 399,
792
+ 378, nil, 380, nil, nil, nil, nil, nil, nil, nil,
793
+ nil, nil, 389, nil, nil, nil, nil, nil, nil, nil,
794
+ nil, nil, nil, 352, nil, nil, nil, nil, 404, nil,
795
+ nil, 406, 407 ]
802
796
 
803
797
  racc_goto_check = [
804
- 2, 54, 60, 23, 37, 17, 18, 16, 61, 63,
805
- 38, 76, 65, 48, 50, 71, 60, 71, 38, 38,
806
- 38, 23, 66, 66, 2, 3, 20, 52, 25, 1,
807
- 56, 47, 4, 39, 20, 39, 5, 39, 2, 2,
808
- 20, 27, 21, 21, 38, 21, 47, 2, 14, 14,
809
- 14, 14, 6, 3, 3, 72, 72, 25, 56, 36,
810
- 36, 36, 19, 38, 22, 24, 26, 29, 76, 30,
811
- 76, 76, 76, 71, 52, 35, 38, 40, 41, 66,
812
- 42, 43, 20, 45, 46, 51, 55, 16, 65, 58,
813
- 2, 59, 67, 77, nil, nil, nil, nil, nil, nil,
814
- nil, nil, nil, 38, 76, 48, nil, nil, nil, nil,
815
- 27, nil, nil, nil, nil, nil, nil, nil, nil, nil,
816
- nil, nil, nil, nil, 2, nil, nil, nil, nil, nil,
817
- nil, nil, nil, nil, nil, nil, nil, 54, nil, 27,
818
- 37, 27, nil, nil, nil, 63, nil, nil, nil, nil,
819
- nil, nil, nil, nil, nil, 2, 2, 2, 2, nil,
820
- nil, 50, nil, nil, 61, 2, 2, 2, nil, 2,
821
- 2, 2, 50, nil, 17, 17, 17, nil, 2, 2,
822
- nil, 2, 61, nil, nil, 60, 60, 60, 60, 27,
823
- 27, 27, nil, nil, 2, 2, 2, nil, nil, nil,
824
- 2, nil, nil, nil, nil, 2, nil, nil, nil, nil,
825
- nil, nil, nil, nil, nil, 18, nil, nil, nil, nil,
826
- nil, nil, nil, nil, nil, nil, nil, nil, 17, nil,
827
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 60,
828
- nil, nil, nil, nil, nil, nil, 60, nil, nil, 2,
829
- nil, nil, 2, 60, 16, nil, nil, nil, 23, nil,
830
- 60, nil, nil, nil, nil, nil, nil, nil, nil, nil,
798
+ 2, 52, 58, 20, 34, 15, 16, 59, 24, 61,
799
+ 35, 63, 46, 64, 64, 48, 58, 35, 35, 35,
800
+ 74, 20, 3, 50, 2, 69, 22, 69, 54, 44,
801
+ 36, 1, 36, 19, 36, 13, 13, 13, 2, 2,
802
+ 19, 70, 70, 35, 44, 4, 19, 2, 5, 6,
803
+ 3, 3, 54, 22, 17, 17, 18, 17, 33, 33,
804
+ 33, 35, 21, 23, 26, 27, 32, 37, 64, 50,
805
+ 38, 39, 40, 42, 35, 24, 74, 43, 74, 74,
806
+ 74, 69, 45, 49, 15, 63, 53, 56, 57, 65,
807
+ 2, 75, nil, nil, nil, nil, nil, nil, nil, nil,
808
+ nil, 35, 24, 46, 24, nil, nil, nil, nil, nil,
809
+ nil, 74, nil, nil, nil, nil, nil, nil, nil, nil,
810
+ nil, nil, nil, 2, nil, nil, nil, nil, nil, nil,
811
+ nil, nil, nil, nil, nil, nil, 52, nil, nil, 34,
812
+ nil, nil, nil, nil, 61, nil, nil, nil, 24, 24,
813
+ 24, nil, nil, nil, 2, 2, 2, 2, nil, nil,
814
+ 48, 59, nil, nil, 2, 2, 2, nil, 2, 2,
815
+ 2, 48, nil, 16, 16, nil, 2, 2, 59, 2,
816
+ nil, nil, nil, 58, 58, 58, nil, nil, nil, nil,
817
+ nil, nil, 2, 2, 2, nil, nil, nil, 2, nil,
818
+ nil, nil, nil, 2, nil, nil, nil, nil, nil, nil,
819
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
820
+ nil, nil, nil, 16, nil, nil, nil, nil, nil, nil,
821
+ nil, nil, nil, 58, nil, nil, nil, nil, nil, nil,
822
+ 58, nil, nil, nil, 58, 2, 15, nil, 2, nil,
823
+ nil, 58, 20, nil, nil, nil, nil, nil, nil, nil,
831
824
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
832
825
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
833
- nil, nil, nil, nil, nil, nil, nil, nil, 23, nil,
834
- nil, nil, 54, nil, 60, nil, nil, nil, nil, nil,
835
- 54, 54, 54, 37, 37, 37, nil, nil, nil, nil,
826
+ nil, nil, nil, nil, nil, nil, nil, nil, 20, nil,
827
+ nil, nil, 52, nil, nil, nil, nil, nil, nil, 52,
828
+ 52, 52, 34, 34, 34, nil, nil, nil, nil, nil,
836
829
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
837
- 2, 2, nil, nil, nil, nil, 54, nil, nil, nil,
830
+ 2, 2, nil, nil, nil, 52, nil, nil, nil, nil,
838
831
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
839
- nil, nil, nil, nil, nil, 54, 23, 23, 23, nil,
840
- nil, nil, nil, nil, nil, nil, nil, nil, 54, nil,
841
- 2, 37, 2, nil, 2, nil, nil, nil, nil, nil,
842
- nil, nil, nil, nil, 2, nil, nil, nil, nil, nil,
843
- nil, nil, nil, nil, nil, 54, nil, nil, nil, nil,
844
- 2, nil, nil, 2, 2 ]
832
+ nil, nil, nil, 52, 20, 20, 20, nil, nil, nil,
833
+ nil, nil, nil, nil, nil, nil, 52, nil, 2, 34,
834
+ 2, nil, 2, nil, nil, nil, nil, nil, nil, nil,
835
+ nil, nil, 2, nil, nil, nil, nil, nil, nil, nil,
836
+ nil, nil, nil, 52, nil, nil, nil, nil, 2, nil,
837
+ nil, 2, 2 ]
845
838
 
846
839
  racc_goto_pointer = [
847
- nil, 29, -2, 19, 29, 32, 18, nil, nil, nil,
848
- nil, nil, nil, nil, -127, nil, -27, -43, -30, -207,
849
- -236, -204, -195, -22, -196, -220, -213, -138, nil, -214,
850
- -212, nil, nil, nil, nil, -206, -265, -26, -321, -340,
851
- -143, -187, -201, -249, nil, -298, -313, -379, -15, nil,
852
- -35, 34, -134, nil, -29, -174, -230, nil, -185, -30,
853
- -32, -45, nil, -21, nil, -145, -175, -105, nil, nil,
854
- nil, -181, -144, nil, nil, nil, -133, 62 ]
840
+ nil, 31, -2, 16, 42, 44, 15, nil, nil, nil,
841
+ nil, nil, nil, -139, nil, -29, -42, -188, -198, -224,
842
+ -22, -194, -218, -210, -169, nil, -211, -210, nil, nil,
843
+ nil, nil, -209, -256, -26, -311, -331, -150, -190, -204,
844
+ -248, nil, -296, -308, -369, 46, -16, nil, -34, 32,
845
+ -137, nil, -29, -169, -227, nil, -181, -32, -32, -46,
846
+ nil, -21, nil, -145, -182, -106, nil, nil, nil, -169,
847
+ -156, nil, nil, nil, -123, 60 ]
855
848
 
856
849
  racc_goto_default = [
857
- nil, nil, 44, nil, nil, 421, 306, 107, 108, 109,
858
- 110, 111, 112, 113, nil, 36, 294, 116, nil, nil,
859
- nil, nil, nil, nil, nil, nil, 263, 24, 296, 297,
860
- 298, 299, 300, 301, 302, 305, nil, 145, nil, nil,
861
- nil, nil, nil, nil, 330, nil, nil, nil, nil, 51,
862
- nil, nil, 52, 356, 146, nil, nil, 274, nil, nil,
863
- 31, 7, 29, nil, 88, 159, 147, 148, 149, 150,
864
- 151, 152, 153, 154, 155, 156, nil, nil ]
850
+ nil, nil, 44, nil, nil, 409, 297, 107, 108, 109,
851
+ 110, 111, 112, nil, 36, 285, 115, nil, nil, nil,
852
+ nil, nil, nil, 258, 24, 287, 288, 289, 290, 291,
853
+ 292, 293, 296, nil, 144, nil, nil, nil, nil, nil,
854
+ nil, 320, nil, nil, nil, nil, nil, 51, nil, nil,
855
+ 52, 345, 145, nil, nil, 268, nil, nil, 31, 7,
856
+ 29, nil, 88, 158, 146, 147, 148, 149, 150, 151,
857
+ 152, 153, 154, 155, nil, nil ]
865
858
 
866
859
  racc_reduce_table = [
867
860
  0, 0, :racc_error,
@@ -878,245 +871,241 @@ racc_reduce_table = [
878
871
  1, 87, :_reduce_none,
879
872
  1, 87, :_reduce_none,
880
873
  1, 87, :_reduce_none,
881
- 1, 87, :_reduce_none,
874
+ 0, 94, :_reduce_14,
882
875
  0, 95, :_reduce_15,
883
876
  0, 96, :_reduce_16,
884
- 0, 97, :_reduce_17,
885
- 2, 97, :_reduce_18,
886
- 10, 94, :_reduce_19,
887
- 1, 100, :_reduce_none,
888
- 1, 100, :_reduce_none,
889
- 8, 93, :_reduce_22,
890
- 0, 103, :_reduce_23,
891
- 2, 103, :_reduce_24,
892
- 5, 103, :_reduce_25,
893
- 8, 92, :_reduce_26,
894
- 7, 92, :_reduce_27,
895
- 0, 105, :_reduce_28,
896
- 2, 105, :_reduce_29,
897
- 1, 106, :_reduce_30,
898
- 3, 106, :_reduce_31,
899
- 4, 107, :_reduce_32,
900
- 1, 107, :_reduce_33,
901
- 0, 101, :_reduce_34,
902
- 2, 101, :_reduce_35,
903
- 1, 109, :_reduce_none,
904
- 1, 109, :_reduce_none,
905
- 1, 109, :_reduce_none,
906
- 1, 109, :_reduce_none,
907
- 1, 109, :_reduce_none,
908
- 1, 109, :_reduce_none,
909
- 1, 109, :_reduce_42,
910
- 1, 109, :_reduce_43,
911
- 1, 109, :_reduce_none,
912
- 1, 109, :_reduce_none,
913
- 0, 117, :_reduce_46,
914
- 2, 117, :_reduce_47,
915
- 5, 115, :_reduce_48,
916
- 7, 115, :_reduce_49,
917
- 5, 115, :_reduce_50,
918
- 7, 115, :_reduce_51,
919
- 5, 115, :_reduce_52,
920
- 7, 115, :_reduce_53,
921
- 0, 120, :_reduce_54,
922
- 2, 120, :_reduce_55,
923
- 3, 120, :_reduce_56,
924
- 3, 114, :_reduce_57,
925
- 3, 114, :_reduce_58,
926
- 5, 114, :_reduce_59,
927
- 7, 91, :_reduce_60,
928
- 0, 122, :_reduce_61,
929
- 2, 122, :_reduce_62,
930
- 1, 123, :_reduce_63,
931
- 1, 123, :_reduce_64,
932
- 1, 123, :_reduce_none,
933
- 3, 111, :_reduce_66,
934
- 6, 111, :_reduce_67,
935
- 3, 112, :_reduce_68,
936
- 6, 112, :_reduce_69,
937
- 3, 113, :_reduce_70,
938
- 6, 113, :_reduce_71,
939
- 0, 124, :_reduce_72,
940
- 1, 124, :_reduce_73,
941
- 7, 110, :_reduce_74,
942
- 0, 125, :_reduce_none,
943
- 2, 125, :_reduce_76,
944
- 0, 126, :_reduce_77,
945
- 2, 126, :_reduce_78,
946
- 2, 126, :_reduce_79,
947
- 1, 128, :_reduce_80,
948
- 1, 128, :_reduce_81,
949
- 3, 128, :_reduce_82,
950
- 3, 86, :_reduce_83,
951
- 0, 130, :_reduce_84,
952
- 3, 130, :_reduce_85,
953
- 3, 132, :_reduce_86,
954
- 4, 132, :_reduce_87,
955
- 1, 127, :_reduce_none,
956
- 2, 127, :_reduce_89,
957
- 1, 119, :_reduce_none,
958
- 1, 119, :_reduce_none,
959
- 1, 119, :_reduce_none,
960
- 1, 119, :_reduce_none,
961
- 1, 119, :_reduce_none,
962
- 1, 119, :_reduce_none,
963
- 1, 119, :_reduce_none,
964
- 1, 119, :_reduce_none,
965
- 1, 119, :_reduce_none,
966
- 2, 119, :_reduce_99,
967
- 2, 119, :_reduce_100,
968
- 1, 119, :_reduce_none,
969
- 1, 119, :_reduce_none,
970
- 1, 119, :_reduce_none,
971
- 1, 134, :_reduce_none,
972
- 1, 134, :_reduce_none,
973
- 1, 134, :_reduce_none,
974
- 1, 134, :_reduce_none,
975
- 1, 135, :_reduce_none,
976
- 1, 135, :_reduce_none,
977
- 1, 135, :_reduce_none,
978
- 1, 135, :_reduce_none,
979
- 1, 135, :_reduce_none,
980
- 1, 135, :_reduce_none,
981
- 1, 135, :_reduce_none,
982
- 1, 135, :_reduce_none,
983
- 1, 135, :_reduce_none,
984
- 1, 135, :_reduce_none,
985
- 1, 135, :_reduce_none,
986
- 1, 135, :_reduce_none,
987
- 1, 135, :_reduce_none,
988
- 1, 135, :_reduce_none,
989
- 1, 135, :_reduce_none,
990
- 1, 135, :_reduce_none,
991
- 1, 135, :_reduce_none,
992
- 1, 135, :_reduce_none,
993
- 1, 135, :_reduce_none,
994
- 1, 135, :_reduce_none,
995
- 1, 135, :_reduce_none,
996
- 1, 135, :_reduce_none,
997
- 1, 135, :_reduce_none,
998
- 1, 135, :_reduce_none,
999
- 1, 135, :_reduce_none,
1000
- 1, 135, :_reduce_none,
1001
- 1, 135, :_reduce_none,
1002
- 1, 135, :_reduce_none,
1003
- 1, 135, :_reduce_none,
1004
- 1, 135, :_reduce_none,
1005
- 1, 135, :_reduce_none,
1006
- 1, 135, :_reduce_none,
1007
- 1, 135, :_reduce_none,
1008
- 0, 102, :_reduce_141,
1009
- 3, 102, :_reduce_142,
1010
- 1, 136, :_reduce_143,
1011
- 3, 136, :_reduce_144,
1012
- 3, 137, :_reduce_145,
1013
- 0, 139, :_reduce_146,
1014
- 1, 139, :_reduce_147,
1015
- 1, 139, :_reduce_148,
1016
- 0, 138, :_reduce_149,
1017
- 1, 138, :_reduce_150,
1018
- 0, 99, :_reduce_151,
1019
- 3, 99, :_reduce_152,
1020
- 1, 140, :_reduce_153,
1021
- 3, 140, :_reduce_154,
1022
- 4, 116, :_reduce_155,
1023
- 8, 116, :_reduce_156,
1024
- 5, 88, :_reduce_157,
1025
- 3, 89, :_reduce_158,
1026
- 3, 89, :_reduce_159,
1027
- 3, 90, :_reduce_160,
877
+ 2, 96, :_reduce_17,
878
+ 8, 93, :_reduce_18,
879
+ 0, 99, :_reduce_19,
880
+ 2, 99, :_reduce_20,
881
+ 5, 99, :_reduce_21,
882
+ 8, 92, :_reduce_22,
883
+ 7, 92, :_reduce_23,
884
+ 0, 102, :_reduce_24,
885
+ 2, 102, :_reduce_25,
886
+ 1, 103, :_reduce_26,
887
+ 3, 103, :_reduce_27,
888
+ 4, 104, :_reduce_28,
889
+ 1, 104, :_reduce_29,
890
+ 0, 100, :_reduce_30,
891
+ 2, 100, :_reduce_31,
892
+ 1, 106, :_reduce_none,
893
+ 1, 106, :_reduce_none,
894
+ 1, 106, :_reduce_none,
895
+ 1, 106, :_reduce_none,
896
+ 1, 106, :_reduce_none,
897
+ 1, 106, :_reduce_none,
898
+ 1, 106, :_reduce_38,
899
+ 1, 106, :_reduce_39,
900
+ 1, 106, :_reduce_none,
901
+ 1, 106, :_reduce_none,
902
+ 0, 114, :_reduce_42,
903
+ 2, 114, :_reduce_43,
904
+ 5, 112, :_reduce_44,
905
+ 7, 112, :_reduce_45,
906
+ 5, 112, :_reduce_46,
907
+ 7, 112, :_reduce_47,
908
+ 5, 112, :_reduce_48,
909
+ 7, 112, :_reduce_49,
910
+ 0, 117, :_reduce_50,
911
+ 2, 117, :_reduce_51,
912
+ 3, 117, :_reduce_52,
913
+ 3, 111, :_reduce_53,
914
+ 3, 111, :_reduce_54,
915
+ 5, 111, :_reduce_55,
916
+ 7, 91, :_reduce_56,
917
+ 0, 119, :_reduce_57,
918
+ 2, 119, :_reduce_58,
919
+ 1, 120, :_reduce_59,
920
+ 1, 120, :_reduce_60,
921
+ 1, 120, :_reduce_none,
922
+ 3, 108, :_reduce_62,
923
+ 6, 108, :_reduce_63,
924
+ 3, 109, :_reduce_64,
925
+ 6, 109, :_reduce_65,
926
+ 3, 110, :_reduce_66,
927
+ 6, 110, :_reduce_67,
928
+ 0, 121, :_reduce_68,
929
+ 1, 121, :_reduce_69,
930
+ 7, 107, :_reduce_70,
931
+ 0, 122, :_reduce_none,
932
+ 2, 122, :_reduce_72,
933
+ 0, 123, :_reduce_73,
934
+ 2, 123, :_reduce_74,
935
+ 2, 123, :_reduce_75,
936
+ 1, 125, :_reduce_76,
937
+ 1, 125, :_reduce_77,
938
+ 3, 125, :_reduce_78,
939
+ 3, 86, :_reduce_79,
940
+ 0, 128, :_reduce_80,
941
+ 3, 128, :_reduce_81,
942
+ 3, 130, :_reduce_82,
943
+ 4, 130, :_reduce_83,
944
+ 1, 124, :_reduce_none,
945
+ 2, 124, :_reduce_85,
946
+ 1, 116, :_reduce_none,
947
+ 1, 116, :_reduce_none,
948
+ 1, 116, :_reduce_none,
949
+ 1, 116, :_reduce_none,
950
+ 1, 116, :_reduce_none,
951
+ 1, 116, :_reduce_none,
952
+ 1, 116, :_reduce_none,
953
+ 1, 116, :_reduce_none,
954
+ 1, 116, :_reduce_none,
955
+ 2, 116, :_reduce_95,
956
+ 2, 116, :_reduce_96,
957
+ 1, 116, :_reduce_none,
958
+ 1, 116, :_reduce_none,
959
+ 1, 116, :_reduce_none,
960
+ 1, 132, :_reduce_none,
961
+ 1, 132, :_reduce_none,
962
+ 1, 132, :_reduce_none,
963
+ 1, 132, :_reduce_none,
964
+ 1, 133, :_reduce_none,
965
+ 1, 133, :_reduce_none,
966
+ 1, 133, :_reduce_none,
967
+ 1, 133, :_reduce_none,
968
+ 1, 133, :_reduce_none,
969
+ 1, 133, :_reduce_none,
970
+ 1, 133, :_reduce_none,
971
+ 1, 133, :_reduce_none,
972
+ 1, 133, :_reduce_none,
973
+ 1, 133, :_reduce_none,
974
+ 1, 133, :_reduce_none,
975
+ 1, 133, :_reduce_none,
976
+ 1, 133, :_reduce_none,
977
+ 1, 133, :_reduce_none,
978
+ 1, 133, :_reduce_none,
979
+ 1, 133, :_reduce_none,
980
+ 1, 133, :_reduce_none,
981
+ 1, 133, :_reduce_none,
982
+ 1, 133, :_reduce_none,
983
+ 1, 133, :_reduce_none,
984
+ 1, 133, :_reduce_none,
985
+ 1, 133, :_reduce_none,
986
+ 1, 133, :_reduce_none,
987
+ 1, 133, :_reduce_none,
988
+ 1, 133, :_reduce_none,
989
+ 1, 133, :_reduce_none,
990
+ 1, 133, :_reduce_none,
991
+ 1, 133, :_reduce_none,
992
+ 1, 133, :_reduce_none,
993
+ 1, 133, :_reduce_none,
994
+ 1, 133, :_reduce_none,
995
+ 1, 133, :_reduce_none,
996
+ 1, 133, :_reduce_none,
997
+ 0, 98, :_reduce_137,
998
+ 3, 98, :_reduce_138,
999
+ 1, 134, :_reduce_139,
1000
+ 3, 134, :_reduce_140,
1001
+ 3, 135, :_reduce_141,
1002
+ 0, 137, :_reduce_142,
1003
+ 1, 137, :_reduce_143,
1004
+ 1, 137, :_reduce_144,
1005
+ 0, 136, :_reduce_145,
1006
+ 1, 136, :_reduce_146,
1007
+ 0, 126, :_reduce_147,
1008
+ 3, 126, :_reduce_148,
1009
+ 1, 138, :_reduce_149,
1010
+ 3, 138, :_reduce_150,
1011
+ 4, 113, :_reduce_151,
1012
+ 8, 113, :_reduce_152,
1013
+ 5, 88, :_reduce_153,
1014
+ 3, 89, :_reduce_154,
1015
+ 3, 89, :_reduce_155,
1016
+ 3, 90, :_reduce_156,
1028
1017
  1, 83, :_reduce_none,
1029
- 3, 83, :_reduce_162,
1030
- 3, 83, :_reduce_163,
1031
- 1, 142, :_reduce_164,
1032
- 1, 142, :_reduce_165,
1033
- 1, 142, :_reduce_166,
1034
- 1, 142, :_reduce_167,
1035
- 1, 142, :_reduce_168,
1036
- 1, 142, :_reduce_169,
1037
- 1, 142, :_reduce_170,
1038
- 1, 142, :_reduce_171,
1039
- 1, 142, :_reduce_172,
1040
- 1, 142, :_reduce_173,
1041
- 1, 142, :_reduce_174,
1042
- 1, 142, :_reduce_175,
1043
- 1, 142, :_reduce_176,
1044
- 1, 142, :_reduce_177,
1045
- 1, 142, :_reduce_178,
1046
- 1, 142, :_reduce_179,
1047
- 1, 142, :_reduce_180,
1048
- 4, 142, :_reduce_181,
1049
- 2, 142, :_reduce_182,
1050
- 3, 142, :_reduce_183,
1051
- 3, 142, :_reduce_184,
1052
- 4, 142, :_reduce_185,
1053
- 2, 142, :_reduce_186,
1054
- 2, 142, :_reduce_187,
1055
- 1, 142, :_reduce_none,
1056
- 1, 104, :_reduce_189,
1057
- 3, 104, :_reduce_190,
1018
+ 3, 83, :_reduce_158,
1019
+ 3, 83, :_reduce_159,
1020
+ 1, 140, :_reduce_160,
1021
+ 1, 140, :_reduce_161,
1022
+ 1, 140, :_reduce_162,
1023
+ 1, 140, :_reduce_163,
1024
+ 1, 140, :_reduce_164,
1025
+ 1, 140, :_reduce_165,
1026
+ 1, 140, :_reduce_166,
1027
+ 1, 140, :_reduce_167,
1028
+ 1, 140, :_reduce_168,
1029
+ 1, 140, :_reduce_169,
1030
+ 1, 140, :_reduce_170,
1031
+ 1, 140, :_reduce_171,
1032
+ 1, 140, :_reduce_172,
1033
+ 1, 140, :_reduce_173,
1034
+ 1, 140, :_reduce_174,
1035
+ 1, 140, :_reduce_175,
1036
+ 1, 140, :_reduce_176,
1037
+ 4, 140, :_reduce_177,
1038
+ 2, 140, :_reduce_178,
1039
+ 3, 140, :_reduce_179,
1040
+ 3, 140, :_reduce_180,
1041
+ 4, 140, :_reduce_181,
1042
+ 2, 140, :_reduce_182,
1043
+ 2, 140, :_reduce_183,
1044
+ 1, 140, :_reduce_none,
1045
+ 1, 101, :_reduce_185,
1046
+ 3, 101, :_reduce_186,
1047
+ 3, 141, :_reduce_187,
1048
+ 1, 142, :_reduce_188,
1049
+ 3, 142, :_reduce_189,
1050
+ 3, 143, :_reduce_190,
1058
1051
  3, 143, :_reduce_191,
1059
- 1, 144, :_reduce_192,
1060
- 3, 144, :_reduce_193,
1061
- 3, 145, :_reduce_194,
1062
- 3, 145, :_reduce_195,
1063
- 3, 145, :_reduce_196,
1064
- 2, 145, :_reduce_197,
1065
- 3, 145, :_reduce_198,
1066
- 3, 145, :_reduce_199,
1067
- 3, 145, :_reduce_200,
1068
- 1, 146, :_reduce_none,
1069
- 2, 146, :_reduce_202,
1070
- 1, 118, :_reduce_none,
1071
- 1, 118, :_reduce_none,
1072
- 1, 118, :_reduce_none,
1073
- 1, 118, :_reduce_none,
1074
- 4, 129, :_reduce_207,
1052
+ 3, 143, :_reduce_192,
1053
+ 2, 143, :_reduce_193,
1054
+ 3, 143, :_reduce_194,
1055
+ 3, 143, :_reduce_195,
1056
+ 3, 143, :_reduce_196,
1057
+ 1, 144, :_reduce_none,
1058
+ 2, 144, :_reduce_198,
1059
+ 1, 115, :_reduce_none,
1060
+ 1, 115, :_reduce_none,
1061
+ 1, 115, :_reduce_none,
1062
+ 1, 115, :_reduce_none,
1063
+ 4, 127, :_reduce_203,
1064
+ 1, 127, :_reduce_204,
1065
+ 5, 131, :_reduce_205,
1066
+ 2, 131, :_reduce_206,
1067
+ 3, 129, :_reduce_207,
1075
1068
  1, 129, :_reduce_208,
1076
- 5, 133, :_reduce_209,
1077
- 2, 133, :_reduce_210,
1078
- 3, 131, :_reduce_211,
1079
- 1, 131, :_reduce_212,
1080
- 1, 131, :_reduce_none,
1081
- 3, 148, :_reduce_214,
1082
- 1, 148, :_reduce_215,
1069
+ 1, 129, :_reduce_none,
1070
+ 3, 146, :_reduce_210,
1071
+ 1, 146, :_reduce_211,
1072
+ 1, 146, :_reduce_none,
1073
+ 3, 148, :_reduce_213,
1074
+ 1, 148, :_reduce_214,
1083
1075
  1, 148, :_reduce_none,
1084
- 3, 150, :_reduce_217,
1085
- 1, 150, :_reduce_218,
1076
+ 3, 150, :_reduce_216,
1077
+ 1, 150, :_reduce_217,
1086
1078
  1, 150, :_reduce_none,
1087
- 3, 152, :_reduce_220,
1088
- 1, 152, :_reduce_221,
1089
- 1, 152, :_reduce_none,
1090
- 0, 153, :_reduce_223,
1091
- 3, 153, :_reduce_224,
1092
- 1, 153, :_reduce_225,
1093
- 3, 153, :_reduce_226,
1094
- 1, 153, :_reduce_227,
1095
- 1, 153, :_reduce_228,
1096
- 2, 147, :_reduce_229,
1097
- 3, 149, :_reduce_230,
1098
- 3, 151, :_reduce_231,
1099
- 3, 154, :_reduce_232,
1100
- 4, 155, :_reduce_233,
1101
- 3, 156, :_reduce_234,
1102
- 0, 157, :_reduce_none,
1103
- 1, 157, :_reduce_none,
1104
- 1, 157, :_reduce_none,
1105
- 1, 157, :_reduce_none,
1106
- 2, 108, :_reduce_239,
1107
- 1, 158, :_reduce_none,
1108
- 1, 158, :_reduce_none,
1109
- 1, 158, :_reduce_none,
1110
- 2, 121, :_reduce_243,
1111
- 2, 98, :_reduce_244,
1112
- 0, 141, :_reduce_245,
1113
- 1, 141, :_reduce_246,
1114
- 2, 141, :_reduce_247,
1115
- 1, 141, :_reduce_248 ]
1116
-
1117
- racc_reduce_n = 249
1118
-
1119
- racc_shift_n = 428
1079
+ 0, 151, :_reduce_219,
1080
+ 3, 151, :_reduce_220,
1081
+ 1, 151, :_reduce_221,
1082
+ 3, 151, :_reduce_222,
1083
+ 1, 151, :_reduce_223,
1084
+ 1, 151, :_reduce_224,
1085
+ 2, 145, :_reduce_225,
1086
+ 3, 147, :_reduce_226,
1087
+ 3, 149, :_reduce_227,
1088
+ 3, 152, :_reduce_228,
1089
+ 4, 153, :_reduce_229,
1090
+ 3, 154, :_reduce_230,
1091
+ 0, 155, :_reduce_none,
1092
+ 1, 155, :_reduce_none,
1093
+ 1, 155, :_reduce_none,
1094
+ 1, 155, :_reduce_none,
1095
+ 2, 105, :_reduce_235,
1096
+ 1, 156, :_reduce_none,
1097
+ 1, 156, :_reduce_none,
1098
+ 1, 156, :_reduce_none,
1099
+ 2, 118, :_reduce_239,
1100
+ 2, 97, :_reduce_240,
1101
+ 0, 139, :_reduce_241,
1102
+ 1, 139, :_reduce_242,
1103
+ 2, 139, :_reduce_243,
1104
+ 1, 139, :_reduce_244 ]
1105
+
1106
+ racc_reduce_n = 245
1107
+
1108
+ racc_shift_n = 416
1120
1109
 
1121
1110
  racc_token_table = {
1122
1111
  false => 0,
@@ -1316,16 +1305,13 @@ Racc_token_to_s_table = [
1316
1305
  "interface_decl",
1317
1306
  "module_decl",
1318
1307
  "class_decl",
1319
- "extension_decl",
1320
1308
  "start_new_scope",
1321
1309
  "start_merged_scope",
1322
1310
  "annotations",
1323
1311
  "class_name",
1324
- "type_params",
1325
- "extension_name",
1326
- "class_members",
1327
1312
  "module_type_params",
1328
1313
  "super_class",
1314
+ "class_members",
1329
1315
  "type_list",
1330
1316
  "colon_module_self_types",
1331
1317
  "module_self_types",
@@ -1351,6 +1337,7 @@ Racc_token_to_s_table = [
1351
1337
  "method_kind",
1352
1338
  "def_name",
1353
1339
  "method_types",
1340
+ "type_params",
1354
1341
  "proc_type",
1355
1342
  "params_opt",
1356
1343
  "params",
@@ -1443,62 +1430,37 @@ module_eval(<<'.,.,', 'parser.y', 42)
1443
1430
 
1444
1431
  # reduce 13 omitted
1445
1432
 
1446
- # reduce 14 omitted
1447
-
1448
- module_eval(<<'.,.,', 'parser.y', 54)
1449
- def _reduce_15(val, _values, result)
1433
+ module_eval(<<'.,.,', 'parser.y', 53)
1434
+ def _reduce_14(val, _values, result)
1450
1435
  start_new_variables_scope
1451
1436
  result
1452
1437
  end
1453
1438
  .,.,
1454
1439
 
1455
- module_eval(<<'.,.,', 'parser.y', 55)
1456
- def _reduce_16(val, _values, result)
1440
+ module_eval(<<'.,.,', 'parser.y', 54)
1441
+ def _reduce_15(val, _values, result)
1457
1442
  start_merged_variables_scope
1458
1443
  result
1459
1444
  end
1460
1445
  .,.,
1461
1446
 
1462
- module_eval(<<'.,.,', 'parser.y', 58)
1463
- def _reduce_17(val, _values, result)
1447
+ module_eval(<<'.,.,', 'parser.y', 57)
1448
+ def _reduce_16(val, _values, result)
1464
1449
  result = []
1465
1450
  result
1466
1451
  end
1467
1452
  .,.,
1468
1453
 
1469
- module_eval(<<'.,.,', 'parser.y', 60)
1470
- def _reduce_18(val, _values, result)
1454
+ module_eval(<<'.,.,', 'parser.y', 59)
1455
+ def _reduce_17(val, _values, result)
1471
1456
  result = val[1].unshift(Annotation.new(string: val[0].value, location: val[0].location))
1472
1457
 
1473
1458
  result
1474
1459
  end
1475
1460
  .,.,
1476
1461
 
1477
- module_eval(<<'.,.,', 'parser.y', 65)
1478
- def _reduce_19(val, _values, result)
1479
- reset_variable_scope
1480
-
1481
- location = val[1].location + val[9].location
1482
- result = Declarations::Extension.new(
1483
- name: val[3].value,
1484
- type_params: val[4]&.value || [],
1485
- extension_name: val[6].value.to_sym,
1486
- members: val[8],
1487
- annotations: val[0],
1488
- location: location,
1489
- comment: leading_comment(val[0].first&.location || location)
1490
- )
1491
-
1492
- result
1493
- end
1494
- .,.,
1495
-
1496
- # reduce 20 omitted
1497
-
1498
- # reduce 21 omitted
1499
-
1500
- module_eval(<<'.,.,', 'parser.y', 83)
1501
- def _reduce_22(val, _values, result)
1462
+ module_eval(<<'.,.,', 'parser.y', 64)
1463
+ def _reduce_18(val, _values, result)
1502
1464
  reset_variable_scope
1503
1465
 
1504
1466
  location = val[1].location + val[7].location
@@ -1516,15 +1478,15 @@ module_eval(<<'.,.,', 'parser.y', 83)
1516
1478
  end
1517
1479
  .,.,
1518
1480
 
1519
- module_eval(<<'.,.,', 'parser.y', 98)
1520
- def _reduce_23(val, _values, result)
1481
+ module_eval(<<'.,.,', 'parser.y', 79)
1482
+ def _reduce_19(val, _values, result)
1521
1483
  result = nil
1522
1484
  result
1523
1485
  end
1524
1486
  .,.,
1525
1487
 
1526
- module_eval(<<'.,.,', 'parser.y', 100)
1527
- def _reduce_24(val, _values, result)
1488
+ module_eval(<<'.,.,', 'parser.y', 81)
1489
+ def _reduce_20(val, _values, result)
1528
1490
  result = Declarations::Class::Super.new(name: val[1].value,
1529
1491
  args: [],
1530
1492
  location: val[1].location)
@@ -1533,8 +1495,8 @@ module_eval(<<'.,.,', 'parser.y', 100)
1533
1495
  end
1534
1496
  .,.,
1535
1497
 
1536
- module_eval(<<'.,.,', 'parser.y', 105)
1537
- def _reduce_25(val, _values, result)
1498
+ module_eval(<<'.,.,', 'parser.y', 86)
1499
+ def _reduce_21(val, _values, result)
1538
1500
  result = Declarations::Class::Super.new(name: val[1].value,
1539
1501
  args: val[3],
1540
1502
  location: val[1].location + val[4].location)
@@ -1543,8 +1505,8 @@ module_eval(<<'.,.,', 'parser.y', 105)
1543
1505
  end
1544
1506
  .,.,
1545
1507
 
1546
- module_eval(<<'.,.,', 'parser.y', 112)
1547
- def _reduce_26(val, _values, result)
1508
+ module_eval(<<'.,.,', 'parser.y', 93)
1509
+ def _reduce_22(val, _values, result)
1548
1510
  reset_variable_scope
1549
1511
 
1550
1512
  location = val[1].location + val[7].location
@@ -1562,8 +1524,8 @@ module_eval(<<'.,.,', 'parser.y', 112)
1562
1524
  end
1563
1525
  .,.,
1564
1526
 
1565
- module_eval(<<'.,.,', 'parser.y', 126)
1566
- def _reduce_27(val, _values, result)
1527
+ module_eval(<<'.,.,', 'parser.y', 107)
1528
+ def _reduce_23(val, _values, result)
1567
1529
  reset_variable_scope
1568
1530
 
1569
1531
  location = val[1].location + val[6].location
@@ -1581,39 +1543,39 @@ module_eval(<<'.,.,', 'parser.y', 126)
1581
1543
  end
1582
1544
  .,.,
1583
1545
 
1584
- module_eval(<<'.,.,', 'parser.y', 141)
1585
- def _reduce_28(val, _values, result)
1546
+ module_eval(<<'.,.,', 'parser.y', 122)
1547
+ def _reduce_24(val, _values, result)
1586
1548
  result = []
1587
1549
  result
1588
1550
  end
1589
1551
  .,.,
1590
1552
 
1591
- module_eval(<<'.,.,', 'parser.y', 143)
1592
- def _reduce_29(val, _values, result)
1553
+ module_eval(<<'.,.,', 'parser.y', 124)
1554
+ def _reduce_25(val, _values, result)
1593
1555
  result = val[1]
1594
1556
 
1595
1557
  result
1596
1558
  end
1597
1559
  .,.,
1598
1560
 
1599
- module_eval(<<'.,.,', 'parser.y', 148)
1600
- def _reduce_30(val, _values, result)
1561
+ module_eval(<<'.,.,', 'parser.y', 129)
1562
+ def _reduce_26(val, _values, result)
1601
1563
  result = [val[0]]
1602
1564
 
1603
1565
  result
1604
1566
  end
1605
1567
  .,.,
1606
1568
 
1607
- module_eval(<<'.,.,', 'parser.y', 151)
1608
- def _reduce_31(val, _values, result)
1569
+ module_eval(<<'.,.,', 'parser.y', 132)
1570
+ def _reduce_27(val, _values, result)
1609
1571
  result = val[0].push(val[2])
1610
1572
 
1611
1573
  result
1612
1574
  end
1613
1575
  .,.,
1614
1576
 
1615
- module_eval(<<'.,.,', 'parser.y', 156)
1616
- def _reduce_32(val, _values, result)
1577
+ module_eval(<<'.,.,', 'parser.y', 137)
1578
+ def _reduce_28(val, _values, result)
1617
1579
  name = val[0].value
1618
1580
  args = val[2]
1619
1581
  location = val[0].location + val[3].location
@@ -1631,8 +1593,8 @@ module_eval(<<'.,.,', 'parser.y', 156)
1631
1593
  end
1632
1594
  .,.,
1633
1595
 
1634
- module_eval(<<'.,.,', 'parser.y', 170)
1635
- def _reduce_33(val, _values, result)
1596
+ module_eval(<<'.,.,', 'parser.y', 151)
1597
+ def _reduce_29(val, _values, result)
1636
1598
  name = val[0].value
1637
1599
  args = []
1638
1600
  location = val[0].location
@@ -1650,69 +1612,69 @@ module_eval(<<'.,.,', 'parser.y', 170)
1650
1612
  end
1651
1613
  .,.,
1652
1614
 
1653
- module_eval(<<'.,.,', 'parser.y', 185)
1654
- def _reduce_34(val, _values, result)
1615
+ module_eval(<<'.,.,', 'parser.y', 166)
1616
+ def _reduce_30(val, _values, result)
1655
1617
  result = []
1656
1618
  result
1657
1619
  end
1658
1620
  .,.,
1659
1621
 
1660
- module_eval(<<'.,.,', 'parser.y', 187)
1661
- def _reduce_35(val, _values, result)
1622
+ module_eval(<<'.,.,', 'parser.y', 168)
1623
+ def _reduce_31(val, _values, result)
1662
1624
  result = val[0].push(val[1])
1663
1625
 
1664
1626
  result
1665
1627
  end
1666
1628
  .,.,
1667
1629
 
1668
- # reduce 36 omitted
1630
+ # reduce 32 omitted
1669
1631
 
1670
- # reduce 37 omitted
1632
+ # reduce 33 omitted
1671
1633
 
1672
- # reduce 38 omitted
1634
+ # reduce 34 omitted
1673
1635
 
1674
- # reduce 39 omitted
1636
+ # reduce 35 omitted
1675
1637
 
1676
- # reduce 40 omitted
1638
+ # reduce 36 omitted
1677
1639
 
1678
- # reduce 41 omitted
1640
+ # reduce 37 omitted
1679
1641
 
1680
- module_eval(<<'.,.,', 'parser.y', 198)
1681
- def _reduce_42(val, _values, result)
1642
+ module_eval(<<'.,.,', 'parser.y', 179)
1643
+ def _reduce_38(val, _values, result)
1682
1644
  result = Members::Public.new(location: val[0].location)
1683
1645
 
1684
1646
  result
1685
1647
  end
1686
1648
  .,.,
1687
1649
 
1688
- module_eval(<<'.,.,', 'parser.y', 201)
1689
- def _reduce_43(val, _values, result)
1650
+ module_eval(<<'.,.,', 'parser.y', 182)
1651
+ def _reduce_39(val, _values, result)
1690
1652
  result = Members::Private.new(location: val[0].location)
1691
1653
 
1692
1654
  result
1693
1655
  end
1694
1656
  .,.,
1695
1657
 
1696
- # reduce 44 omitted
1658
+ # reduce 40 omitted
1697
1659
 
1698
- # reduce 45 omitted
1660
+ # reduce 41 omitted
1699
1661
 
1700
- module_eval(<<'.,.,', 'parser.y', 207)
1701
- def _reduce_46(val, _values, result)
1662
+ module_eval(<<'.,.,', 'parser.y', 188)
1663
+ def _reduce_42(val, _values, result)
1702
1664
  result = :instance
1703
1665
  result
1704
1666
  end
1705
1667
  .,.,
1706
1668
 
1707
- module_eval(<<'.,.,', 'parser.y', 208)
1708
- def _reduce_47(val, _values, result)
1669
+ module_eval(<<'.,.,', 'parser.y', 189)
1670
+ def _reduce_43(val, _values, result)
1709
1671
  result = :singleton
1710
1672
  result
1711
1673
  end
1712
1674
  .,.,
1713
1675
 
1714
- module_eval(<<'.,.,', 'parser.y', 212)
1715
- def _reduce_48(val, _values, result)
1676
+ module_eval(<<'.,.,', 'parser.y', 193)
1677
+ def _reduce_44(val, _values, result)
1716
1678
  location = val[1].location + val[4].location
1717
1679
  result = Members::AttrReader.new(name: val[3].value,
1718
1680
  ivar_name: nil,
@@ -1726,8 +1688,8 @@ module_eval(<<'.,.,', 'parser.y', 212)
1726
1688
  end
1727
1689
  .,.,
1728
1690
 
1729
- module_eval(<<'.,.,', 'parser.y', 222)
1730
- def _reduce_49(val, _values, result)
1691
+ module_eval(<<'.,.,', 'parser.y', 203)
1692
+ def _reduce_45(val, _values, result)
1731
1693
  location = val[1].location + val[6].location
1732
1694
  result = Members::AttrReader.new(name: val[3].value.to_sym,
1733
1695
  ivar_name: val[4],
@@ -1741,8 +1703,8 @@ module_eval(<<'.,.,', 'parser.y', 222)
1741
1703
  end
1742
1704
  .,.,
1743
1705
 
1744
- module_eval(<<'.,.,', 'parser.y', 232)
1745
- def _reduce_50(val, _values, result)
1706
+ module_eval(<<'.,.,', 'parser.y', 213)
1707
+ def _reduce_46(val, _values, result)
1746
1708
  location = val[1].location + val[4].location
1747
1709
  result = Members::AttrWriter.new(name: val[3].value,
1748
1710
  ivar_name: nil,
@@ -1756,8 +1718,8 @@ module_eval(<<'.,.,', 'parser.y', 232)
1756
1718
  end
1757
1719
  .,.,
1758
1720
 
1759
- module_eval(<<'.,.,', 'parser.y', 242)
1760
- def _reduce_51(val, _values, result)
1721
+ module_eval(<<'.,.,', 'parser.y', 223)
1722
+ def _reduce_47(val, _values, result)
1761
1723
  location = val[1].location + val[6].location
1762
1724
  result = Members::AttrWriter.new(name: val[3].value.to_sym,
1763
1725
  ivar_name: val[4],
@@ -1771,8 +1733,8 @@ module_eval(<<'.,.,', 'parser.y', 242)
1771
1733
  end
1772
1734
  .,.,
1773
1735
 
1774
- module_eval(<<'.,.,', 'parser.y', 252)
1775
- def _reduce_52(val, _values, result)
1736
+ module_eval(<<'.,.,', 'parser.y', 233)
1737
+ def _reduce_48(val, _values, result)
1776
1738
  location = val[1].location + val[4].location
1777
1739
  result = Members::AttrAccessor.new(name: val[3].value,
1778
1740
  ivar_name: nil,
@@ -1786,8 +1748,8 @@ module_eval(<<'.,.,', 'parser.y', 252)
1786
1748
  end
1787
1749
  .,.,
1788
1750
 
1789
- module_eval(<<'.,.,', 'parser.y', 262)
1790
- def _reduce_53(val, _values, result)
1751
+ module_eval(<<'.,.,', 'parser.y', 243)
1752
+ def _reduce_49(val, _values, result)
1791
1753
  location = val[1].location + val[6].location
1792
1754
  result = Members::AttrAccessor.new(name: val[3].value.to_sym,
1793
1755
  ivar_name: val[4],
@@ -1801,29 +1763,29 @@ module_eval(<<'.,.,', 'parser.y', 262)
1801
1763
  end
1802
1764
  .,.,
1803
1765
 
1804
- module_eval(<<'.,.,', 'parser.y', 273)
1805
- def _reduce_54(val, _values, result)
1766
+ module_eval(<<'.,.,', 'parser.y', 254)
1767
+ def _reduce_50(val, _values, result)
1806
1768
  result = nil
1807
1769
  result
1808
1770
  end
1809
1771
  .,.,
1810
1772
 
1811
- module_eval(<<'.,.,', 'parser.y', 274)
1812
- def _reduce_55(val, _values, result)
1773
+ module_eval(<<'.,.,', 'parser.y', 255)
1774
+ def _reduce_51(val, _values, result)
1813
1775
  result = false
1814
1776
  result
1815
1777
  end
1816
1778
  .,.,
1817
1779
 
1818
- module_eval(<<'.,.,', 'parser.y', 275)
1819
- def _reduce_56(val, _values, result)
1780
+ module_eval(<<'.,.,', 'parser.y', 256)
1781
+ def _reduce_52(val, _values, result)
1820
1782
  result = val[1].value
1821
1783
  result
1822
1784
  end
1823
1785
  .,.,
1824
1786
 
1825
- module_eval(<<'.,.,', 'parser.y', 279)
1826
- def _reduce_57(val, _values, result)
1787
+ module_eval(<<'.,.,', 'parser.y', 260)
1788
+ def _reduce_53(val, _values, result)
1827
1789
  location = val[0].location + val[2].location
1828
1790
  result = Members::InstanceVariable.new(
1829
1791
  name: val[0].value,
@@ -1836,8 +1798,8 @@ module_eval(<<'.,.,', 'parser.y', 279)
1836
1798
  end
1837
1799
  .,.,
1838
1800
 
1839
- module_eval(<<'.,.,', 'parser.y', 288)
1840
- def _reduce_58(val, _values, result)
1801
+ module_eval(<<'.,.,', 'parser.y', 269)
1802
+ def _reduce_54(val, _values, result)
1841
1803
  type = val[2]
1842
1804
 
1843
1805
  if type.is_a?(Types::Variable)
@@ -1860,8 +1822,8 @@ module_eval(<<'.,.,', 'parser.y', 288)
1860
1822
  end
1861
1823
  .,.,
1862
1824
 
1863
- module_eval(<<'.,.,', 'parser.y', 307)
1864
- def _reduce_59(val, _values, result)
1825
+ module_eval(<<'.,.,', 'parser.y', 288)
1826
+ def _reduce_55(val, _values, result)
1865
1827
  type = val[4]
1866
1828
 
1867
1829
  if type.is_a?(Types::Variable)
@@ -1884,8 +1846,8 @@ module_eval(<<'.,.,', 'parser.y', 307)
1884
1846
  end
1885
1847
  .,.,
1886
1848
 
1887
- module_eval(<<'.,.,', 'parser.y', 328)
1888
- def _reduce_60(val, _values, result)
1849
+ module_eval(<<'.,.,', 'parser.y', 309)
1850
+ def _reduce_56(val, _values, result)
1889
1851
  reset_variable_scope
1890
1852
 
1891
1853
  location = val[1].location + val[6].location
@@ -1902,23 +1864,23 @@ module_eval(<<'.,.,', 'parser.y', 328)
1902
1864
  end
1903
1865
  .,.,
1904
1866
 
1905
- module_eval(<<'.,.,', 'parser.y', 342)
1906
- def _reduce_61(val, _values, result)
1867
+ module_eval(<<'.,.,', 'parser.y', 323)
1868
+ def _reduce_57(val, _values, result)
1907
1869
  result = []
1908
1870
  result
1909
1871
  end
1910
1872
  .,.,
1911
1873
 
1912
- module_eval(<<'.,.,', 'parser.y', 344)
1913
- def _reduce_62(val, _values, result)
1874
+ module_eval(<<'.,.,', 'parser.y', 325)
1875
+ def _reduce_58(val, _values, result)
1914
1876
  result = val[0].push(val[1])
1915
1877
 
1916
1878
  result
1917
1879
  end
1918
1880
  .,.,
1919
1881
 
1920
- module_eval(<<'.,.,', 'parser.y', 349)
1921
- def _reduce_63(val, _values, result)
1882
+ module_eval(<<'.,.,', 'parser.y', 330)
1883
+ def _reduce_59(val, _values, result)
1922
1884
  unless val[0].kind == :instance
1923
1885
  raise SemanticsError.new("Interface cannot have singleton method", subject: val[0], location: val[0].location)
1924
1886
  end
@@ -1933,8 +1895,8 @@ module_eval(<<'.,.,', 'parser.y', 349)
1933
1895
  end
1934
1896
  .,.,
1935
1897
 
1936
- module_eval(<<'.,.,', 'parser.y', 360)
1937
- def _reduce_64(val, _values, result)
1898
+ module_eval(<<'.,.,', 'parser.y', 341)
1899
+ def _reduce_60(val, _values, result)
1938
1900
  unless val[0].name.interface?
1939
1901
  raise SemanticsError.new("Interface should include an interface", subject: val[0], location: val[0].location)
1940
1902
  end
@@ -1945,10 +1907,10 @@ module_eval(<<'.,.,', 'parser.y', 360)
1945
1907
  end
1946
1908
  .,.,
1947
1909
 
1948
- # reduce 65 omitted
1910
+ # reduce 61 omitted
1949
1911
 
1950
- module_eval(<<'.,.,', 'parser.y', 370)
1951
- def _reduce_66(val, _values, result)
1912
+ module_eval(<<'.,.,', 'parser.y', 351)
1913
+ def _reduce_62(val, _values, result)
1952
1914
  if val[2].value.alias?
1953
1915
  raise SemanticsError.new("Should include module or interface", subject: val[2].value, location: val[2].location)
1954
1916
  end
@@ -1963,8 +1925,8 @@ module_eval(<<'.,.,', 'parser.y', 370)
1963
1925
  end
1964
1926
  .,.,
1965
1927
 
1966
- module_eval(<<'.,.,', 'parser.y', 381)
1967
- def _reduce_67(val, _values, result)
1928
+ module_eval(<<'.,.,', 'parser.y', 362)
1929
+ def _reduce_63(val, _values, result)
1968
1930
  if val[2].value.alias?
1969
1931
  raise SemanticsError.new("Should include module or interface", subject: val[2].value, location: val[2].location)
1970
1932
  end
@@ -1979,8 +1941,8 @@ module_eval(<<'.,.,', 'parser.y', 381)
1979
1941
  end
1980
1942
  .,.,
1981
1943
 
1982
- module_eval(<<'.,.,', 'parser.y', 394)
1983
- def _reduce_68(val, _values, result)
1944
+ module_eval(<<'.,.,', 'parser.y', 375)
1945
+ def _reduce_64(val, _values, result)
1984
1946
  if val[2].value.alias?
1985
1947
  raise SemanticsError.new("Should extend module or interface", subject: val[2].value, location: val[2].location)
1986
1948
  end
@@ -1995,8 +1957,8 @@ module_eval(<<'.,.,', 'parser.y', 394)
1995
1957
  end
1996
1958
  .,.,
1997
1959
 
1998
- module_eval(<<'.,.,', 'parser.y', 405)
1999
- def _reduce_69(val, _values, result)
1960
+ module_eval(<<'.,.,', 'parser.y', 386)
1961
+ def _reduce_65(val, _values, result)
2000
1962
  if val[2].value.alias?
2001
1963
  raise SemanticsError.new("Should extend module or interface", subject: val[2].value, location: val[2].location)
2002
1964
  end
@@ -2011,8 +1973,8 @@ module_eval(<<'.,.,', 'parser.y', 405)
2011
1973
  end
2012
1974
  .,.,
2013
1975
 
2014
- module_eval(<<'.,.,', 'parser.y', 418)
2015
- def _reduce_70(val, _values, result)
1976
+ module_eval(<<'.,.,', 'parser.y', 399)
1977
+ def _reduce_66(val, _values, result)
2016
1978
  unless val[2].value.class?
2017
1979
  raise SemanticsError.new("Should prepend module", subject: val[2].value, location: val[2].location)
2018
1980
  end
@@ -2027,8 +1989,8 @@ module_eval(<<'.,.,', 'parser.y', 418)
2027
1989
  end
2028
1990
  .,.,
2029
1991
 
2030
- module_eval(<<'.,.,', 'parser.y', 429)
2031
- def _reduce_71(val, _values, result)
1992
+ module_eval(<<'.,.,', 'parser.y', 410)
1993
+ def _reduce_67(val, _values, result)
2032
1994
  unless val[2].value.class?
2033
1995
  raise SemanticsError.new("Should prepend module", subject: val[2].value, location: val[2].location)
2034
1996
  end
@@ -2043,15 +2005,15 @@ module_eval(<<'.,.,', 'parser.y', 429)
2043
2005
  end
2044
2006
  .,.,
2045
2007
 
2046
- module_eval(<<'.,.,', 'parser.y', 441)
2047
- def _reduce_72(val, _values, result)
2008
+ module_eval(<<'.,.,', 'parser.y', 422)
2009
+ def _reduce_68(val, _values, result)
2048
2010
  result = nil
2049
2011
  result
2050
2012
  end
2051
2013
  .,.,
2052
2014
 
2053
- module_eval(<<'.,.,', 'parser.y', 443)
2054
- def _reduce_73(val, _values, result)
2015
+ module_eval(<<'.,.,', 'parser.y', 424)
2016
+ def _reduce_69(val, _values, result)
2055
2017
  RBS.logger.warn "`overload def` syntax is deprecated. Use `...` syntax instead."
2056
2018
  result = val[0]
2057
2019
 
@@ -2059,8 +2021,8 @@ module_eval(<<'.,.,', 'parser.y', 443)
2059
2021
  end
2060
2022
  .,.,
2061
2023
 
2062
- module_eval(<<'.,.,', 'parser.y', 449)
2063
- def _reduce_74(val, _values, result)
2024
+ module_eval(<<'.,.,', 'parser.y', 430)
2025
+ def _reduce_70(val, _values, result)
2064
2026
  location = val[3].location + val[6].last.location
2065
2027
 
2066
2028
  last_type = val[6].last
@@ -2085,61 +2047,61 @@ module_eval(<<'.,.,', 'parser.y', 449)
2085
2047
  end
2086
2048
  .,.,
2087
2049
 
2088
- # reduce 75 omitted
2050
+ # reduce 71 omitted
2089
2051
 
2090
- module_eval(<<'.,.,', 'parser.y', 472)
2091
- def _reduce_76(val, _values, result)
2052
+ module_eval(<<'.,.,', 'parser.y', 453)
2053
+ def _reduce_72(val, _values, result)
2092
2054
  RBS.logger.warn "`incompatible` method attribute is deprecated and ignored."
2093
2055
 
2094
2056
  result
2095
2057
  end
2096
2058
  .,.,
2097
2059
 
2098
- module_eval(<<'.,.,', 'parser.y', 476)
2099
- def _reduce_77(val, _values, result)
2060
+ module_eval(<<'.,.,', 'parser.y', 457)
2061
+ def _reduce_73(val, _values, result)
2100
2062
  result = :instance
2101
2063
  result
2102
2064
  end
2103
2065
  .,.,
2104
2066
 
2105
- module_eval(<<'.,.,', 'parser.y', 477)
2106
- def _reduce_78(val, _values, result)
2067
+ module_eval(<<'.,.,', 'parser.y', 458)
2068
+ def _reduce_74(val, _values, result)
2107
2069
  result = :singleton
2108
2070
  result
2109
2071
  end
2110
2072
  .,.,
2111
2073
 
2112
- module_eval(<<'.,.,', 'parser.y', 478)
2113
- def _reduce_79(val, _values, result)
2074
+ module_eval(<<'.,.,', 'parser.y', 459)
2075
+ def _reduce_75(val, _values, result)
2114
2076
  result = :singleton_instance
2115
2077
  result
2116
2078
  end
2117
2079
  .,.,
2118
2080
 
2119
- module_eval(<<'.,.,', 'parser.y', 481)
2120
- def _reduce_80(val, _values, result)
2081
+ module_eval(<<'.,.,', 'parser.y', 462)
2082
+ def _reduce_76(val, _values, result)
2121
2083
  result = [val[0]]
2122
2084
  result
2123
2085
  end
2124
2086
  .,.,
2125
2087
 
2126
- module_eval(<<'.,.,', 'parser.y', 482)
2127
- def _reduce_81(val, _values, result)
2088
+ module_eval(<<'.,.,', 'parser.y', 463)
2089
+ def _reduce_77(val, _values, result)
2128
2090
  result = [LocatedValue.new(value: :dot3, location: val[0].location)]
2129
2091
  result
2130
2092
  end
2131
2093
  .,.,
2132
2094
 
2133
- module_eval(<<'.,.,', 'parser.y', 484)
2134
- def _reduce_82(val, _values, result)
2095
+ module_eval(<<'.,.,', 'parser.y', 465)
2096
+ def _reduce_78(val, _values, result)
2135
2097
  result = val[2].unshift(val[0])
2136
2098
 
2137
2099
  result
2138
2100
  end
2139
2101
  .,.,
2140
2102
 
2141
- module_eval(<<'.,.,', 'parser.y', 489)
2142
- def _reduce_83(val, _values, result)
2103
+ module_eval(<<'.,.,', 'parser.y', 470)
2104
+ def _reduce_79(val, _values, result)
2143
2105
  reset_variable_scope
2144
2106
 
2145
2107
  location = (val[1] || val[2]).location + val[2].location
@@ -2156,23 +2118,23 @@ module_eval(<<'.,.,', 'parser.y', 489)
2156
2118
  end
2157
2119
  .,.,
2158
2120
 
2159
- module_eval(<<'.,.,', 'parser.y', 503)
2160
- def _reduce_84(val, _values, result)
2121
+ module_eval(<<'.,.,', 'parser.y', 484)
2122
+ def _reduce_80(val, _values, result)
2161
2123
  result = nil
2162
2124
  result
2163
2125
  end
2164
2126
  .,.,
2165
2127
 
2166
- module_eval(<<'.,.,', 'parser.y', 505)
2167
- def _reduce_85(val, _values, result)
2128
+ module_eval(<<'.,.,', 'parser.y', 486)
2129
+ def _reduce_81(val, _values, result)
2168
2130
  result = LocatedValue.new(value: val[1], location: val[0].location + val[2].location)
2169
2131
 
2170
2132
  result
2171
2133
  end
2172
2134
  .,.,
2173
2135
 
2174
- module_eval(<<'.,.,', 'parser.y', 510)
2175
- def _reduce_86(val, _values, result)
2136
+ module_eval(<<'.,.,', 'parser.y', 491)
2137
+ def _reduce_82(val, _values, result)
2176
2138
  block = Types::Block.new(type: val[1].value, required: true)
2177
2139
  result = LocatedValue.new(value: block, location: val[0].location + val[2].location)
2178
2140
 
@@ -2180,8 +2142,8 @@ module_eval(<<'.,.,', 'parser.y', 510)
2180
2142
  end
2181
2143
  .,.,
2182
2144
 
2183
- module_eval(<<'.,.,', 'parser.y', 514)
2184
- def _reduce_87(val, _values, result)
2145
+ module_eval(<<'.,.,', 'parser.y', 495)
2146
+ def _reduce_83(val, _values, result)
2185
2147
  block = Types::Block.new(type: val[2].value, required: false)
2186
2148
  result = LocatedValue.new(value: block, location: val[0].location + val[3].location)
2187
2149
 
@@ -2189,10 +2151,10 @@ module_eval(<<'.,.,', 'parser.y', 514)
2189
2151
  end
2190
2152
  .,.,
2191
2153
 
2192
- # reduce 88 omitted
2154
+ # reduce 84 omitted
2193
2155
 
2194
- module_eval(<<'.,.,', 'parser.y', 521)
2195
- def _reduce_89(val, _values, result)
2156
+ module_eval(<<'.,.,', 'parser.y', 502)
2157
+ def _reduce_85(val, _values, result)
2196
2158
  result = LocatedValue.new(value: val[0].value.to_sym,
2197
2159
  location: val[0].location + val[1].location)
2198
2160
 
@@ -2200,6 +2162,14 @@ module_eval(<<'.,.,', 'parser.y', 521)
2200
2162
  end
2201
2163
  .,.,
2202
2164
 
2165
+ # reduce 86 omitted
2166
+
2167
+ # reduce 87 omitted
2168
+
2169
+ # reduce 88 omitted
2170
+
2171
+ # reduce 89 omitted
2172
+
2203
2173
  # reduce 90 omitted
2204
2174
 
2205
2175
  # reduce 91 omitted
@@ -2210,16 +2180,8 @@ module_eval(<<'.,.,', 'parser.y', 521)
2210
2180
 
2211
2181
  # reduce 94 omitted
2212
2182
 
2213
- # reduce 95 omitted
2214
-
2215
- # reduce 96 omitted
2216
-
2217
- # reduce 97 omitted
2218
-
2219
- # reduce 98 omitted
2220
-
2221
- module_eval(<<'.,.,', 'parser.y', 530)
2222
- def _reduce_99(val, _values, result)
2183
+ module_eval(<<'.,.,', 'parser.y', 511)
2184
+ def _reduce_95(val, _values, result)
2223
2185
  unless val[0].location.pred?(val[1].location)
2224
2186
  raise SyntaxError.new(token_str: "kQUESTION", error_value: val[1])
2225
2187
  end
@@ -2231,8 +2193,8 @@ module_eval(<<'.,.,', 'parser.y', 530)
2231
2193
  end
2232
2194
  .,.,
2233
2195
 
2234
- module_eval(<<'.,.,', 'parser.y', 538)
2235
- def _reduce_100(val, _values, result)
2196
+ module_eval(<<'.,.,', 'parser.y', 519)
2197
+ def _reduce_96(val, _values, result)
2236
2198
  unless val[0].location.pred?(val[1].location)
2237
2199
  raise SyntaxError.new(token_str: "kEXCLAMATION", error_value: val[1])
2238
2200
  end
@@ -2244,6 +2206,14 @@ module_eval(<<'.,.,', 'parser.y', 538)
2244
2206
  end
2245
2207
  .,.,
2246
2208
 
2209
+ # reduce 97 omitted
2210
+
2211
+ # reduce 98 omitted
2212
+
2213
+ # reduce 99 omitted
2214
+
2215
+ # reduce 100 omitted
2216
+
2247
2217
  # reduce 101 omitted
2248
2218
 
2249
2219
  # reduce 102 omitted
@@ -2316,23 +2286,15 @@ module_eval(<<'.,.,', 'parser.y', 538)
2316
2286
 
2317
2287
  # reduce 136 omitted
2318
2288
 
2319
- # reduce 137 omitted
2320
-
2321
- # reduce 138 omitted
2322
-
2323
- # reduce 139 omitted
2324
-
2325
- # reduce 140 omitted
2326
-
2327
- module_eval(<<'.,.,', 'parser.y', 558)
2328
- def _reduce_141(val, _values, result)
2289
+ module_eval(<<'.,.,', 'parser.y', 539)
2290
+ def _reduce_137(val, _values, result)
2329
2291
  result = nil
2330
2292
  result
2331
2293
  end
2332
2294
  .,.,
2333
2295
 
2334
- module_eval(<<'.,.,', 'parser.y', 560)
2335
- def _reduce_142(val, _values, result)
2296
+ module_eval(<<'.,.,', 'parser.y', 541)
2297
+ def _reduce_138(val, _values, result)
2336
2298
  val[1].each {|p| insert_bound_variable(p.name) }
2337
2299
 
2338
2300
  result = LocatedValue.new(value: val[1], location: val[0].location + val[2].location)
@@ -2341,8 +2303,8 @@ module_eval(<<'.,.,', 'parser.y', 560)
2341
2303
  end
2342
2304
  .,.,
2343
2305
 
2344
- module_eval(<<'.,.,', 'parser.y', 567)
2345
- def _reduce_143(val, _values, result)
2306
+ module_eval(<<'.,.,', 'parser.y', 548)
2307
+ def _reduce_139(val, _values, result)
2346
2308
  result = Declarations::ModuleTypeParams.new()
2347
2309
  result.add(val[0])
2348
2310
 
@@ -2350,16 +2312,16 @@ module_eval(<<'.,.,', 'parser.y', 567)
2350
2312
  end
2351
2313
  .,.,
2352
2314
 
2353
- module_eval(<<'.,.,', 'parser.y', 571)
2354
- def _reduce_144(val, _values, result)
2315
+ module_eval(<<'.,.,', 'parser.y', 552)
2316
+ def _reduce_140(val, _values, result)
2355
2317
  result = val[0].add(val[2])
2356
2318
 
2357
2319
  result
2358
2320
  end
2359
2321
  .,.,
2360
2322
 
2361
- module_eval(<<'.,.,', 'parser.y', 576)
2362
- def _reduce_145(val, _values, result)
2323
+ module_eval(<<'.,.,', 'parser.y', 557)
2324
+ def _reduce_141(val, _values, result)
2363
2325
  result = Declarations::ModuleTypeParams::TypeParam.new(name: val[2].value.to_sym,
2364
2326
  variance: val[1],
2365
2327
  skip_validation: val[0])
@@ -2368,50 +2330,50 @@ module_eval(<<'.,.,', 'parser.y', 576)
2368
2330
  end
2369
2331
  .,.,
2370
2332
 
2371
- module_eval(<<'.,.,', 'parser.y', 582)
2372
- def _reduce_146(val, _values, result)
2333
+ module_eval(<<'.,.,', 'parser.y', 563)
2334
+ def _reduce_142(val, _values, result)
2373
2335
  result = :invariant
2374
2336
  result
2375
2337
  end
2376
2338
  .,.,
2377
2339
 
2378
- module_eval(<<'.,.,', 'parser.y', 583)
2379
- def _reduce_147(val, _values, result)
2340
+ module_eval(<<'.,.,', 'parser.y', 564)
2341
+ def _reduce_143(val, _values, result)
2380
2342
  result = :covariant
2381
2343
  result
2382
2344
  end
2383
2345
  .,.,
2384
2346
 
2385
- module_eval(<<'.,.,', 'parser.y', 584)
2386
- def _reduce_148(val, _values, result)
2347
+ module_eval(<<'.,.,', 'parser.y', 565)
2348
+ def _reduce_144(val, _values, result)
2387
2349
  result = :contravariant
2388
2350
  result
2389
2351
  end
2390
2352
  .,.,
2391
2353
 
2392
- module_eval(<<'.,.,', 'parser.y', 587)
2393
- def _reduce_149(val, _values, result)
2354
+ module_eval(<<'.,.,', 'parser.y', 568)
2355
+ def _reduce_145(val, _values, result)
2394
2356
  result = false
2395
2357
  result
2396
2358
  end
2397
2359
  .,.,
2398
2360
 
2399
- module_eval(<<'.,.,', 'parser.y', 588)
2400
- def _reduce_150(val, _values, result)
2361
+ module_eval(<<'.,.,', 'parser.y', 569)
2362
+ def _reduce_146(val, _values, result)
2401
2363
  result = true
2402
2364
  result
2403
2365
  end
2404
2366
  .,.,
2405
2367
 
2406
- module_eval(<<'.,.,', 'parser.y', 591)
2407
- def _reduce_151(val, _values, result)
2368
+ module_eval(<<'.,.,', 'parser.y', 572)
2369
+ def _reduce_147(val, _values, result)
2408
2370
  result = nil
2409
2371
  result
2410
2372
  end
2411
2373
  .,.,
2412
2374
 
2413
- module_eval(<<'.,.,', 'parser.y', 593)
2414
- def _reduce_152(val, _values, result)
2375
+ module_eval(<<'.,.,', 'parser.y', 574)
2376
+ def _reduce_148(val, _values, result)
2415
2377
  val[1].each {|var| insert_bound_variable(var) }
2416
2378
 
2417
2379
  result = LocatedValue.new(value: val[1],
@@ -2421,24 +2383,24 @@ module_eval(<<'.,.,', 'parser.y', 593)
2421
2383
  end
2422
2384
  .,.,
2423
2385
 
2424
- module_eval(<<'.,.,', 'parser.y', 601)
2425
- def _reduce_153(val, _values, result)
2386
+ module_eval(<<'.,.,', 'parser.y', 582)
2387
+ def _reduce_149(val, _values, result)
2426
2388
  result = [val[0].value.to_sym]
2427
2389
 
2428
2390
  result
2429
2391
  end
2430
2392
  .,.,
2431
2393
 
2432
- module_eval(<<'.,.,', 'parser.y', 604)
2433
- def _reduce_154(val, _values, result)
2394
+ module_eval(<<'.,.,', 'parser.y', 585)
2395
+ def _reduce_150(val, _values, result)
2434
2396
  result = val[0].push(val[2].value.to_sym)
2435
2397
 
2436
2398
  result
2437
2399
  end
2438
2400
  .,.,
2439
2401
 
2440
- module_eval(<<'.,.,', 'parser.y', 609)
2441
- def _reduce_155(val, _values, result)
2402
+ module_eval(<<'.,.,', 'parser.y', 590)
2403
+ def _reduce_151(val, _values, result)
2442
2404
  location = val[1].location + val[3].location
2443
2405
  result = Members::Alias.new(
2444
2406
  new_name: val[2].value.to_sym,
@@ -2453,8 +2415,8 @@ module_eval(<<'.,.,', 'parser.y', 609)
2453
2415
  end
2454
2416
  .,.,
2455
2417
 
2456
- module_eval(<<'.,.,', 'parser.y', 620)
2457
- def _reduce_156(val, _values, result)
2418
+ module_eval(<<'.,.,', 'parser.y', 601)
2419
+ def _reduce_152(val, _values, result)
2458
2420
  location = val[1].location + val[7].location
2459
2421
  result = Members::Alias.new(
2460
2422
  new_name: val[4].value.to_sym,
@@ -2469,8 +2431,8 @@ module_eval(<<'.,.,', 'parser.y', 620)
2469
2431
  end
2470
2432
  .,.,
2471
2433
 
2472
- module_eval(<<'.,.,', 'parser.y', 633)
2473
- def _reduce_157(val, _values, result)
2434
+ module_eval(<<'.,.,', 'parser.y', 614)
2435
+ def _reduce_153(val, _values, result)
2474
2436
  location = val[1].location + val[4].location
2475
2437
  result = Declarations::Alias.new(name: val[2].value,
2476
2438
  type: val[4],
@@ -2482,8 +2444,8 @@ module_eval(<<'.,.,', 'parser.y', 633)
2482
2444
  end
2483
2445
  .,.,
2484
2446
 
2485
- module_eval(<<'.,.,', 'parser.y', 643)
2486
- def _reduce_158(val, _values, result)
2447
+ module_eval(<<'.,.,', 'parser.y', 624)
2448
+ def _reduce_154(val, _values, result)
2487
2449
  location = val[0].location + val[2].location
2488
2450
  result = Declarations::Constant.new(name: val[0].value,
2489
2451
  type: val[2],
@@ -2494,8 +2456,8 @@ module_eval(<<'.,.,', 'parser.y', 643)
2494
2456
  end
2495
2457
  .,.,
2496
2458
 
2497
- module_eval(<<'.,.,', 'parser.y', 650)
2498
- def _reduce_159(val, _values, result)
2459
+ module_eval(<<'.,.,', 'parser.y', 631)
2460
+ def _reduce_155(val, _values, result)
2499
2461
  location = (val[0] || val[1]).location + val[2].location
2500
2462
  name = TypeName.new(name: val[1].value, namespace: val[0]&.value || Namespace.empty)
2501
2463
  result = Declarations::Constant.new(name: name,
@@ -2507,8 +2469,8 @@ module_eval(<<'.,.,', 'parser.y', 650)
2507
2469
  end
2508
2470
  .,.,
2509
2471
 
2510
- module_eval(<<'.,.,', 'parser.y', 660)
2511
- def _reduce_160(val, _values, result)
2472
+ module_eval(<<'.,.,', 'parser.y', 641)
2473
+ def _reduce_156(val, _values, result)
2512
2474
  location = val[0].location + val[2].location
2513
2475
  result = Declarations::Global.new(name: val[0].value.to_sym,
2514
2476
  type: val[2],
@@ -2519,10 +2481,10 @@ module_eval(<<'.,.,', 'parser.y', 660)
2519
2481
  end
2520
2482
  .,.,
2521
2483
 
2522
- # reduce 161 omitted
2484
+ # reduce 157 omitted
2523
2485
 
2524
- module_eval(<<'.,.,', 'parser.y', 670)
2525
- def _reduce_162(val, _values, result)
2486
+ module_eval(<<'.,.,', 'parser.y', 651)
2487
+ def _reduce_158(val, _values, result)
2526
2488
  types = case l = val[0]
2527
2489
  when Types::Union
2528
2490
  l.types + [val[2]]
@@ -2536,8 +2498,8 @@ module_eval(<<'.,.,', 'parser.y', 670)
2536
2498
  end
2537
2499
  .,.,
2538
2500
 
2539
- module_eval(<<'.,.,', 'parser.y', 680)
2540
- def _reduce_163(val, _values, result)
2501
+ module_eval(<<'.,.,', 'parser.y', 661)
2502
+ def _reduce_159(val, _values, result)
2541
2503
  types = case l = val[0]
2542
2504
  when Types::Intersection
2543
2505
  l.types + [val[2]]
@@ -2552,16 +2514,16 @@ module_eval(<<'.,.,', 'parser.y', 680)
2552
2514
  end
2553
2515
  .,.,
2554
2516
 
2555
- module_eval(<<'.,.,', 'parser.y', 693)
2556
- def _reduce_164(val, _values, result)
2517
+ module_eval(<<'.,.,', 'parser.y', 674)
2518
+ def _reduce_160(val, _values, result)
2557
2519
  result = Types::Bases::Void.new(location: val[0].location)
2558
2520
 
2559
2521
  result
2560
2522
  end
2561
2523
  .,.,
2562
2524
 
2563
- module_eval(<<'.,.,', 'parser.y', 696)
2564
- def _reduce_165(val, _values, result)
2525
+ module_eval(<<'.,.,', 'parser.y', 677)
2526
+ def _reduce_161(val, _values, result)
2565
2527
  RBS.logger.warn "`any` type is deprecated. Use `untyped` instead. (#{val[0].location.to_s})"
2566
2528
  result = Types::Bases::Any.new(location: val[0].location)
2567
2529
 
@@ -2569,56 +2531,56 @@ module_eval(<<'.,.,', 'parser.y', 696)
2569
2531
  end
2570
2532
  .,.,
2571
2533
 
2572
- module_eval(<<'.,.,', 'parser.y', 700)
2573
- def _reduce_166(val, _values, result)
2534
+ module_eval(<<'.,.,', 'parser.y', 681)
2535
+ def _reduce_162(val, _values, result)
2574
2536
  result = Types::Bases::Any.new(location: val[0].location)
2575
2537
 
2576
2538
  result
2577
2539
  end
2578
2540
  .,.,
2579
2541
 
2580
- module_eval(<<'.,.,', 'parser.y', 703)
2581
- def _reduce_167(val, _values, result)
2542
+ module_eval(<<'.,.,', 'parser.y', 684)
2543
+ def _reduce_163(val, _values, result)
2582
2544
  result = Types::Bases::Bool.new(location: val[0].location)
2583
2545
 
2584
2546
  result
2585
2547
  end
2586
2548
  .,.,
2587
2549
 
2588
- module_eval(<<'.,.,', 'parser.y', 706)
2589
- def _reduce_168(val, _values, result)
2550
+ module_eval(<<'.,.,', 'parser.y', 687)
2551
+ def _reduce_164(val, _values, result)
2590
2552
  result = Types::Bases::Nil.new(location: val[0].location)
2591
2553
 
2592
2554
  result
2593
2555
  end
2594
2556
  .,.,
2595
2557
 
2596
- module_eval(<<'.,.,', 'parser.y', 709)
2597
- def _reduce_169(val, _values, result)
2558
+ module_eval(<<'.,.,', 'parser.y', 690)
2559
+ def _reduce_165(val, _values, result)
2598
2560
  result = Types::Bases::Top.new(location: val[0].location)
2599
2561
 
2600
2562
  result
2601
2563
  end
2602
2564
  .,.,
2603
2565
 
2604
- module_eval(<<'.,.,', 'parser.y', 712)
2605
- def _reduce_170(val, _values, result)
2566
+ module_eval(<<'.,.,', 'parser.y', 693)
2567
+ def _reduce_166(val, _values, result)
2606
2568
  result = Types::Bases::Bottom.new(location: val[0].location)
2607
2569
 
2608
2570
  result
2609
2571
  end
2610
2572
  .,.,
2611
2573
 
2612
- module_eval(<<'.,.,', 'parser.y', 715)
2613
- def _reduce_171(val, _values, result)
2574
+ module_eval(<<'.,.,', 'parser.y', 696)
2575
+ def _reduce_167(val, _values, result)
2614
2576
  result = Types::Bases::Self.new(location: val[0].location)
2615
2577
 
2616
2578
  result
2617
2579
  end
2618
2580
  .,.,
2619
2581
 
2620
- module_eval(<<'.,.,', 'parser.y', 718)
2621
- def _reduce_172(val, _values, result)
2582
+ module_eval(<<'.,.,', 'parser.y', 699)
2583
+ def _reduce_168(val, _values, result)
2622
2584
  result = Types::Optional.new(type: Types::Bases::Self.new(location: val[0].location),
2623
2585
  location: val[0].location)
2624
2586
 
@@ -2626,64 +2588,64 @@ module_eval(<<'.,.,', 'parser.y', 718)
2626
2588
  end
2627
2589
  .,.,
2628
2590
 
2629
- module_eval(<<'.,.,', 'parser.y', 722)
2630
- def _reduce_173(val, _values, result)
2591
+ module_eval(<<'.,.,', 'parser.y', 703)
2592
+ def _reduce_169(val, _values, result)
2631
2593
  result = Types::Bases::Instance.new(location: val[0].location)
2632
2594
 
2633
2595
  result
2634
2596
  end
2635
2597
  .,.,
2636
2598
 
2637
- module_eval(<<'.,.,', 'parser.y', 725)
2638
- def _reduce_174(val, _values, result)
2599
+ module_eval(<<'.,.,', 'parser.y', 706)
2600
+ def _reduce_170(val, _values, result)
2639
2601
  result = Types::Bases::Class.new(location: val[0].location)
2640
2602
 
2641
2603
  result
2642
2604
  end
2643
2605
  .,.,
2644
2606
 
2645
- module_eval(<<'.,.,', 'parser.y', 728)
2646
- def _reduce_175(val, _values, result)
2607
+ module_eval(<<'.,.,', 'parser.y', 709)
2608
+ def _reduce_171(val, _values, result)
2647
2609
  result = Types::Literal.new(literal: true, location: val[0].location)
2648
2610
 
2649
2611
  result
2650
2612
  end
2651
2613
  .,.,
2652
2614
 
2653
- module_eval(<<'.,.,', 'parser.y', 731)
2654
- def _reduce_176(val, _values, result)
2615
+ module_eval(<<'.,.,', 'parser.y', 712)
2616
+ def _reduce_172(val, _values, result)
2655
2617
  result = Types::Literal.new(literal: false, location: val[0].location)
2656
2618
 
2657
2619
  result
2658
2620
  end
2659
2621
  .,.,
2660
2622
 
2661
- module_eval(<<'.,.,', 'parser.y', 734)
2662
- def _reduce_177(val, _values, result)
2623
+ module_eval(<<'.,.,', 'parser.y', 715)
2624
+ def _reduce_173(val, _values, result)
2663
2625
  result = Types::Literal.new(literal: val[0].value, location: val[0].location)
2664
2626
 
2665
2627
  result
2666
2628
  end
2667
2629
  .,.,
2668
2630
 
2669
- module_eval(<<'.,.,', 'parser.y', 737)
2670
- def _reduce_178(val, _values, result)
2631
+ module_eval(<<'.,.,', 'parser.y', 718)
2632
+ def _reduce_174(val, _values, result)
2671
2633
  result = Types::Literal.new(literal: val[0].value, location: val[0].location)
2672
2634
 
2673
2635
  result
2674
2636
  end
2675
2637
  .,.,
2676
2638
 
2677
- module_eval(<<'.,.,', 'parser.y', 740)
2678
- def _reduce_179(val, _values, result)
2639
+ module_eval(<<'.,.,', 'parser.y', 721)
2640
+ def _reduce_175(val, _values, result)
2679
2641
  result = Types::Literal.new(literal: val[0].value, location: val[0].location)
2680
2642
 
2681
2643
  result
2682
2644
  end
2683
2645
  .,.,
2684
2646
 
2685
- module_eval(<<'.,.,', 'parser.y', 743)
2686
- def _reduce_180(val, _values, result)
2647
+ module_eval(<<'.,.,', 'parser.y', 724)
2648
+ def _reduce_176(val, _values, result)
2687
2649
  name = val[0].value
2688
2650
  args = []
2689
2651
  location = val[0].location
@@ -2705,8 +2667,8 @@ module_eval(<<'.,.,', 'parser.y', 743)
2705
2667
  end
2706
2668
  .,.,
2707
2669
 
2708
- module_eval(<<'.,.,', 'parser.y', 761)
2709
- def _reduce_181(val, _values, result)
2670
+ module_eval(<<'.,.,', 'parser.y', 742)
2671
+ def _reduce_177(val, _values, result)
2710
2672
  name = val[0].value
2711
2673
  args = val[2]
2712
2674
  location = val[0].location + val[3].location
@@ -2727,8 +2689,8 @@ module_eval(<<'.,.,', 'parser.y', 761)
2727
2689
  end
2728
2690
  .,.,
2729
2691
 
2730
- module_eval(<<'.,.,', 'parser.y', 778)
2731
- def _reduce_182(val, _values, result)
2692
+ module_eval(<<'.,.,', 'parser.y', 759)
2693
+ def _reduce_178(val, _values, result)
2732
2694
  location = val[0].location + val[1].location
2733
2695
  result = Types::Tuple.new(types: [], location: location)
2734
2696
 
@@ -2736,8 +2698,8 @@ module_eval(<<'.,.,', 'parser.y', 778)
2736
2698
  end
2737
2699
  .,.,
2738
2700
 
2739
- module_eval(<<'.,.,', 'parser.y', 782)
2740
- def _reduce_183(val, _values, result)
2701
+ module_eval(<<'.,.,', 'parser.y', 763)
2702
+ def _reduce_179(val, _values, result)
2741
2703
  location = val[0].location + val[2].location
2742
2704
  types = val[1]
2743
2705
  result = Types::Tuple.new(types: types, location: location)
@@ -2746,8 +2708,8 @@ module_eval(<<'.,.,', 'parser.y', 782)
2746
2708
  end
2747
2709
  .,.,
2748
2710
 
2749
- module_eval(<<'.,.,', 'parser.y', 787)
2750
- def _reduce_184(val, _values, result)
2711
+ module_eval(<<'.,.,', 'parser.y', 768)
2712
+ def _reduce_180(val, _values, result)
2751
2713
  type = val[1].dup
2752
2714
  type.instance_eval do
2753
2715
  @location = val[0].location + val[2].location
@@ -2758,8 +2720,8 @@ module_eval(<<'.,.,', 'parser.y', 787)
2758
2720
  end
2759
2721
  .,.,
2760
2722
 
2761
- module_eval(<<'.,.,', 'parser.y', 794)
2762
- def _reduce_185(val, _values, result)
2723
+ module_eval(<<'.,.,', 'parser.y', 775)
2724
+ def _reduce_181(val, _values, result)
2763
2725
  result = Types::ClassSingleton.new(name: val[2].value,
2764
2726
  location: val[0].location + val[3].location)
2765
2727
 
@@ -2767,8 +2729,8 @@ module_eval(<<'.,.,', 'parser.y', 794)
2767
2729
  end
2768
2730
  .,.,
2769
2731
 
2770
- module_eval(<<'.,.,', 'parser.y', 798)
2771
- def _reduce_186(val, _values, result)
2732
+ module_eval(<<'.,.,', 'parser.y', 779)
2733
+ def _reduce_182(val, _values, result)
2772
2734
  type, block = val[1].value
2773
2735
  result = Types::Proc.new(type: type, block: block, location: val[0].location + val[1].location)
2774
2736
 
@@ -2776,34 +2738,34 @@ module_eval(<<'.,.,', 'parser.y', 798)
2776
2738
  end
2777
2739
  .,.,
2778
2740
 
2779
- module_eval(<<'.,.,', 'parser.y', 802)
2780
- def _reduce_187(val, _values, result)
2741
+ module_eval(<<'.,.,', 'parser.y', 783)
2742
+ def _reduce_183(val, _values, result)
2781
2743
  result = Types::Optional.new(type: val[0], location: val[0].location + val[1].location)
2782
2744
 
2783
2745
  result
2784
2746
  end
2785
2747
  .,.,
2786
2748
 
2787
- # reduce 188 omitted
2749
+ # reduce 184 omitted
2788
2750
 
2789
- module_eval(<<'.,.,', 'parser.y', 808)
2790
- def _reduce_189(val, _values, result)
2751
+ module_eval(<<'.,.,', 'parser.y', 789)
2752
+ def _reduce_185(val, _values, result)
2791
2753
  result = [val[0]]
2792
2754
 
2793
2755
  result
2794
2756
  end
2795
2757
  .,.,
2796
2758
 
2797
- module_eval(<<'.,.,', 'parser.y', 811)
2798
- def _reduce_190(val, _values, result)
2759
+ module_eval(<<'.,.,', 'parser.y', 792)
2760
+ def _reduce_186(val, _values, result)
2799
2761
  result = val[0] + [val[2]]
2800
2762
 
2801
2763
  result
2802
2764
  end
2803
2765
  .,.,
2804
2766
 
2805
- module_eval(<<'.,.,', 'parser.y', 816)
2806
- def _reduce_191(val, _values, result)
2767
+ module_eval(<<'.,.,', 'parser.y', 797)
2768
+ def _reduce_187(val, _values, result)
2807
2769
  result = Types::Record.new(
2808
2770
  fields: val[1],
2809
2771
  location: val[0].location + val[2].location
@@ -2813,98 +2775,98 @@ module_eval(<<'.,.,', 'parser.y', 816)
2813
2775
  end
2814
2776
  .,.,
2815
2777
 
2816
- module_eval(<<'.,.,', 'parser.y', 824)
2817
- def _reduce_192(val, _values, result)
2778
+ module_eval(<<'.,.,', 'parser.y', 805)
2779
+ def _reduce_188(val, _values, result)
2818
2780
  result = val[0]
2819
2781
 
2820
2782
  result
2821
2783
  end
2822
2784
  .,.,
2823
2785
 
2824
- module_eval(<<'.,.,', 'parser.y', 827)
2825
- def _reduce_193(val, _values, result)
2786
+ module_eval(<<'.,.,', 'parser.y', 808)
2787
+ def _reduce_189(val, _values, result)
2826
2788
  result = val[0].merge!(val[2])
2827
2789
 
2828
2790
  result
2829
2791
  end
2830
2792
  .,.,
2831
2793
 
2832
- module_eval(<<'.,.,', 'parser.y', 832)
2833
- def _reduce_194(val, _values, result)
2794
+ module_eval(<<'.,.,', 'parser.y', 813)
2795
+ def _reduce_190(val, _values, result)
2834
2796
  result = { val[0].value => val[2] }
2835
2797
 
2836
2798
  result
2837
2799
  end
2838
2800
  .,.,
2839
2801
 
2840
- module_eval(<<'.,.,', 'parser.y', 835)
2841
- def _reduce_195(val, _values, result)
2802
+ module_eval(<<'.,.,', 'parser.y', 816)
2803
+ def _reduce_191(val, _values, result)
2842
2804
  result = { val[0].value => val[2] }
2843
2805
 
2844
2806
  result
2845
2807
  end
2846
2808
  .,.,
2847
2809
 
2848
- module_eval(<<'.,.,', 'parser.y', 838)
2849
- def _reduce_196(val, _values, result)
2810
+ module_eval(<<'.,.,', 'parser.y', 819)
2811
+ def _reduce_192(val, _values, result)
2850
2812
  result = { val[0].value => val[2] }
2851
2813
 
2852
2814
  result
2853
2815
  end
2854
2816
  .,.,
2855
2817
 
2856
- module_eval(<<'.,.,', 'parser.y', 841)
2857
- def _reduce_197(val, _values, result)
2818
+ module_eval(<<'.,.,', 'parser.y', 822)
2819
+ def _reduce_193(val, _values, result)
2858
2820
  result = { val[0].value => val[1] }
2859
2821
 
2860
2822
  result
2861
2823
  end
2862
2824
  .,.,
2863
2825
 
2864
- module_eval(<<'.,.,', 'parser.y', 844)
2865
- def _reduce_198(val, _values, result)
2826
+ module_eval(<<'.,.,', 'parser.y', 825)
2827
+ def _reduce_194(val, _values, result)
2866
2828
  result = { val[0].value => val[2] }
2867
2829
 
2868
2830
  result
2869
2831
  end
2870
2832
  .,.,
2871
2833
 
2872
- module_eval(<<'.,.,', 'parser.y', 847)
2873
- def _reduce_199(val, _values, result)
2834
+ module_eval(<<'.,.,', 'parser.y', 828)
2835
+ def _reduce_195(val, _values, result)
2874
2836
  result = { val[0].value => val[2] }
2875
2837
 
2876
2838
  result
2877
2839
  end
2878
2840
  .,.,
2879
2841
 
2880
- module_eval(<<'.,.,', 'parser.y', 850)
2881
- def _reduce_200(val, _values, result)
2842
+ module_eval(<<'.,.,', 'parser.y', 831)
2843
+ def _reduce_196(val, _values, result)
2882
2844
  result = { val[0].value => val[2] }
2883
2845
 
2884
2846
  result
2885
2847
  end
2886
2848
  .,.,
2887
2849
 
2888
- # reduce 201 omitted
2850
+ # reduce 197 omitted
2889
2851
 
2890
- module_eval(<<'.,.,', 'parser.y', 856)
2891
- def _reduce_202(val, _values, result)
2852
+ module_eval(<<'.,.,', 'parser.y', 837)
2853
+ def _reduce_198(val, _values, result)
2892
2854
  result = val[0]
2893
2855
 
2894
2856
  result
2895
2857
  end
2896
2858
  .,.,
2897
2859
 
2898
- # reduce 203 omitted
2860
+ # reduce 199 omitted
2899
2861
 
2900
- # reduce 204 omitted
2862
+ # reduce 200 omitted
2901
2863
 
2902
- # reduce 205 omitted
2864
+ # reduce 201 omitted
2903
2865
 
2904
- # reduce 206 omitted
2866
+ # reduce 202 omitted
2905
2867
 
2906
- module_eval(<<'.,.,', 'parser.y', 863)
2907
- def _reduce_207(val, _values, result)
2868
+ module_eval(<<'.,.,', 'parser.y', 844)
2869
+ def _reduce_203(val, _values, result)
2908
2870
  location = (val[0] || val[1] || val[2]).location + val[3].location
2909
2871
 
2910
2872
  params = val[0]&.value || [[], [], nil, [], {}, {}, nil]
@@ -2928,16 +2890,16 @@ module_eval(<<'.,.,', 'parser.y', 863)
2928
2890
  end
2929
2891
  .,.,
2930
2892
 
2931
- module_eval(<<'.,.,', 'parser.y', 883)
2932
- def _reduce_208(val, _values, result)
2893
+ module_eval(<<'.,.,', 'parser.y', 864)
2894
+ def _reduce_204(val, _values, result)
2933
2895
  result = LocatedValue.new(value: [val[0].value, nil], location: val[0].location)
2934
2896
 
2935
2897
  result
2936
2898
  end
2937
2899
  .,.,
2938
2900
 
2939
- module_eval(<<'.,.,', 'parser.y', 888)
2940
- def _reduce_209(val, _values, result)
2901
+ module_eval(<<'.,.,', 'parser.y', 869)
2902
+ def _reduce_205(val, _values, result)
2941
2903
  location = val[0].location + val[4].location
2942
2904
  type = Types::Function.new(
2943
2905
  required_positionals: val[1][0],
@@ -2956,8 +2918,8 @@ module_eval(<<'.,.,', 'parser.y', 888)
2956
2918
  end
2957
2919
  .,.,
2958
2920
 
2959
- module_eval(<<'.,.,', 'parser.y', 903)
2960
- def _reduce_210(val, _values, result)
2921
+ module_eval(<<'.,.,', 'parser.y', 884)
2922
+ def _reduce_206(val, _values, result)
2961
2923
  location = val[0].location + val[1].location
2962
2924
  type = Types::Function.new(
2963
2925
  required_positionals: [],
@@ -2976,8 +2938,8 @@ module_eval(<<'.,.,', 'parser.y', 903)
2976
2938
  end
2977
2939
  .,.,
2978
2940
 
2979
- module_eval(<<'.,.,', 'parser.y', 920)
2980
- def _reduce_211(val, _values, result)
2941
+ module_eval(<<'.,.,', 'parser.y', 901)
2942
+ def _reduce_207(val, _values, result)
2981
2943
  result = val[2]
2982
2944
  result[0].unshift(val[0])
2983
2945
 
@@ -2985,8 +2947,8 @@ module_eval(<<'.,.,', 'parser.y', 920)
2985
2947
  end
2986
2948
  .,.,
2987
2949
 
2988
- module_eval(<<'.,.,', 'parser.y', 924)
2989
- def _reduce_212(val, _values, result)
2950
+ module_eval(<<'.,.,', 'parser.y', 905)
2951
+ def _reduce_208(val, _values, result)
2990
2952
  result = empty_params_result
2991
2953
  result[0].unshift(val[0])
2992
2954
 
@@ -2994,10 +2956,10 @@ module_eval(<<'.,.,', 'parser.y', 924)
2994
2956
  end
2995
2957
  .,.,
2996
2958
 
2997
- # reduce 213 omitted
2959
+ # reduce 209 omitted
2998
2960
 
2999
- module_eval(<<'.,.,', 'parser.y', 931)
3000
- def _reduce_214(val, _values, result)
2961
+ module_eval(<<'.,.,', 'parser.y', 912)
2962
+ def _reduce_210(val, _values, result)
3001
2963
  result = val[2]
3002
2964
  result[1].unshift(val[0])
3003
2965
 
@@ -3005,8 +2967,8 @@ module_eval(<<'.,.,', 'parser.y', 931)
3005
2967
  end
3006
2968
  .,.,
3007
2969
 
3008
- module_eval(<<'.,.,', 'parser.y', 935)
3009
- def _reduce_215(val, _values, result)
2970
+ module_eval(<<'.,.,', 'parser.y', 916)
2971
+ def _reduce_211(val, _values, result)
3010
2972
  result = empty_params_result
3011
2973
  result[1].unshift(val[0])
3012
2974
 
@@ -3014,10 +2976,10 @@ module_eval(<<'.,.,', 'parser.y', 935)
3014
2976
  end
3015
2977
  .,.,
3016
2978
 
3017
- # reduce 216 omitted
2979
+ # reduce 212 omitted
3018
2980
 
3019
- module_eval(<<'.,.,', 'parser.y', 942)
3020
- def _reduce_217(val, _values, result)
2981
+ module_eval(<<'.,.,', 'parser.y', 923)
2982
+ def _reduce_213(val, _values, result)
3021
2983
  result = val[2]
3022
2984
  result[2] = val[0]
3023
2985
 
@@ -3025,8 +2987,8 @@ module_eval(<<'.,.,', 'parser.y', 942)
3025
2987
  end
3026
2988
  .,.,
3027
2989
 
3028
- module_eval(<<'.,.,', 'parser.y', 946)
3029
- def _reduce_218(val, _values, result)
2990
+ module_eval(<<'.,.,', 'parser.y', 927)
2991
+ def _reduce_214(val, _values, result)
3030
2992
  result = empty_params_result
3031
2993
  result[2] = val[0]
3032
2994
 
@@ -3034,10 +2996,10 @@ module_eval(<<'.,.,', 'parser.y', 946)
3034
2996
  end
3035
2997
  .,.,
3036
2998
 
3037
- # reduce 219 omitted
2999
+ # reduce 215 omitted
3038
3000
 
3039
- module_eval(<<'.,.,', 'parser.y', 953)
3040
- def _reduce_220(val, _values, result)
3001
+ module_eval(<<'.,.,', 'parser.y', 934)
3002
+ def _reduce_216(val, _values, result)
3041
3003
  result = val[2]
3042
3004
  result[3].unshift(val[0])
3043
3005
 
@@ -3045,8 +3007,8 @@ module_eval(<<'.,.,', 'parser.y', 953)
3045
3007
  end
3046
3008
  .,.,
3047
3009
 
3048
- module_eval(<<'.,.,', 'parser.y', 957)
3049
- def _reduce_221(val, _values, result)
3010
+ module_eval(<<'.,.,', 'parser.y', 938)
3011
+ def _reduce_217(val, _values, result)
3050
3012
  result = empty_params_result
3051
3013
  result[3].unshift(val[0])
3052
3014
 
@@ -3054,18 +3016,18 @@ module_eval(<<'.,.,', 'parser.y', 957)
3054
3016
  end
3055
3017
  .,.,
3056
3018
 
3057
- # reduce 222 omitted
3019
+ # reduce 218 omitted
3058
3020
 
3059
- module_eval(<<'.,.,', 'parser.y', 964)
3060
- def _reduce_223(val, _values, result)
3021
+ module_eval(<<'.,.,', 'parser.y', 945)
3022
+ def _reduce_219(val, _values, result)
3061
3023
  result = empty_params_result
3062
3024
 
3063
3025
  result
3064
3026
  end
3065
3027
  .,.,
3066
3028
 
3067
- module_eval(<<'.,.,', 'parser.y', 967)
3068
- def _reduce_224(val, _values, result)
3029
+ module_eval(<<'.,.,', 'parser.y', 948)
3030
+ def _reduce_220(val, _values, result)
3069
3031
  result = val[2]
3070
3032
  result[4].merge!(val[0])
3071
3033
 
@@ -3073,8 +3035,8 @@ module_eval(<<'.,.,', 'parser.y', 967)
3073
3035
  end
3074
3036
  .,.,
3075
3037
 
3076
- module_eval(<<'.,.,', 'parser.y', 971)
3077
- def _reduce_225(val, _values, result)
3038
+ module_eval(<<'.,.,', 'parser.y', 952)
3039
+ def _reduce_221(val, _values, result)
3078
3040
  result = empty_params_result
3079
3041
  result[4].merge!(val[0])
3080
3042
 
@@ -3082,8 +3044,8 @@ module_eval(<<'.,.,', 'parser.y', 971)
3082
3044
  end
3083
3045
  .,.,
3084
3046
 
3085
- module_eval(<<'.,.,', 'parser.y', 975)
3086
- def _reduce_226(val, _values, result)
3047
+ module_eval(<<'.,.,', 'parser.y', 956)
3048
+ def _reduce_222(val, _values, result)
3087
3049
  result = val[2]
3088
3050
  result[5].merge!(val[0])
3089
3051
 
@@ -3091,8 +3053,8 @@ module_eval(<<'.,.,', 'parser.y', 975)
3091
3053
  end
3092
3054
  .,.,
3093
3055
 
3094
- module_eval(<<'.,.,', 'parser.y', 979)
3095
- def _reduce_227(val, _values, result)
3056
+ module_eval(<<'.,.,', 'parser.y', 960)
3057
+ def _reduce_223(val, _values, result)
3096
3058
  result = empty_params_result
3097
3059
  result[5].merge!(val[0])
3098
3060
 
@@ -3100,8 +3062,8 @@ module_eval(<<'.,.,', 'parser.y', 979)
3100
3062
  end
3101
3063
  .,.,
3102
3064
 
3103
- module_eval(<<'.,.,', 'parser.y', 983)
3104
- def _reduce_228(val, _values, result)
3065
+ module_eval(<<'.,.,', 'parser.y', 964)
3066
+ def _reduce_224(val, _values, result)
3105
3067
  result = empty_params_result
3106
3068
  result[6] = val[0]
3107
3069
 
@@ -3109,8 +3071,8 @@ module_eval(<<'.,.,', 'parser.y', 983)
3109
3071
  end
3110
3072
  .,.,
3111
3073
 
3112
- module_eval(<<'.,.,', 'parser.y', 989)
3113
- def _reduce_229(val, _values, result)
3074
+ module_eval(<<'.,.,', 'parser.y', 970)
3075
+ def _reduce_225(val, _values, result)
3114
3076
  result = Types::Function::Param.new(type: val[0],
3115
3077
  name: val[1]&.value&.to_sym)
3116
3078
 
@@ -3118,8 +3080,8 @@ module_eval(<<'.,.,', 'parser.y', 989)
3118
3080
  end
3119
3081
  .,.,
3120
3082
 
3121
- module_eval(<<'.,.,', 'parser.y', 995)
3122
- def _reduce_230(val, _values, result)
3083
+ module_eval(<<'.,.,', 'parser.y', 976)
3084
+ def _reduce_226(val, _values, result)
3123
3085
  result = Types::Function::Param.new(type: val[1],
3124
3086
  name: val[2]&.value&.to_sym)
3125
3087
 
@@ -3127,8 +3089,8 @@ module_eval(<<'.,.,', 'parser.y', 995)
3127
3089
  end
3128
3090
  .,.,
3129
3091
 
3130
- module_eval(<<'.,.,', 'parser.y', 1001)
3131
- def _reduce_231(val, _values, result)
3092
+ module_eval(<<'.,.,', 'parser.y', 982)
3093
+ def _reduce_227(val, _values, result)
3132
3094
  result = Types::Function::Param.new(type: val[1],
3133
3095
  name: val[2]&.value&.to_sym)
3134
3096
 
@@ -3136,8 +3098,8 @@ module_eval(<<'.,.,', 'parser.y', 1001)
3136
3098
  end
3137
3099
  .,.,
3138
3100
 
3139
- module_eval(<<'.,.,', 'parser.y', 1007)
3140
- def _reduce_232(val, _values, result)
3101
+ module_eval(<<'.,.,', 'parser.y', 988)
3102
+ def _reduce_228(val, _values, result)
3141
3103
  param = Types::Function::Param.new(type: val[1],
3142
3104
  name: val[2]&.value&.to_sym)
3143
3105
  result = { val[0].value => param }
@@ -3146,8 +3108,8 @@ module_eval(<<'.,.,', 'parser.y', 1007)
3146
3108
  end
3147
3109
  .,.,
3148
3110
 
3149
- module_eval(<<'.,.,', 'parser.y', 1014)
3150
- def _reduce_233(val, _values, result)
3111
+ module_eval(<<'.,.,', 'parser.y', 995)
3112
+ def _reduce_229(val, _values, result)
3151
3113
  param = Types::Function::Param.new(type: val[2],
3152
3114
  name: val[3]&.value&.to_sym)
3153
3115
  result = { val[1].value => param }
@@ -3156,8 +3118,8 @@ module_eval(<<'.,.,', 'parser.y', 1014)
3156
3118
  end
3157
3119
  .,.,
3158
3120
 
3159
- module_eval(<<'.,.,', 'parser.y', 1021)
3160
- def _reduce_234(val, _values, result)
3121
+ module_eval(<<'.,.,', 'parser.y', 1002)
3122
+ def _reduce_230(val, _values, result)
3161
3123
  result = Types::Function::Param.new(type: val[1],
3162
3124
  name: val[2]&.value&.to_sym)
3163
3125
 
@@ -3165,16 +3127,16 @@ module_eval(<<'.,.,', 'parser.y', 1021)
3165
3127
  end
3166
3128
  .,.,
3167
3129
 
3168
- # reduce 235 omitted
3130
+ # reduce 231 omitted
3169
3131
 
3170
- # reduce 236 omitted
3132
+ # reduce 232 omitted
3171
3133
 
3172
- # reduce 237 omitted
3134
+ # reduce 233 omitted
3173
3135
 
3174
- # reduce 238 omitted
3136
+ # reduce 234 omitted
3175
3137
 
3176
- module_eval(<<'.,.,', 'parser.y', 1030)
3177
- def _reduce_239(val, _values, result)
3138
+ module_eval(<<'.,.,', 'parser.y', 1011)
3139
+ def _reduce_235(val, _values, result)
3178
3140
  namespace = val[0]&.value || Namespace.empty
3179
3141
  name = val[1].value.to_sym
3180
3142
  type_name = TypeName.new(namespace: namespace, name: name)
@@ -3185,14 +3147,14 @@ module_eval(<<'.,.,', 'parser.y', 1030)
3185
3147
  end
3186
3148
  .,.,
3187
3149
 
3188
- # reduce 240 omitted
3150
+ # reduce 236 omitted
3189
3151
 
3190
- # reduce 241 omitted
3152
+ # reduce 237 omitted
3191
3153
 
3192
- # reduce 242 omitted
3154
+ # reduce 238 omitted
3193
3155
 
3194
- module_eval(<<'.,.,', 'parser.y', 1042)
3195
- def _reduce_243(val, _values, result)
3156
+ module_eval(<<'.,.,', 'parser.y', 1023)
3157
+ def _reduce_239(val, _values, result)
3196
3158
  namespace = val[0]&.value || Namespace.empty
3197
3159
  name = val[1].value.to_sym
3198
3160
  type_name = TypeName.new(namespace: namespace, name: name)
@@ -3203,8 +3165,8 @@ module_eval(<<'.,.,', 'parser.y', 1042)
3203
3165
  end
3204
3166
  .,.,
3205
3167
 
3206
- module_eval(<<'.,.,', 'parser.y', 1051)
3207
- def _reduce_244(val, _values, result)
3168
+ module_eval(<<'.,.,', 'parser.y', 1032)
3169
+ def _reduce_240(val, _values, result)
3208
3170
  namespace = val[0]&.value || Namespace.empty
3209
3171
  name = val[1].value.to_sym
3210
3172
  type_name = TypeName.new(namespace: namespace, name: name)
@@ -3215,24 +3177,24 @@ module_eval(<<'.,.,', 'parser.y', 1051)
3215
3177
  end
3216
3178
  .,.,
3217
3179
 
3218
- module_eval(<<'.,.,', 'parser.y', 1060)
3219
- def _reduce_245(val, _values, result)
3180
+ module_eval(<<'.,.,', 'parser.y', 1041)
3181
+ def _reduce_241(val, _values, result)
3220
3182
  result = nil
3221
3183
 
3222
3184
  result
3223
3185
  end
3224
3186
  .,.,
3225
3187
 
3226
- module_eval(<<'.,.,', 'parser.y', 1063)
3227
- def _reduce_246(val, _values, result)
3188
+ module_eval(<<'.,.,', 'parser.y', 1044)
3189
+ def _reduce_242(val, _values, result)
3228
3190
  result = LocatedValue.new(value: Namespace.root, location: val[0].location)
3229
3191
 
3230
3192
  result
3231
3193
  end
3232
3194
  .,.,
3233
3195
 
3234
- module_eval(<<'.,.,', 'parser.y', 1066)
3235
- def _reduce_247(val, _values, result)
3196
+ module_eval(<<'.,.,', 'parser.y', 1047)
3197
+ def _reduce_243(val, _values, result)
3236
3198
  namespace = Namespace.parse(val[1].value).absolute!
3237
3199
  result = LocatedValue.new(value: namespace, location: val[0].location + val[1].location)
3238
3200
 
@@ -3240,8 +3202,8 @@ module_eval(<<'.,.,', 'parser.y', 1066)
3240
3202
  end
3241
3203
  .,.,
3242
3204
 
3243
- module_eval(<<'.,.,', 'parser.y', 1070)
3244
- def _reduce_248(val, _values, result)
3205
+ module_eval(<<'.,.,', 'parser.y', 1051)
3206
+ def _reduce_244(val, _values, result)
3245
3207
  namespace = Namespace.parse(val[0].value)
3246
3208
  result = LocatedValue.new(value: namespace, location: val[0].location)
3247
3209