rbs 1.2.1 → 1.3.3

Sign up to get free protection for your applications and to get access to all the features.
data/docs/stdlib.md CHANGED
@@ -57,7 +57,7 @@ But it will help you to have an overview of the signatures you are trying to wri
57
57
 
58
58
  ### What to do with existing RBS files
59
59
 
60
- Generating prototypes will override everything, so the problem is if there is a RBS files already.
60
+ Generating prototypes will overwrite existing RBS files, which might be undesirable.
61
61
  You can try to find missing parts, or you can start from the scratch.
62
62
 
63
63
  One non-trivial but absolutely better solution is to make a tool:
data/docs/syntax.md CHANGED
@@ -352,9 +352,6 @@ def +: (Float | Integer) -> (Float | Integer)
352
352
  | (Numeric) -> Numeric
353
353
  ```
354
354
 
355
- Method types can end with `super` which means the methods from existing definitions.
356
- This is useful to define an _extension_, which adds a new variation to the existing method preserving the original behavior.
357
-
358
355
  ### Attribute definition
359
356
 
360
357
  Attribute definitions help to define methods and instance variables based on the convention of `attr_reader`, `attr_writer` and `attr_accessor` methods in Ruby.
@@ -774,26 +774,10 @@ module RBS
774
774
  end
775
775
 
776
776
  def try_cache(type_name, cache:, key: type_name)
777
- # @type var cc: Hash[untyped, Definition | false | nil]
777
+ # @type var cc: Hash[untyped, Definition | nil]
778
778
  cc = _ = cache
779
- cached = cc[key]
780
779
 
781
- case cached
782
- when Definition
783
- cached
784
- when false
785
- raise
786
- when nil
787
- cc[key] = false
788
- begin
789
- cc[key] = yield
790
- rescue => ex
791
- cc.delete(key)
792
- raise ex
793
- end
794
- else
795
- raise
796
- end
780
+ cc[key] ||= yield
797
781
  end
798
782
 
799
783
  def expand_alias(type_name)
@@ -237,6 +237,7 @@ module RBS
237
237
  end
238
238
 
239
239
  mixin_ancestors(entry,
240
+ type_name,
240
241
  included_modules: ancestors.included_modules,
241
242
  included_interfaces: ancestors.included_interfaces,
242
243
  prepended_modules: ancestors.prepended_modules,
@@ -284,6 +285,7 @@ module RBS
284
285
  end
285
286
 
286
287
  mixin_ancestors(entry,
288
+ type_name,
287
289
  included_modules: nil,
288
290
  included_interfaces: nil,
289
291
  prepended_modules: nil,
@@ -301,6 +303,7 @@ module RBS
301
303
 
302
304
  OneAncestors.interface(type_name: type_name, params: params).tap do |ancestors|
303
305
  mixin_ancestors0(entry.decl,
306
+ type_name,
304
307
  align_params: nil,
305
308
  included_modules: nil,
306
309
  included_interfaces: ancestors.included_interfaces,
@@ -311,7 +314,7 @@ module RBS
311
314
  end
312
315
  end
313
316
 
314
- def mixin_ancestors0(decl, align_params:, included_modules:, included_interfaces:, extended_modules:, prepended_modules:, extended_interfaces:)
317
+ def mixin_ancestors0(decl, type_name, align_params:, included_modules:, included_interfaces:, extended_modules:, prepended_modules:, extended_interfaces:)
315
318
  decl.each_mixin do |member|
316
319
  case member
317
320
  when AST::Members::Include
@@ -321,6 +324,7 @@ module RBS
321
324
 
322
325
  case
323
326
  when member.name.class? && included_modules
327
+ MixinClassError.check!(type_name: type_name, env: env, member: member)
324
328
  NoMixinFoundError.check!(member.name, env: env, member: member)
325
329
  included_modules << ancestor
326
330
  when member.name.interface? && included_interfaces
@@ -330,6 +334,7 @@ module RBS
330
334
 
331
335
  when AST::Members::Prepend
332
336
  if prepended_modules
337
+ MixinClassError.check!(type_name: type_name, env: env, member: member)
333
338
  NoMixinFoundError.check!(member.name, env: env, member: member)
334
339
 
335
340
  module_name = member.name
@@ -345,6 +350,7 @@ module RBS
345
350
 
346
351
  case
347
352
  when member.name.class? && extended_modules
353
+ MixinClassError.check!(type_name: type_name, env: env, member: member)
348
354
  NoMixinFoundError.check!(member.name, env: env, member: member)
349
355
  extended_modules << ancestor
350
356
  when member.name.interface? && extended_interfaces
@@ -355,7 +361,7 @@ module RBS
355
361
  end
356
362
  end
357
363
 
358
- def mixin_ancestors(entry, included_modules:, included_interfaces:, extended_modules:, prepended_modules:, extended_interfaces:)
364
+ def mixin_ancestors(entry, type_name, included_modules:, included_interfaces:, extended_modules:, prepended_modules:, extended_interfaces:)
359
365
  entry.decls.each do |d|
360
366
  decl = d.decl
361
367
 
@@ -365,6 +371,7 @@ module RBS
365
371
  )
366
372
 
367
373
  mixin_ancestors0(decl,
374
+ type_name,
368
375
  align_params: align_params,
369
376
  included_modules: included_modules,
370
377
  included_interfaces: included_interfaces,
data/lib/rbs/errors.rb CHANGED
@@ -350,4 +350,40 @@ module RBS
350
350
  original.location
351
351
  end
352
352
  end
353
+
354
+ class MixinClassError < DefinitionError
355
+ attr_reader :type_name
356
+ attr_reader :member
357
+
358
+ def initialize(type_name:, member:)
359
+ @type_name = type_name
360
+ @member = member
361
+
362
+ super "#{Location.to_string member.location}: Cannot #{mixin_name} a class `#{member.name}` in the definition of `#{type_name}`"
363
+ end
364
+
365
+ def location
366
+ member.location
367
+ end
368
+
369
+ def self.check!(type_name:, env:, member:)
370
+ case env.class_decls[member.name]
371
+ when Environment::ClassEntry
372
+ raise new(type_name: type_name, member: member)
373
+ end
374
+ end
375
+
376
+ private
377
+
378
+ def mixin_name
379
+ case member
380
+ when AST::Members::Prepend
381
+ "prepend"
382
+ when AST::Members::Include
383
+ "include"
384
+ when AST::Members::Extend
385
+ "extend"
386
+ end
387
+ end
388
+ end
353
389
  end
data/lib/rbs/parser.rb CHANGED
@@ -8,7 +8,7 @@ require 'racc/parser.rb'
8
8
  module RBS
9
9
  class Parser < Racc::Parser
10
10
 
11
- module_eval(<<'...end parser.y/module_eval...', 'parser.y', 1393)
11
+ module_eval(<<'...end parser.y/module_eval...', 'parser.y', 1394)
12
12
 
13
13
  Types = RBS::Types
14
14
  Namespace = RBS::Namespace
@@ -332,12 +332,16 @@ def next_token
332
332
  new_token(:tIVAR, input.matched.to_sym)
333
333
  when input.scan(/@@[a-zA-Z_]\w*/)
334
334
  new_token(:tCLASSVAR, input.matched.to_sym)
335
- when input.scan(/_[a-zA-Z]\w*\b/)
335
+ when input.scan(/_[A-Z]\w*\b/)
336
336
  new_token(:tINTERFACEIDENT)
337
337
  when input.scan(/[A-Z]\w*\b/)
338
338
  new_token(:tUIDENT)
339
- when input.scan(/[a-z_]\w*\b/)
339
+ when input.scan(/[a-z]\w*\b/)
340
340
  new_token(:tLIDENT)
341
+ when input.scan(/_[a-z]\w*\b/)
342
+ new_token(:tUNDERSCOREIDENT)
343
+ when input.scan(/_\w*\b/)
344
+ new_token(:tPARAMNAME)
341
345
  when input.scan(/"(\\"|[^"])*"/)
342
346
  s = input.matched.yield_self {|s| s[1, s.length - 2] }
343
347
  .gsub(DBL_QUOTE_STR_ESCAPE_SEQUENCES_RE) do |match|
@@ -420,120 +424,123 @@ end
420
424
  ##### State transition tables begin ###
421
425
 
422
426
  clist = [
423
- '349,350,33,351,-4,113,-242,33,33,5,117,336,-242,33,33,348,37,113,42',
424
- '334,40,41,55,56,57,58,59,60,61,62,353,43,63,54,64,65,66,77,67,68,69',
425
- '83,33,32,33,344,338,339,32,32,342,340,343,291,32,32,49,341,82,70,71',
426
- '72,74,76,75,337,346,347,73,78,80,349,350,33,351,84,85,81,86,33,39,405',
427
- '48,32,33,32,348,104,53,404,40,41,49,55,56,57,58,59,60,61,62,79,33,63',
428
- '54,64,65,66,77,67,68,69,83,33,32,160,344,338,339,33,32,342,340,343,53',
429
- '32,322,207,341,82,70,71,72,74,76,75,337,346,347,73,78,80,126,32,161',
430
- '320,84,85,81,86,349,350,39,351,32,96,97,98,99,53,32,207,180,40,41,348',
431
- '40,41,179,185,40,41,55,56,57,58,59,60,61,62,79,226,63,54,64,65,66,77',
432
- '67,68,69,83,39,53,186,344,338,339,281,332,342,340,343,2,3,4,227,341',
433
- '82,70,71,72,74,76,75,337,346,347,73,78,80,364,396,282,186,84,85,81,86',
434
- '349,350,120,351,180,96,97,98,99,125,262,101,102,165,103,348,166,186',
435
- '186,408,40,41,55,56,57,58,59,60,61,62,79,409,63,54,64,65,66,77,67,68',
436
- '69,83,40,41,186,344,338,339,40,41,342,340,343,40,41,167,186,341,82,70',
437
- '71,72,74,76,75,337,346,347,73,78,80,40,41,40,41,84,85,81,86,349,350',
438
- '168,351,170,96,97,98,99,40,41,40,41,40,41,348,40,41,284,285,367,368',
439
- '55,56,57,58,59,60,61,62,79,171,63,54,64,65,66,77,67,68,69,83,40,41,172',
440
- '344,338,339,40,41,342,340,343,383,384,40,41,341,82,70,71,72,74,76,75',
441
- '337,346,347,73,78,80,349,350,113,351,84,85,81,86,40,41,40,41,40,41,178',
442
- '348,40,41,40,41,40,41,55,56,57,58,59,60,61,62,79,181,63,54,64,65,66',
443
- '77,67,68,69,83,184,41,187,344,338,339,189,180,342,340,343,190,-104,-105',
444
- '-106,341,82,70,71,72,74,76,75,337,346,347,73,78,80,-107,-108,-109,-110',
445
- '84,85,81,86,349,350,-111,351,-112,96,97,98,99,-113,-114,48,-129,195',
446
- '196,348,197,198,199,200,208,209,55,56,57,58,59,60,61,62,79,42,63,54',
447
- '64,65,66,77,67,68,69,83,210,228,242,344,338,339,251,252,342,340,343',
448
- '253,255,257,258,341,82,70,71,72,74,76,75,337,346,347,73,78,80,349,350',
449
- '42,351,84,85,81,86,260,260,260,264,42,228,268,348,272,274,289,290,313',
450
- '272,55,56,57,58,59,60,61,62,79,315,63,54,64,65,66,77,67,68,69,83,289',
451
- '328,329,344,338,339,330,355,342,340,343,355,355,363,365,341,82,70,71',
452
- '72,74,76,75,337,346,347,73,78,80,366,369,371,378,84,85,81,86,33,379',
453
- '380,96,97,98,99,388,388,388,22,23,21,400,26,-219,25,401,30,402,131,132',
454
- '133,134,135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,403',
455
- '32,406,407,412,28,413,156,414,157,159,416,419,412,,,82,70,71,72,74,76',
456
- '75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,,25',
457
- ',30,,131,132,133,134,135,136,137,138,142,16,139,130,140,141,66,77,67',
458
- '68,69,83,,32,,,174,28,,177,,175,,,,,,,82,70,71,72,74,76,75,,,,73,78',
459
- '80,176,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,',
460
- '131,132,133,134,135,136,137,138,142,16,139,130,140,141,66,77,67,68,69',
461
- '83,,32,,,,28,,156,,157,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,',
462
- ',84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133',
463
- '134,135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,',
464
- '28,,156,,157,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81',
465
- '86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133,134,135',
466
- '136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,,234',
467
- ',,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96',
468
- '97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133,134,135,136,137,138',
469
- '142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,,156,,157,159,,,',
470
- ',,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99',
471
- ',,,22,23,21,,26,-219,25,,30,,131,132,133,134,135,136,137,138,142,16',
472
- '139,130,140,141,66,77,67,68,69,83,,32,,,,28,,234,,,159,,,,,,82,70,71',
473
- '72,74,76,75,,,,73,78,80,,,,,84,85,81,86,96,97,98,99,,,,90,89,91,,,,',
474
- ',,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,,,,,,,',
475
- ',192,,193,,,,,,82,70,71,72,74,76,75,,95,94,73,78,80,,,,,84,85,81,86',
476
- '96,97,98,99,,,,90,89,91,,,,,,40,41,55,56,57,58,59,60,61,62,79,,63,54',
477
- '64,65,66,77,67,68,69,83,194,,,,,,,,,,,,,,,,82,70,71,72,74,76,75,,95',
478
- '94,73,78,80,96,97,98,99,84,85,81,86,,,,,,,,,,55,56,57,58,59,60,61,62',
479
- '79,,63,54,64,65,66,77,67,68,69,83,192,,193,,,,,234,,,159,,,,,,82,70',
480
- '71,72,74,76,75,192,,193,73,78,80,96,97,98,99,84,85,81,86,,,,,,,,40,41',
481
- '55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,194,40,41',
482
- ',,,,234,,,159,,,,,,82,70,71,72,74,76,75,194,,,73,78,80,96,97,98,99,84',
483
- '85,81,86,,,,,,,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67,68',
484
- '69,83,192,,193,192,,193,192,,193,,,,,,,,82,70,71,72,74,76,75,,,,73,78',
485
- '80,,,,,84,85,81,86,,,,,,,,40,41,,40,41,,40,41,-242,,33,,117,,-242,,',
486
- '310,311,113,,,194,,,194,,,194,,-242,,33,,117,,-242,,312,310,311,113',
487
- ',,,,,307,306,,,32,-242,,33,,117,,-242,,312,310,311,113,,,,298,,307,306',
488
- ',174,32,,177,,175,,,322,,312,,,,,,,316,,307,306,,33,32,,176,,320,326',
489
- '323,324,325,22,23,21,327,26,,25,317,30,,8,12,19,20,9,10,13,14,15,16',
490
- '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,45,30,,8,12,19,20,9,10',
427
+ '192,195,33,193,192,195,33,193,192,195,33,193,113,192,195,33,193,192',
428
+ '195,5,193,40,41,192,195,33,193,-4,160,-245,185,33,33,33,117,33,-245',
429
+ '33,49,228,33,113,37,32,33,40,41,32,33,40,41,32,283,40,41,186,32,161',
430
+ '40,41,293,334,40,41,229,42,32,194,40,41,53,194,32,32,32,194,32,284,32',
431
+ '196,194,32,49,196,194,32,186,196,367,32,194,324,196,351,352,354,196',
432
+ '353,40,41,399,43,196,338,39,209,209,40,41,350,322,336,48,186,53,104',
433
+ '55,56,57,58,59,60,61,62,356,186,63,54,64,65,66,77,67,68,69,83,39,53',
434
+ '53,346,340,341,411,412,344,342,345,2,3,4,126,343,82,70,71,72,74,76,75',
435
+ '339,348,349,73,78,80,40,41,186,186,84,85,81,86,351,352,354,408,353,40',
436
+ '41,174,180,39,177,407,175,180,120,179,350,101,102,125,264,103,165,55',
437
+ '56,57,58,59,60,61,62,79,176,63,54,64,65,66,77,67,68,69,83,40,41,166',
438
+ '346,340,341,40,41,344,342,345,40,41,40,41,343,82,70,71,72,74,76,75,339',
439
+ '348,349,73,78,80,40,41,40,41,84,85,81,86,351,352,354,167,353,168,96',
440
+ '97,98,99,40,41,40,41,40,41,350,40,41,286,287,370,371,55,56,57,58,59',
441
+ '60,61,62,79,170,63,54,64,65,66,77,67,68,69,83,40,41,171,346,340,341',
442
+ '40,41,344,342,345,386,387,40,41,343,82,70,71,72,74,76,75,339,348,349',
443
+ '73,78,80,40,41,40,41,84,85,81,86,351,352,354,172,353,113,96,97,98,99',
444
+ '40,41,40,41,40,41,350,40,41,178,181,184,41,55,56,57,58,59,60,61,62,79',
445
+ '187,63,54,64,65,66,77,67,68,69,83,189,180,190,346,340,341,-105,-106',
446
+ '344,342,345,-107,-108,-109,-110,343,82,70,71,72,74,76,75,339,348,349',
447
+ '73,78,80,-111,-112,-113,-114,84,85,81,86,351,352,354,-115,353,48,96',
448
+ '97,98,99,-130,197,198,199,200,201,350,202,210,211,42,212,230,55,56,57',
449
+ '58,59,60,61,62,79,244,63,54,64,65,66,77,67,68,69,83,253,254,255,346',
450
+ '340,341,257,259,344,342,345,260,42,262,262,343,82,70,71,72,74,76,75',
451
+ '339,348,349,73,78,80,262,266,42,230,84,85,81,86,351,352,354,270,353',
452
+ '274,276,291,292,315,274,317,291,330,331,332,350,358,358,358,366,368',
453
+ '369,55,56,57,58,59,60,61,62,79,372,63,54,64,65,66,77,67,68,69,83,374',
454
+ '381,382,346,340,341,383,391,344,342,345,391,391,403,404,343,82,70,71',
455
+ '72,74,76,75,339,348,349,73,78,80,405,406,409,410,84,85,81,86,351,352',
456
+ '354,415,353,416,96,97,98,99,417,419,422,415,,,350,,,,,,,55,56,57,58',
457
+ '59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,,,,346,340,341,,,344,342',
458
+ '345,,,,,343,82,70,71,72,74,76,75,339,348,349,73,78,80,,,,,84,85,81,86',
459
+ '351,352,354,,353,,,,,,,,,,,,350,,,,,,,55,56,57,58,59,60,61,62,79,,63',
460
+ '54,64,65,66,77,67,68,69,83,,,,346,340,341,,,344,342,345,,,,,343,82,70',
461
+ '71,72,74,76,75,339,348,349,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99',
462
+ ',,,22,23,21,,26,-220,25,,30,,131,132,133,134,135,136,137,138,142,16',
463
+ '139,130,140,141,66,77,67,68,69,83,,32,,,,28,,156,,157,159,,,,,,82,70',
464
+ '71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23',
465
+ '21,,26,,25,,30,,131,132,133,134,135,136,137,138,142,16,139,130,140,141',
466
+ '66,77,67,68,69,83,,32,,,,28,,,,,,,,,,,82,70,71,72,74,76,75,,,,73,78',
467
+ '80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-220,25,,30,,131',
468
+ '132,133,134,135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83',
469
+ ',32,,,,28,,156,,157,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84',
470
+ '85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-220,25,,30,,131,132,133,134',
471
+ '135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,',
472
+ '156,,157,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33',
473
+ ',,96,97,98,99,,,,22,23,21,,26,-220,25,,30,,131,132,133,134,135,136,137',
474
+ '138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,,236,,,159,,',
475
+ ',,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99',
476
+ ',,,22,23,21,,26,-220,25,,30,,131,132,133,134,135,136,137,138,142,16',
477
+ '139,130,140,141,66,77,67,68,69,83,,32,,,,28,,156,,157,159,,,,,,82,70',
478
+ '71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23',
479
+ '21,,26,-220,25,,30,,131,132,133,134,135,136,137,138,142,16,139,130,140',
480
+ '141,66,77,67,68,69,83,,32,,,,28,,236,,,159,,,,,,82,70,71,72,74,76,75',
481
+ ',,,73,78,80,,,,,84,85,81,86,96,97,98,99,,,,90,89,91,,,,,,,,55,56,57',
482
+ '58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,,,,,,,,,,,,,,,,,82',
483
+ '70,71,72,74,76,75,,95,94,73,78,80,,,,,84,85,81,86,96,97,98,99,,,,90',
484
+ '89,91,,,,,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69',
485
+ '83,,,,,,,,,,,,,,,,,82,70,71,72,74,76,75,,95,94,73,78,80,96,97,98,99',
486
+ '84,85,81,86,,,,,,,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67',
487
+ '68,69,83,,,,,,,,236,,,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,96,97',
488
+ '98,99,84,85,81,86,,,,,,,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66',
489
+ '77,67,68,69,83,,,,,,,,236,,,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80',
490
+ '96,97,98,99,84,85,81,86,,,,,,,,,,55,56,57,58,59,60,61,62,79,,63,54,64',
491
+ '65,66,77,67,68,69,83,-245,,,33,,117,,-245,,,312,313,113,,,,82,70,71',
492
+ '72,74,76,75,,,,73,78,80,,,314,,84,85,81,86,,,,309,308,-245,,32,33,,117',
493
+ ',-245,,,312,313,113,,-245,,,33,300,117,,-245,,,312,313,113,,,,,314,',
494
+ ',,,,,,,309,308,,,32,314,,,,,,,,,309,308,,33,32,,318,,,,,,,22,23,21,',
495
+ '26,,25,319,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,',
496
+ ',,28,22,23,21,,26,,25,45,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
497
+ ',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
498
+ '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
491
499
  '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
492
500
  '19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25',
493
501
  ',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23',
494
502
  '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
495
503
  ',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
496
- ',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
497
- '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
498
- '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,-246,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,,,,28',
501
- '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,,,33',
516
- ',,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18',
517
- '11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14',
518
- '15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20',
519
- '9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30',
520
- ',8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21',
521
- ',26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,',
522
- '28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33',
523
- ',,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18',
524
- '11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14',
525
- '15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20',
526
- '9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30',
527
- ',8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21',
528
- ',26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,',
529
- '28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33',
530
- ',,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18',
531
- '11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14',
532
- '15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20',
533
- '9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30',
534
- ',8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21',
535
- ',26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,,,,,,32,,,,28' ]
536
- racc_action_table = arr = ::Array.new(3044, nil)
504
+ ',,33,,,,,32,,,,28,22,23,21,,26,,25,-249,30,,8,12,19,20,9,10,13,14,15',
505
+ '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
506
+ '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
507
+ '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
508
+ ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
509
+ '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
510
+ '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
511
+ '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
512
+ '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
513
+ '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
514
+ '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
515
+ ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
516
+ '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
517
+ '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
518
+ '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
519
+ '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
520
+ '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
521
+ '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
522
+ ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
523
+ '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
524
+ '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
525
+ '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
526
+ '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
527
+ '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
528
+ '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
529
+ ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
530
+ '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
531
+ '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
532
+ '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
533
+ '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
534
+ '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
535
+ '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
536
+ ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
537
+ '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
538
+ '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
539
+ '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
540
+ '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
541
+ '10,13,14,15,16,17,18,11,27,174,,,177,,175,,32,324,,,28,,,,,,,,,,,,,',
542
+ '176,,322,328,325,326,327,,,,329' ]
543
+ racc_action_table = arr = ::Array.new(3154, nil)
537
544
  idx = 0
538
545
  clist.each do |str|
539
546
  str.split(',', -1).each do |i|
@@ -543,141 +550,143 @@ clist = [
543
550
  end
544
551
 
545
552
  clist = [
546
- '322,322,48,322,34,278,34,177,34,1,34,321,34,218,219,322,5,34,7,321,44',
547
- '44,322,322,322,322,322,322,322,322,322,24,322,322,322,322,322,322,322',
548
- '322,322,322,220,48,262,322,322,322,177,34,322,322,322,278,218,219,28',
549
- '322,322,322,322,322,322,322,322,322,322,322,322,322,322,354,354,268',
550
- '354,322,322,322,322,274,34,388,27,220,289,262,354,32,28,388,169,169',
551
- '119,354,354,354,354,354,354,354,354,354,320,354,354,354,354,354,354',
552
- '354,354,354,354,326,268,51,354,354,354,327,274,354,354,354,119,289,296',
553
- '160,354,354,354,354,354,354,354,354,354,354,354,354,354,354,47,320,51',
554
- '296,354,354,354,354,356,356,35,356,326,356,356,356,356,160,327,208,116',
555
- '6,6,356,188,188,116,123,47,47,356,356,356,356,356,356,356,356,356,183',
556
- '356,356,356,356,356,356,356,356,356,356,6,208,123,356,356,356,269,319',
557
- '356,356,356,0,0,0,183,356,356,356,356,356,356,356,356,356,356,356,356',
558
- '356,356,331,381,269,319,356,356,356,356,357,357,36,357,248,357,357,357',
559
- '357,46,248,31,31,87,31,357,89,331,381,393,212,212,357,357,357,357,357',
560
- '357,357,357,357,394,357,357,357,357,357,357,357,357,357,357,213,213',
561
- '393,357,357,357,214,214,357,357,357,215,215,90,394,357,357,357,357,357',
562
- '357,357,357,357,357,357,357,357,357,216,216,217,217,357,357,357,357',
563
- '358,358,91,358,93,358,358,358,358,223,223,224,224,225,225,358,265,265',
564
- '271,271,345,345,358,358,358,358,358,358,358,358,358,94,358,358,358,358',
565
- '358,358,358,358,358,358,361,361,95,358,358,358,362,362,358,358,358,366',
566
- '366,386,386,358,358,358,358,358,358,358,358,358,358,358,358,358,358',
567
- '369,369,113,369,358,358,358,358,389,389,391,391,395,395,115,369,415',
568
- '415,417,417,418,418,369,369,369,369,369,369,369,369,369,117,369,369',
569
- '369,369,369,369,369,369,369,369,120,121,124,369,369,369,127,128,369',
570
- '369,369,129,130,131,132,369,369,369,369,369,369,369,369,369,369,369',
571
- '369,369,369,133,134,135,136,369,369,369,369,382,382,137,382,138,382',
572
- '382,382,382,139,140,141,142,145,146,382,148,150,153,154,161,162,382',
573
- '382,382,382,382,382,382,382,382,163,382,382,382,382,382,382,382,382',
574
- '382,382,164,190,206,382,382,382,221,222,382,382,382,227,232,243,244',
575
- '382,382,382,382,382,382,382,382,382,382,382,382,382,382,414,414,245',
576
- '414,382,382,382,382,246,247,249,250,254,257,259,414,260,261,275,277',
577
- '280,282,414,414,414,414,414,414,414,414,414,283,414,414,414,414,414',
578
- '414,414,414,414,414,287,310,311,414,414,414,312,323,414,414,414,324',
579
- '325,330,333,414,414,414,414,414,414,414,414,414,414,414,414,414,414',
580
- '335,353,355,359,414,414,414,414,49,360,363,49,49,49,49,373,375,377,49',
581
- '49,49,383,49,49,49,384,49,385,49,49,49,49,49,49,49,49,49,49,49,49,49',
582
- '49,49,49,49,49,49,49,387,49,390,392,397,49,399,49,402,49,49,405,411',
583
- '419,,,49,49,49,49,49,49,49,,,,49,49,49,,,,,49,49,49,49,156,,,156,156',
584
- '156,156,,,,156,156,156,,156,,156,,156,,156,156,156,156,156,156,156,156',
585
- '156,156,156,156,156,156,156,156,156,156,156,156,,156,,,114,156,,114',
586
- ',114,,,,,,,156,156,156,156,156,156,156,,,,156,156,156,114,,,,156,156',
587
- '156,156,196,,,196,196,196,196,,,,196,196,196,,196,196,196,,196,,196',
588
- '196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196',
589
- '196,196,,196,,,,196,,196,,196,196,,,,,,196,196,196,196,196,196,196,',
590
- ',,196,196,196,,,,,196,196,196,196,197,,,197,197,197,197,,,,197,197,197',
591
- ',197,197,197,,197,,197,197,197,197,197,197,197,197,197,197,197,197,197',
592
- '197,197,197,197,197,197,197,,197,,,,197,,197,,197,197,,,,,,197,197,197',
593
- '197,197,197,197,,,,197,197,197,,,,,197,197,197,197,198,,,198,198,198',
594
- '198,,,,198,198,198,,198,198,198,,198,,198,198,198,198,198,198,198,198',
595
- '198,198,198,198,198,198,198,198,198,198,198,198,,198,,,,198,,198,,,198',
596
- ',,,,,198,198,198,198,198,198,198,,,,198,198,198,,,,,198,198,198,198',
597
- '207,,,207,207,207,207,,,,207,207,207,,207,207,207,,207,,207,207,207',
598
- '207,207,207,207,207,207,207,207,207,207,207,207,207,207,207,207,207',
599
- ',207,,,,207,,207,,207,207,,,,,,207,207,207,207,207,207,207,,,,207,207',
600
- '207,,,,,207,207,207,207,255,,,255,255,255,255,,,,255,255,255,,255,255',
601
- '255,,255,,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255',
602
- '255,255,255,255,255,,255,,,,255,,255,,,255,,,,,,255,255,255,255,255',
603
- '255,255,,,,255,255,255,,,,,255,255,255,255,30,30,30,30,,,,30,30,30,',
553
+ '143,143,48,143,203,203,177,203,205,205,220,205,280,206,206,221,206,207',
554
+ '207,1,207,44,44,240,240,222,240,34,51,34,123,264,34,270,34,276,34,291',
555
+ '28,183,322,34,5,48,328,143,143,177,329,203,203,220,271,205,205,123,221',
556
+ '51,206,206,280,321,207,207,183,7,222,143,240,240,28,203,264,34,270,205',
557
+ '276,271,291,143,206,322,119,203,207,328,321,205,333,329,240,298,206',
558
+ '324,324,324,207,324,169,169,384,24,240,323,34,160,210,6,6,324,298,323',
559
+ '27,333,119,32,324,324,324,324,324,324,324,324,324,384,324,324,324,324',
560
+ '324,324,324,324,324,324,6,160,210,324,324,324,396,397,324,324,324,0',
561
+ '0,0,47,324,324,324,324,324,324,324,324,324,324,324,324,324,324,188,188',
562
+ '396,397,324,324,324,324,357,357,357,391,357,47,47,114,116,35,114,391',
563
+ '114,250,36,116,357,31,31,46,250,31,87,357,357,357,357,357,357,357,357',
564
+ '357,114,357,357,357,357,357,357,357,357,357,357,214,214,89,357,357,357',
565
+ '215,215,357,357,357,216,216,217,217,357,357,357,357,357,357,357,357',
566
+ '357,357,357,357,357,357,218,218,219,219,357,357,357,357,359,359,359',
567
+ '90,359,91,359,359,359,359,225,225,226,226,227,227,359,267,267,273,273',
568
+ '347,347,359,359,359,359,359,359,359,359,359,93,359,359,359,359,359,359',
569
+ '359,359,359,359,364,364,94,359,359,359,365,365,359,359,359,369,369,389',
570
+ '389,359,359,359,359,359,359,359,359,359,359,359,359,359,359,392,392',
571
+ '394,394,359,359,359,359,360,360,360,95,360,113,360,360,360,360,398,398',
572
+ '418,418,420,420,360,421,421,115,117,120,121,360,360,360,360,360,360',
573
+ '360,360,360,124,360,360,360,360,360,360,360,360,360,360,127,128,129',
574
+ '360,360,360,130,131,360,360,360,132,133,134,135,360,360,360,360,360',
575
+ '360,360,360,360,360,360,360,360,360,136,137,138,139,360,360,360,360',
576
+ '361,361,361,140,361,141,361,361,361,361,142,145,146,148,150,153,361',
577
+ '154,161,162,163,164,190,361,361,361,361,361,361,361,361,361,208,361',
578
+ '361,361,361,361,361,361,361,361,361,223,224,229,361,361,361,234,245',
579
+ '361,361,361,246,247,248,249,361,361,361,361,361,361,361,361,361,361',
580
+ '361,361,361,361,251,252,256,259,361,361,361,361,372,372,372,261,372',
581
+ '262,263,277,279,282,284,285,289,312,313,314,372,325,326,327,332,335',
582
+ '337,372,372,372,372,372,372,372,372,372,356,372,372,372,372,372,372',
583
+ '372,372,372,372,358,362,363,372,372,372,366,376,372,372,372,378,380',
584
+ '386,387,372,372,372,372,372,372,372,372,372,372,372,372,372,372,388',
585
+ '390,393,395,372,372,372,372,385,385,385,400,385,402,385,385,385,385',
586
+ '405,408,414,422,,,385,,,,,,,385,385,385,385,385,385,385,385,385,,385',
587
+ '385,385,385,385,385,385,385,385,385,,,,385,385,385,,,385,385,385,,,',
588
+ ',385,385,385,385,385,385,385,385,385,385,385,385,385,385,,,,,385,385',
589
+ '385,385,417,417,417,,417,,,,,,,,,,,,417,,,,,,,417,417,417,417,417,417',
590
+ '417,417,417,,417,417,417,417,417,417,417,417,417,417,,,,417,417,417',
591
+ ',,417,417,417,,,,,417,417,417,417,417,417,417,417,417,417,417,417,417',
592
+ '417,,,,,417,417,417,417,49,,,49,49,49,49,,,,49,49,49,,49,49,49,,49,',
593
+ '49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,49,,49,,,,49',
594
+ ',49,,49,49,,,,,,49,49,49,49,49,49,49,,,,49,49,49,,,,,49,49,49,49,156',
595
+ ',,156,156,156,156,,,,156,156,156,,156,,156,,156,,156,156,156,156,156',
596
+ '156,156,156,156,156,156,156,156,156,156,156,156,156,156,156,,156,,,',
597
+ '156,,,,,,,,,,,156,156,156,156,156,156,156,,,,156,156,156,,,,,156,156',
598
+ '156,156,198,,,198,198,198,198,,,,198,198,198,,198,198,198,,198,,198',
599
+ '198,198,198,198,198,198,198,198,198,198,198,198,198,198,198,198,198',
600
+ '198,198,,198,,,,198,,198,,198,198,,,,,,198,198,198,198,198,198,198,',
601
+ ',,198,198,198,,,,,198,198,198,198,199,,,199,199,199,199,,,,199,199,199',
602
+ ',199,199,199,,199,,199,199,199,199,199,199,199,199,199,199,199,199,199',
603
+ '199,199,199,199,199,199,199,,199,,,,199,,199,,199,199,,,,,,199,199,199',
604
+ '199,199,199,199,,,,199,199,199,,,,,199,199,199,199,200,,,200,200,200',
605
+ '200,,,,200,200,200,,200,200,200,,200,,200,200,200,200,200,200,200,200',
606
+ '200,200,200,200,200,200,200,200,200,200,200,200,,200,,,,200,,200,,,200',
607
+ ',,,,,200,200,200,200,200,200,200,,,,200,200,200,,,,,200,200,200,200',
608
+ '209,,,209,209,209,209,,,,209,209,209,,209,209,209,,209,,209,209,209',
609
+ '209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209,209',
610
+ ',209,,,,209,,209,,209,209,,,,,,209,209,209,209,209,209,209,,,,209,209',
611
+ '209,,,,,209,209,209,209,257,,,257,257,257,257,,,,257,257,257,,257,257',
612
+ '257,,257,,257,257,257,257,257,257,257,257,257,257,257,257,257,257,257',
613
+ '257,257,257,257,257,,257,,,,257,,257,,,257,,,,,,257,257,257,257,257',
614
+ '257,257,,,,257,257,257,,,,,257,257,257,257,30,30,30,30,,,,30,30,30,',
604
615
  ',,,,,,30,30,30,30,30,30,30,30,30,,30,30,30,30,30,30,30,30,30,30,,,,',
605
- ',,,,143,,143,,,,,,30,30,30,30,30,30,30,,30,30,30,30,30,,,,,30,30,30',
606
- '30,165,165,165,165,,,,165,165,165,,,,,,143,143,165,165,165,165,165,165',
607
- '165,165,165,,165,165,165,165,165,165,165,165,165,165,143,,,,,,,,,,,',
608
- ',,,,165,165,165,165,165,165,165,,165,165,165,165,165,199,199,199,199',
609
- '165,165,165,165,,,,,,,,,,199,199,199,199,199,199,199,199,199,,199,199',
610
- '199,199,199,199,199,199,199,199,201,,201,,,,,199,,,199,,,,,,199,199',
611
- '199,199,199,199,199,203,,203,199,199,199,200,200,200,200,199,199,199',
612
- '199,,,,,,,,201,201,200,200,200,200,200,200,200,200,200,,200,200,200',
613
- '200,200,200,200,200,200,200,201,203,203,,,,,200,,,200,,,,,,200,200,200',
614
- '200,200,200,200,203,,,200,200,200,234,234,234,234,200,200,200,200,,',
615
- ',,,,,,,234,234,234,234,234,234,234,234,234,,234,234,234,234,234,234',
616
- '234,234,234,234,204,,204,205,,205,238,,238,,,,,,,,234,234,234,234,234',
617
- '234,234,,,,234,234,234,,,,,234,234,234,234,,,,,,,,204,204,,205,205,',
618
- '238,238,279,,279,,279,,279,,,279,279,279,,,204,,,205,,,238,,286,,286',
619
- ',286,,286,,279,286,286,286,,,,,,279,279,,,279,288,,288,,288,,288,,286',
620
- '288,288,288,,,,279,,286,286,,297,286,,297,,297,,,297,,288,,,,,,,286',
621
- ',288,288,,2,288,,297,,297,297,297,297,297,2,2,2,297,2,,2,288,2,,2,2',
622
- '2,2,2,2,2,2,2,2,2,2,2,2,,,25,,,,,2,,,,2,25,25,25,,25,,25,25,25,,25,25',
623
- '25,25,25,25,25,25,25,25,25,25,25,25,,,26,,,,,25,,,,25,26,26,26,,26,',
624
- '26,,26,,26,26,26,26,26,26,26,26,26,26,26,26,26,26,,,40,,,,,26,,,,26',
625
- '40,40,40,,40,,40,,40,,40,40,40,40,40,40,40,40,40,40,40,40,40,40,,,41',
626
- ',,,,40,,,,40,41,41,41,,41,,41,,41,,41,41,41,41,41,41,41,41,41,41,41',
627
- '41,41,41,,,43,,,,,41,,,,41,43,43,43,,43,,43,,43,,43,43,43,43,43,43,43',
628
- '43,43,43,43,43,43,43,,,53,,,,,43,,,,43,53,53,53,,53,,53,,53,,53,53,53',
629
- '53,53,53,53,53,53,53,53,53,53,53,,,92,,,,,53,,,,53,92,92,92,,92,,92',
630
- ',92,,92,92,92,92,92,92,92,92,92,92,92,92,92,92,,,125,,,,,92,,,,92,125',
631
- '125,125,,125,,125,125,125,,125,125,125,125,125,125,125,125,125,125,125',
632
- '125,125,125,,,157,,,,,125,,,,125,157,157,157,,157,,157,,157,,157,157',
633
- '157,157,157,157,157,157,157,157,157,157,157,157,,,158,,,,,157,,,,157',
634
- '158,158,158,,158,,158,,158,,158,158,158,158,158,158,158,158,158,158',
635
- '158,158,158,158,,,159,,,,,158,,,,158,159,159,159,,159,,159,,159,,159',
636
- '159,159,159,159,159,159,159,159,159,159,159,159,159,,,166,,,,,159,,',
637
- ',159,166,166,166,,166,,166,,166,,166,166,166,166,166,166,166,166,166',
638
- '166,166,166,166,166,,,167,,,,,166,,,,166,167,167,167,,167,,167,,167',
639
- ',167,167,167,167,167,167,167,167,167,167,167,167,167,167,,,168,,,,,167',
640
- ',,,167,168,168,168,,168,,168,,168,,168,168,168,168,168,168,168,168,168',
641
- '168,168,168,168,168,,,170,,,,,168,,,,168,170,170,170,,170,,170,,170',
642
- ',170,170,170,170,170,170,170,170,170,170,170,170,170,170,,,171,,,,,170',
643
- ',,,170,171,171,171,,171,,171,,171,,171,171,171,171,171,171,171,171,171',
644
- '171,171,171,171,171,,,172,,,,,171,,,,171,172,172,172,,172,,172,,172',
645
- ',172,172,172,172,172,172,172,172,172,172,172,172,172,172,,,178,,,,,172',
646
- ',,,172,178,178,178,,178,,178,,178,,178,178,178,178,178,178,178,178,178',
647
- '178,178,178,178,178,,,179,,,,,178,,,,178,179,179,179,,179,,179,,179',
648
- ',179,179,179,179,179,179,179,179,179,179,179,179,179,179,,,181,,,,,179',
649
- ',,,179,181,181,181,,181,,181,,181,,181,181,181,181,181,181,181,181,181',
650
- '181,181,181,181,181,,,186,,,,,181,,,,181,186,186,186,,186,,186,,186',
651
- ',186,186,186,186,186,186,186,186,186,186,186,186,186,186,,,202,,,,,186',
652
- ',,,186,202,202,202,,202,,202,,202,,202,202,202,202,202,202,202,202,202',
653
- '202,202,202,202,202,,,209,,,,,202,,,,202,209,209,209,,209,,209,,209',
654
- ',209,209,209,209,209,209,209,209,209,209,209,209,209,209,,,228,,,,,209',
655
- ',,,209,228,228,228,,228,,228,,228,,228,228,228,228,228,228,228,228,228',
656
- '228,228,228,228,228,,,251,,,,,228,,,,228,251,251,251,,251,,251,,251',
657
- ',251,251,251,251,251,251,251,251,251,251,251,251,251,251,,,290,,,,,251',
658
- ',,,251,290,290,290,,290,,290,,290,,290,290,290,290,290,290,290,290,290',
659
- '290,290,290,290,290,,,313,,,,,290,,,,290,313,313,313,,313,,313,,313',
660
- ',313,313,313,313,313,313,313,313,313,313,313,313,313,313,,,328,,,,,313',
661
- ',,,313,328,328,328,,328,,328,,328,,328,328,328,328,328,328,328,328,328',
662
- '328,328,328,328,328,,,329,,,,,328,,,,328,329,329,329,,329,,329,,329',
663
- ',329,329,329,329,329,329,329,329,329,329,329,329,329,329,,,365,,,,,329',
664
- ',,,329,365,365,365,,365,,365,,365,,365,365,365,365,365,365,365,365,365',
665
- '365,365,365,365,365,,,372,,,,,365,,,,365,372,372,372,,372,,372,,372',
666
- ',372,372,372,372,372,372,372,372,372,372,372,372,372,372,,,374,,,,,372',
667
- ',,,372,374,374,374,,374,,374,,374,,374,374,374,374,374,374,374,374,374',
668
- '374,374,374,374,374,,,376,,,,,374,,,,374,376,376,376,,376,,376,,376',
669
- ',376,376,376,376,376,376,376,376,376,376,376,376,376,376,,,378,,,,,376',
670
- ',,,376,378,378,378,,378,,378,,378,,378,378,378,378,378,378,378,378,378',
671
- '378,378,378,378,378,,,379,,,,,378,,,,378,379,379,379,,379,,379,,379',
672
- ',379,379,379,379,379,379,379,379,379,379,379,379,379,379,,,380,,,,,379',
673
- ',,,379,380,380,380,,380,,380,,380,,380,380,380,380,380,380,380,380,380',
674
- '380,380,380,380,380,,,403,,,,,380,,,,380,403,403,403,,403,,403,,403',
675
- ',403,403,403,403,403,403,403,403,403,403,403,403,403,403,,,406,,,,,403',
676
- ',,,403,406,406,406,,406,,406,,406,,406,406,406,406,406,406,406,406,406',
677
- '406,406,406,406,406,,,407,,,,,406,,,,406,407,407,407,,407,,407,,407',
678
- ',407,407,407,407,407,407,407,407,407,407,407,407,407,407,,,,,,,,407',
679
- ',,,407' ]
680
- racc_action_check = arr = ::Array.new(3044, nil)
616
+ ',,,,,,,,,,,,30,30,30,30,30,30,30,,30,30,30,30,30,,,,,30,30,30,30,165',
617
+ '165,165,165,,,,165,165,165,,,,,,,,165,165,165,165,165,165,165,165,165',
618
+ ',165,165,165,165,165,165,165,165,165,165,,,,,,,,,,,,,,,,,165,165,165',
619
+ '165,165,165,165,,165,165,165,165,165,201,201,201,201,165,165,165,165',
620
+ ',,,,,,,,,201,201,201,201,201,201,201,201,201,,201,201,201,201,201,201',
621
+ '201,201,201,201,,,,,,,,201,,,201,,,,,,201,201,201,201,201,201,201,,',
622
+ ',201,201,201,202,202,202,202,201,201,201,201,,,,,,,,,,202,202,202,202',
623
+ '202,202,202,202,202,,202,202,202,202,202,202,202,202,202,202,,,,,,,',
624
+ '202,,,202,,,,,,202,202,202,202,202,202,202,,,,202,202,202,236,236,236',
625
+ '236,202,202,202,202,,,,,,,,,,236,236,236,236,236,236,236,236,236,,236',
626
+ '236,236,236,236,236,236,236,236,236,281,,,281,,281,,281,,,281,281,281',
627
+ ',,,236,236,236,236,236,236,236,,,,236,236,236,,,281,,236,236,236,236',
628
+ ',,,281,281,288,,281,288,,288,,288,,,288,288,288,,290,,,290,281,290,',
629
+ '290,,,290,290,290,,,,,288,,,,,,,,,288,288,,,288,290,,,,,,,,,290,290',
630
+ ',2,290,,288,,,,,,,2,2,2,,2,,2,290,2,,2,2,2,2,2,2,2,2,2,2,2,2,2,2,,,25',
631
+ ',,,,2,,,,2,25,25,25,,25,,25,25,25,,25,25,25,25,25,25,25,25,25,25,25',
632
+ '25,25,25,,,26,,,,,25,,,,25,26,26,26,,26,,26,,26,,26,26,26,26,26,26,26',
633
+ '26,26,26,26,26,26,26,,,40,,,,,26,,,,26,40,40,40,,40,,40,,40,,40,40,40',
634
+ '40,40,40,40,40,40,40,40,40,40,40,,,41,,,,,40,,,,40,41,41,41,,41,,41',
635
+ ',41,,41,41,41,41,41,41,41,41,41,41,41,41,41,41,,,43,,,,,41,,,,41,43',
636
+ '43,43,,43,,43,,43,,43,43,43,43,43,43,43,43,43,43,43,43,43,43,,,53,,',
637
+ ',,43,,,,43,53,53,53,,53,,53,,53,,53,53,53,53,53,53,53,53,53,53,53,53',
638
+ '53,53,,,92,,,,,53,,,,53,92,92,92,,92,,92,,92,,92,92,92,92,92,92,92,92',
639
+ '92,92,92,92,92,92,,,125,,,,,92,,,,92,125,125,125,,125,,125,125,125,',
640
+ '125,125,125,125,125,125,125,125,125,125,125,125,125,125,,,157,,,,,125',
641
+ ',,,125,157,157,157,,157,,157,,157,,157,157,157,157,157,157,157,157,157',
642
+ '157,157,157,157,157,,,158,,,,,157,,,,157,158,158,158,,158,,158,,158',
643
+ ',158,158,158,158,158,158,158,158,158,158,158,158,158,158,,,159,,,,,158',
644
+ ',,,158,159,159,159,,159,,159,,159,,159,159,159,159,159,159,159,159,159',
645
+ '159,159,159,159,159,,,166,,,,,159,,,,159,166,166,166,,166,,166,,166',
646
+ ',166,166,166,166,166,166,166,166,166,166,166,166,166,166,,,167,,,,,166',
647
+ ',,,166,167,167,167,,167,,167,,167,,167,167,167,167,167,167,167,167,167',
648
+ '167,167,167,167,167,,,168,,,,,167,,,,167,168,168,168,,168,,168,,168',
649
+ ',168,168,168,168,168,168,168,168,168,168,168,168,168,168,,,170,,,,,168',
650
+ ',,,168,170,170,170,,170,,170,,170,,170,170,170,170,170,170,170,170,170',
651
+ '170,170,170,170,170,,,171,,,,,170,,,,170,171,171,171,,171,,171,,171',
652
+ ',171,171,171,171,171,171,171,171,171,171,171,171,171,171,,,172,,,,,171',
653
+ ',,,171,172,172,172,,172,,172,,172,,172,172,172,172,172,172,172,172,172',
654
+ '172,172,172,172,172,,,178,,,,,172,,,,172,178,178,178,,178,,178,,178',
655
+ ',178,178,178,178,178,178,178,178,178,178,178,178,178,178,,,179,,,,,178',
656
+ ',,,178,179,179,179,,179,,179,,179,,179,179,179,179,179,179,179,179,179',
657
+ '179,179,179,179,179,,,181,,,,,179,,,,179,181,181,181,,181,,181,,181',
658
+ ',181,181,181,181,181,181,181,181,181,181,181,181,181,181,,,186,,,,,181',
659
+ ',,,181,186,186,186,,186,,186,,186,,186,186,186,186,186,186,186,186,186',
660
+ '186,186,186,186,186,,,204,,,,,186,,,,186,204,204,204,,204,,204,,204',
661
+ ',204,204,204,204,204,204,204,204,204,204,204,204,204,204,,,211,,,,,204',
662
+ ',,,204,211,211,211,,211,,211,,211,,211,211,211,211,211,211,211,211,211',
663
+ '211,211,211,211,211,,,230,,,,,211,,,,211,230,230,230,,230,,230,,230',
664
+ ',230,230,230,230,230,230,230,230,230,230,230,230,230,230,,,253,,,,,230',
665
+ ',,,230,253,253,253,,253,,253,,253,,253,253,253,253,253,253,253,253,253',
666
+ '253,253,253,253,253,,,292,,,,,253,,,,253,292,292,292,,292,,292,,292',
667
+ ',292,292,292,292,292,292,292,292,292,292,292,292,292,292,,,315,,,,,292',
668
+ ',,,292,315,315,315,,315,,315,,315,,315,315,315,315,315,315,315,315,315',
669
+ '315,315,315,315,315,,,330,,,,,315,,,,315,330,330,330,,330,,330,,330',
670
+ ',330,330,330,330,330,330,330,330,330,330,330,330,330,330,,,331,,,,,330',
671
+ ',,,330,331,331,331,,331,,331,,331,,331,331,331,331,331,331,331,331,331',
672
+ '331,331,331,331,331,,,368,,,,,331,,,,331,368,368,368,,368,,368,,368',
673
+ ',368,368,368,368,368,368,368,368,368,368,368,368,368,368,,,375,,,,,368',
674
+ ',,,368,375,375,375,,375,,375,,375,,375,375,375,375,375,375,375,375,375',
675
+ '375,375,375,375,375,,,377,,,,,375,,,,375,377,377,377,,377,,377,,377',
676
+ ',377,377,377,377,377,377,377,377,377,377,377,377,377,377,,,379,,,,,377',
677
+ ',,,377,379,379,379,,379,,379,,379,,379,379,379,379,379,379,379,379,379',
678
+ '379,379,379,379,379,,,381,,,,,379,,,,379,381,381,381,,381,,381,,381',
679
+ ',381,381,381,381,381,381,381,381,381,381,381,381,381,381,,,382,,,,,381',
680
+ ',,,381,382,382,382,,382,,382,,382,,382,382,382,382,382,382,382,382,382',
681
+ '382,382,382,382,382,,,383,,,,,382,,,,382,383,383,383,,383,,383,,383',
682
+ ',383,383,383,383,383,383,383,383,383,383,383,383,383,383,,,406,,,,,383',
683
+ ',,,383,406,406,406,,406,,406,,406,,406,406,406,406,406,406,406,406,406',
684
+ '406,406,406,406,406,,,409,,,,,406,,,,406,409,409,409,,409,,409,,409',
685
+ ',409,409,409,409,409,409,409,409,409,409,409,409,409,409,,,410,,,,,409',
686
+ ',,,409,410,410,410,,410,,410,,410,,410,410,410,410,410,410,410,410,410',
687
+ '410,410,410,410,410,299,,,299,,299,,410,299,,,410,,,,,,,,,,,,,,299,',
688
+ '299,299,299,299,299,,,,299' ]
689
+ racc_action_check = arr = ::Array.new(3154, nil)
681
690
  idx = 0
682
691
  clist.each do |str|
683
692
  str.split(',', -1).each do |i|
@@ -687,539 +696,544 @@ clist = [
687
696
  end
688
697
 
689
698
  racc_action_pointer = [
690
- 130, 9, 1590, nil, nil, 16, 116, -33, nil, nil,
699
+ 73, 19, 1675, nil, nil, 42, 59, 13, nil, nil,
691
700
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
692
- nil, nil, nil, nil, 11, 1626, 1662, 64, 38, nil,
693
- 1140, 238, 83, nil, 4, 76, 211, nil, nil, nil,
694
- 1698, 1734, nil, 1770, -27, nil, 192, 123, -2, 604,
695
- nil, 93, nil, 1806, nil, nil, nil, nil, nil, nil,
701
+ nil, nil, nil, nil, 80, 1711, 1747, 93, 19, nil,
702
+ 1264, 188, 110, nil, 27, 105, 166, nil, nil, nil,
703
+ 1783, 1819, nil, 1855, -27, nil, 145, 130, -3, 728,
704
+ nil, 5, nil, 1891, nil, nil, nil, nil, nil, nil,
696
705
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
697
706
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
698
- nil, nil, nil, nil, nil, nil, nil, 196, nil, 190,
699
- 229, 255, 1842, 268, 295, 308, nil, nil, nil, nil,
707
+ nil, nil, nil, nil, nil, nil, nil, 148, nil, 162,
708
+ 200, 202, 1927, 240, 253, 291, nil, nil, nil, nil,
700
709
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
701
- nil, nil, nil, 368, 694, 349, 160, 366, nil, 74,
702
- 419, 374, nil, 148, 402, 1878, nil, 408, 426, 413,
703
- 389, 390, 391, 406, 407, 408, 409, 416, 418, 423,
704
- 424, 451, 426, 1189, nil, 427, 426, nil, 428, nil,
705
- 429, nil, nil, 430, 431, nil, 681, 1914, 1950, 1986,
706
- 109, 456, 429, 438, 477, 1214, 2022, 2058, 2094, 43,
707
- 2130, 2166, 2202, nil, nil, nil, nil, 3, 2238, 2274,
708
- nil, 2310, nil, 160, nil, nil, 2346, nil, 119, nil,
709
- 451, nil, nil, nil, nil, nil, 758, 835, 912, 1280,
710
- 1346, 1321, 2382, 1344, 1453, 1456, 479, 989, 143, 2418,
711
- nil, nil, 202, 224, 230, 235, 253, 255, 9, 10,
712
- 38, 450, 504, 270, 272, 274, nil, 509, 2454, nil,
713
- nil, nil, 466, nil, 1412, nil, nil, nil, 1459, nil,
714
- nil, nil, nil, 494, 491, 480, 517, 518, 231, 519,
715
- 535, 2490, nil, nil, 490, 1066, nil, 492, nil, 484,
716
- 466, 502, 40, nil, nil, 277, nil, nil, 69, 177,
717
- nil, 249, nil, nil, 75, 501, nil, 528, -8, 1506,
718
- 529, nil, 471, 558, nil, nil, 1528, 525, 1550, 80,
719
- 2526, nil, nil, nil, nil, nil, 83, 1537, nil, nil,
710
+ nil, nil, nil, 324, 144, 307, 179, 308, nil, 63,
711
+ 352, 306, nil, 8, 343, 1963, nil, 356, 375, 358,
712
+ 337, 338, 342, 343, 344, 345, 360, 361, 362, 363,
713
+ 371, 399, 378, -3, nil, 379, 378, nil, 379, nil,
714
+ 380, nil, nil, 381, 383, nil, 805, 1999, 2035, 2071,
715
+ 86, 408, 381, 381, 410, 1338, 2107, 2143, 2179, 50,
716
+ 2215, 2251, 2287, nil, nil, nil, nil, 1, 2323, 2359,
717
+ nil, 2395, nil, 17, nil, nil, 2431, nil, 117, nil,
718
+ 384, nil, nil, nil, nil, nil, nil, nil, 882, 959,
719
+ 1036, 1404, 1470, 1, 2467, 5, 10, 14, 421, 1113,
720
+ 87, 2503, nil, nil, 168, 174, 179, 181, 197, 199,
721
+ 5, 10, 20, 399, 454, 215, 217, 219, nil, 456,
722
+ 2539, nil, nil, nil, 415, nil, 1536, nil, nil, nil,
723
+ 20, nil, nil, nil, nil, 443, 443, 416, 448, 449,
724
+ 184, 464, 480, 2575, nil, nil, 435, 1190, nil, 437,
725
+ nil, 436, 418, 454, 26, nil, nil, 222, nil, nil,
726
+ 28, 30, nil, 194, nil, nil, 30, 453, nil, 480,
727
+ -2, 1579, 481, nil, 423, 502, nil, nil, 1621, 458,
728
+ 1635, 32, 2611, nil, nil, nil, nil, nil, 47, 3082,
720
729
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
721
- 528, 529, 520, 2562, nil, nil, nil, nil, nil, 178,
722
- 98, -61, -2, 546, 550, 551, 109, 115, 2598, 2634,
723
- 573, 200, nil, 565, nil, 561, nil, nil, nil, nil,
724
- nil, nil, nil, nil, nil, 277, nil, nil, nil, nil,
725
- nil, nil, nil, 544, 69, 545, 148, 227, 306, 583,
726
- 589, 303, 309, 566, nil, 2670, 329, nil, nil, 377,
727
- nil, nil, 2706, 597, 2742, 598, 2778, 599, 2814, 2850,
728
- 2886, 201, 456, 564, 568, 595, 316, 604, 70, 340,
729
- 606, 342, 607, 227, 239, 344, nil, 594, nil, 610,
730
- nil, nil, 599, 2922, nil, 640, 2958, 2994, nil, nil,
731
- nil, 613, nil, nil, 527, 348, nil, 350, 352, 603,
732
- nil, nil ]
730
+ nil, nil, 461, 462, 450, 2647, nil, nil, nil, nil,
731
+ nil, 39, 35, 30, 91, 477, 478, 479, 39, 43,
732
+ 2683, 2719, 501, 66, nil, 493, nil, 475, nil, nil,
733
+ nil, nil, nil, nil, nil, nil, nil, 222, nil, nil,
734
+ nil, nil, nil, nil, nil, nil, 467, 171, 478, 251,
735
+ 331, 411, 516, 517, 248, 254, 497, nil, 2755, 274,
736
+ nil, nil, 491, nil, nil, 2791, 524, 2827, 528, 2863,
737
+ 529, 2899, 2935, 2971, 78, 571, 491, 492, 532, 261,
738
+ 521, 164, 277, 522, 279, 523, 120, 121, 295, nil,
739
+ 517, nil, 533, nil, nil, 525, 3007, nil, 564, 3043,
740
+ 3079, nil, nil, nil, 537, nil, nil, 651, 297, nil,
741
+ 299, 302, 527, nil, nil ]
733
742
 
734
743
  racc_action_default = [
735
- -248, -248, -242, -6, -15, -248, -4, -157, -160, -161,
736
- -162, -163, -164, -165, -166, -167, -168, -169, -170, -171,
737
- -172, -173, -174, -175, -176, -242, -242, -248, -80, -184,
738
- -248, -248, -243, -245, -16, -4, -147, 422, -1, -5,
739
- -242, -242, -183, -242, -185, -178, -247, -248, -242, -242,
740
- -182, -248, -204, -242, -104, -105, -106, -107, -108, -109,
741
- -110, -111, -112, -113, -114, -115, -116, -117, -118, -119,
742
- -120, -121, -122, -123, -124, -125, -126, -127, -128, -129,
743
- -130, -131, -132, -133, -134, -135, -136, -247, -188, -248,
744
- -248, -248, -242, -248, -248, -248, -199, -200, -201, -202,
745
- -235, -236, -237, -238, -244, -2, -7, -8, -9, -10,
746
- -11, -12, -13, -16, -248, -248, -248, -248, -3, -80,
747
- -248, -158, -159, -248, -248, -242, -180, -248, -248, -248,
748
- -170, -160, -164, -171, -172, -161, -162, -165, -166, -169,
749
- -163, -115, -167, -231, -197, -248, -208, -209, -211, -212,
750
- -214, -215, -218, -221, -223, -224, -242, -242, -242, -242,
751
- -248, -248, -248, -206, -248, -246, -242, -242, -242, -193,
752
- -242, -242, -242, -17, -14, -14, -14, -242, -242, -242,
753
- -240, -242, -79, -248, -149, -177, -242, -179, -186, -181,
754
- -81, -225, -232, -233, -234, -198, -242, -242, -242, -219,
755
- -219, -231, -242, -231, -231, -231, -248, -242, -248, -242,
756
- -187, -189, -190, -191, -192, -194, -195, -196, -242, -242,
757
- -242, -248, -248, -154, -155, -156, -148, -248, -242, -207,
758
- -215, -210, -217, -213, -248, -220, -222, -226, -231, -227,
759
- -228, -230, -82, -248, -248, -203, -137, -137, -248, -137,
760
- -248, -242, -241, -150, -205, -242, -229, -248, -83, -19,
761
- -145, -24, -242, -57, -239, -153, -216, -30, -242, -248,
762
- -139, -142, -146, -30, -242, -30, -26, -29, -16, -16,
763
- -20, -138, -145, -248, -143, -144, -16, -25, -16, -242,
764
- -242, -56, -58, -59, -60, -61, -71, -71, -18, -31,
765
- -32, -33, -34, -35, -36, -37, -38, -39, -40, -41,
766
- -248, -248, -248, -242, -140, -141, -22, -23, -27, -248,
767
- -242, -68, -248, -42, -42, -42, -242, -242, -242, -242,
768
- -248, -248, -28, -62, -69, -248, -72, -86, -87, -88,
769
- -89, -90, -91, -92, -93, -94, -97, -98, -99, -100,
770
- -101, -102, -103, -129, -248, -248, -248, -248, -248, -64,
771
- -66, -53, -54, -248, -21, -242, -73, -95, -96, -248,
772
- -151, -43, -242, -50, -242, -50, -242, -50, -242, -242,
773
- -242, -248, -248, -248, -248, -248, -44, -248, -248, -46,
774
- -248, -48, -248, -248, -248, -55, -63, -15, -84, -248,
775
- -74, -75, -248, -242, -51, -248, -242, -242, -65, -67,
776
- -70, -76, -77, -85, -248, -45, -52, -47, -49, -15,
777
- -152, -78 ]
744
+ -251, -251, -245, -6, -15, -251, -4, -158, -161, -162,
745
+ -163, -164, -165, -166, -167, -168, -169, -170, -171, -172,
746
+ -173, -174, -175, -176, -177, -245, -245, -251, -80, -185,
747
+ -251, -251, -246, -248, -16, -4, -148, 425, -1, -5,
748
+ -245, -245, -184, -245, -186, -179, -250, -251, -245, -245,
749
+ -183, -251, -205, -245, -105, -106, -107, -108, -109, -110,
750
+ -111, -112, -113, -114, -115, -116, -117, -118, -119, -120,
751
+ -121, -122, -123, -124, -125, -126, -127, -128, -129, -130,
752
+ -131, -132, -133, -134, -135, -136, -137, -250, -189, -251,
753
+ -251, -251, -245, -251, -251, -251, -200, -201, -202, -203,
754
+ -238, -239, -240, -241, -247, -2, -7, -8, -9, -10,
755
+ -11, -12, -13, -16, -251, -251, -251, -251, -3, -80,
756
+ -251, -159, -160, -251, -251, -245, -181, -251, -251, -251,
757
+ -171, -161, -165, -172, -173, -162, -163, -166, -167, -170,
758
+ -164, -116, -168, -232, -198, -251, -209, -210, -212, -213,
759
+ -215, -216, -219, -222, -224, -225, -245, -245, -245, -245,
760
+ -251, -251, -251, -207, -251, -249, -245, -245, -245, -194,
761
+ -245, -245, -245, -17, -14, -14, -14, -245, -245, -245,
762
+ -243, -245, -79, -251, -150, -178, -245, -180, -187, -182,
763
+ -81, -226, -233, -234, -235, -236, -237, -199, -245, -245,
764
+ -245, -220, -220, -232, -245, -232, -232, -232, -251, -245,
765
+ -251, -245, -188, -190, -191, -192, -193, -195, -196, -197,
766
+ -245, -245, -245, -251, -251, -155, -156, -157, -149, -251,
767
+ -245, -208, -216, -211, -218, -214, -251, -221, -223, -227,
768
+ -232, -228, -229, -231, -82, -251, -251, -204, -138, -138,
769
+ -251, -138, -251, -245, -244, -151, -206, -245, -230, -251,
770
+ -83, -19, -146, -24, -245, -57, -242, -154, -217, -30,
771
+ -245, -251, -140, -143, -147, -30, -245, -30, -26, -29,
772
+ -16, -16, -20, -139, -146, -251, -144, -145, -16, -25,
773
+ -16, -245, -245, -56, -58, -59, -60, -61, -71, -71,
774
+ -18, -31, -32, -33, -34, -35, -36, -37, -38, -39,
775
+ -40, -41, -251, -251, -251, -245, -141, -142, -22, -23,
776
+ -27, -251, -245, -68, -251, -42, -42, -42, -245, -245,
777
+ -245, -245, -251, -251, -28, -62, -69, -251, -72, -86,
778
+ -87, -88, -89, -90, -91, -92, -93, -94, -97, -98,
779
+ -99, -100, -101, -102, -103, -104, -130, -251, -251, -251,
780
+ -251, -251, -64, -66, -53, -54, -251, -21, -245, -73,
781
+ -95, -96, -251, -152, -43, -245, -50, -245, -50, -245,
782
+ -50, -245, -245, -245, -251, -251, -251, -251, -251, -44,
783
+ -251, -251, -46, -251, -48, -251, -251, -251, -55, -63,
784
+ -15, -84, -251, -74, -75, -251, -245, -51, -251, -245,
785
+ -245, -65, -67, -70, -76, -77, -85, -251, -45, -52,
786
+ -47, -49, -15, -153, -78 ]
778
787
 
779
788
  racc_goto_table = [
780
- 6, 46, 116, 127, 93, 163, 114, 92, 88, 191,
781
- 50, 202, 206, 129, 354, 277, 128, 124, 230, 123,
782
- 233, 410, 270, 38, 47, 232, 232, 277, 275, 279,
783
- 387, 1, 390, 34, 392, 286, 35, 288, 121, 122,
784
- 287, 106, 277, 421, 314, 267, 370, 143, 373, 375,
785
- 377, 105, 118, 259, 261, 273, 263, 318, 164, 293,
786
- 244, 385, 218, 219, 220, 235, 236, 237, 294, 239,
787
- 240, 241, 295, 333, 399, 249, 278, 266, 292, 359,
788
- 360, 335, 382, 232, 397, 173, 356, 357, 358, 202,
789
- 169, 119, 162, 269, 283, 183, 221, 87, 231, 100,
790
- nil, 182, nil, nil, 256, nil, 420, nil, nil, nil,
789
+ 6, 114, 116, 93, 46, 163, 88, 92, 127, 191,
790
+ 50, 129, 204, 124, 208, 357, 128, 279, 232, 413,
791
+ 235, 272, 123, 277, 47, 234, 234, 38, 281, 279,
792
+ 261, 263, 1, 265, 288, 289, 290, 34, 121, 122,
793
+ 35, 424, 106, 316, 279, 237, 238, 143, 373, 269,
794
+ 376, 378, 380, 275, 164, 105, 118, 390, 320, 393,
795
+ 295, 395, 296, 388, 246, 220, 221, 222, 297, 239,
796
+ 251, 241, 242, 243, 280, 335, 402, 268, 294, 337,
797
+ 173, 362, 363, 234, 359, 360, 361, 385, 400, 119,
798
+ 169, 162, 204, 271, 285, 183, 223, 87, 233, 100,
799
+ nil, 182, nil, nil, nil, nil, 258, nil, 423, nil,
791
800
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
792
801
  nil, nil, nil, 188, nil, nil, nil, nil, nil, nil,
793
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 93,
794
- nil, nil, 92, 211, nil, 222, nil, nil, nil, nil,
795
- nil, nil, nil, nil, 201, 203, 204, 205, nil, nil,
796
- 229, 245, nil, nil, 212, 213, 214, nil, 215, 216,
797
- 217, 243, nil, 246, 247, nil, 223, 224, nil, 225,
798
- 254, nil, nil, nil, 188, nil, 128, 248, 250, nil,
799
- nil, nil, nil, nil, 143, 143, 143, nil, nil, nil,
800
- 238, nil, nil, nil, nil, 143, nil, nil, nil, nil,
802
+ nil, nil, nil, nil, nil, nil, nil, nil, 93, nil,
803
+ nil, 213, 92, nil, nil, 224, nil, nil, nil, nil,
804
+ nil, nil, nil, nil, 203, 205, 206, 207, nil, nil,
805
+ 231, nil, nil, 247, 214, 215, 216, nil, 217, 218,
806
+ 219, 245, nil, nil, nil, nil, 225, 226, nil, 227,
807
+ 248, 249, 256, nil, 188, nil, nil, nil, 128, 250,
808
+ 252, nil, nil, nil, nil, nil, 143, 143, 143, nil,
809
+ nil, nil, 240, nil, nil, nil, nil, 143, nil, nil,
801
810
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
802
- nil, nil, nil, 280, nil, nil, nil, nil, nil, nil,
803
- nil, nil, nil, nil, nil, nil, 128, nil, nil, nil,
804
- nil, nil, nil, nil, nil, nil, nil, 116, nil, 265,
805
- 296, nil, nil, 143, 116, nil, 116, nil, nil, nil,
806
- nil, nil, nil, nil, nil, nil, 319, nil, nil, nil,
807
811
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
808
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 331,
809
- nil, nil, nil, nil, nil, nil, 352, nil, nil, nil,
812
+ 282, nil, nil, nil, nil, nil, nil, nil, 128, nil,
813
+ nil, nil, nil, nil, nil, nil, nil, 298, nil, 116,
814
+ nil, 267, nil, nil, nil, 143, 116, nil, 116, nil,
810
815
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
816
+ nil, 321, nil, nil, nil, nil, nil, nil, nil, nil,
811
817
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
812
- nil, nil, nil, nil, nil, nil, 361, 362, 352, nil,
813
- 352, 352, 352, 372, 374, 376, nil, nil, nil, nil,
814
- nil, 381, nil, 352, nil, nil, nil, nil, nil, nil,
815
- nil, nil, nil, nil, 393, 394, 352, nil, nil, 398,
818
+ nil, nil, nil, nil, 333, nil, nil, 355, nil, nil,
816
819
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
817
- 386, nil, 389, nil, 391, nil, nil, nil, 395, nil,
818
- nil, nil, nil, nil, nil, nil, nil, nil, 352, nil,
819
820
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
820
- nil, 415, nil, nil, 417, 418 ]
821
+ nil, nil, nil, nil, nil, nil, nil, nil, 364, 365,
822
+ 355, nil, 355, 355, 355, nil, 375, 377, 379, nil,
823
+ nil, nil, nil, nil, nil, 355, nil, 384, nil, nil,
824
+ nil, nil, nil, nil, nil, nil, nil, nil, 355, nil,
825
+ 396, 397, 401, nil, nil, nil, nil, nil, nil, nil,
826
+ nil, nil, nil, 389, nil, 392, nil, 394, nil, nil,
827
+ nil, 398, nil, nil, nil, nil, nil, nil, nil, nil,
828
+ 355, nil, nil, nil, nil, nil, nil, nil, nil, nil,
829
+ nil, nil, nil, nil, 418, nil, nil, 420, 421 ]
821
830
 
822
831
  racc_goto_check = [
823
- 2, 20, 22, 16, 53, 60, 15, 35, 64, 76,
824
- 47, 65, 51, 49, 36, 25, 22, 61, 71, 20,
825
- 71, 45, 55, 3, 2, 66, 66, 25, 23, 19,
826
- 37, 1, 37, 4, 37, 19, 5, 19, 2, 2,
827
- 23, 6, 25, 45, 55, 18, 36, 2, 36, 36,
828
- 36, 3, 3, 17, 17, 21, 17, 24, 61, 27,
829
- 51, 36, 13, 13, 13, 72, 72, 76, 28, 76,
830
- 76, 76, 33, 25, 36, 38, 39, 71, 40, 25,
831
- 25, 41, 43, 66, 44, 15, 34, 34, 34, 65,
832
- 2, 46, 50, 54, 57, 58, 59, 63, 67, 77,
833
- nil, 47, nil, nil, 76, nil, 36, nil, nil, nil,
832
+ 2, 15, 22, 53, 20, 60, 64, 35, 16, 76,
833
+ 47, 49, 65, 61, 51, 36, 22, 25, 71, 45,
834
+ 71, 55, 20, 23, 2, 66, 66, 3, 19, 25,
835
+ 17, 17, 1, 17, 19, 23, 19, 4, 2, 2,
836
+ 5, 45, 6, 55, 25, 72, 72, 2, 36, 18,
837
+ 36, 36, 36, 21, 61, 3, 3, 37, 24, 37,
838
+ 27, 37, 28, 36, 51, 13, 13, 13, 33, 76,
839
+ 38, 76, 76, 76, 39, 25, 36, 71, 40, 41,
840
+ 15, 25, 25, 66, 34, 34, 34, 43, 44, 46,
841
+ 2, 50, 65, 54, 57, 58, 59, 63, 67, 77,
842
+ nil, 47, nil, nil, nil, nil, 76, nil, 36, nil,
834
843
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
835
844
  nil, nil, nil, 2, nil, nil, nil, nil, nil, nil,
836
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 53,
837
- nil, nil, 35, 64, nil, 22, nil, nil, nil, nil,
845
+ nil, nil, nil, nil, nil, nil, nil, nil, 53, nil,
846
+ nil, 64, 35, nil, nil, 22, nil, nil, nil, nil,
838
847
  nil, nil, nil, nil, 2, 2, 2, 2, nil, nil,
839
- 49, 60, nil, nil, 2, 2, 2, nil, 2, 2,
840
- 2, 49, nil, 16, 16, nil, 2, 2, nil, 2,
841
- 60, nil, nil, nil, 2, nil, 22, 22, 22, nil,
842
- nil, nil, nil, nil, 2, 2, 2, nil, nil, nil,
843
- 2, nil, nil, nil, nil, 2, nil, nil, nil, nil,
848
+ 49, nil, nil, 60, 2, 2, 2, nil, 2, 2,
849
+ 2, 49, nil, nil, nil, nil, 2, 2, nil, 2,
850
+ 16, 16, 60, nil, 2, nil, nil, nil, 22, 22,
851
+ 22, nil, nil, nil, nil, nil, 2, 2, 2, nil,
852
+ nil, nil, 2, nil, nil, nil, nil, 2, nil, nil,
844
853
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
845
- nil, nil, nil, 16, nil, nil, nil, nil, nil, nil,
846
- nil, nil, nil, nil, nil, nil, 22, nil, nil, nil,
847
- nil, nil, nil, nil, nil, nil, nil, 22, nil, 2,
848
- 15, nil, nil, 2, 22, nil, 22, nil, nil, nil,
849
- nil, nil, nil, nil, nil, nil, 20, nil, nil, nil,
850
854
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
851
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 20,
852
- nil, nil, nil, nil, nil, nil, 53, nil, nil, nil,
855
+ 16, nil, nil, nil, nil, nil, nil, nil, 22, nil,
856
+ nil, nil, nil, nil, nil, nil, nil, 15, nil, 22,
857
+ nil, 2, nil, nil, nil, 2, 22, nil, 22, nil,
853
858
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
859
+ nil, 20, nil, nil, nil, nil, nil, nil, nil, nil,
854
860
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
855
- nil, nil, nil, nil, nil, nil, 2, 2, 53, nil,
856
- 53, 53, 53, 35, 35, 35, nil, nil, nil, nil,
857
- nil, 20, nil, 53, nil, nil, nil, nil, nil, nil,
858
- nil, nil, nil, nil, 20, 20, 53, nil, nil, 35,
861
+ nil, nil, nil, nil, 20, nil, nil, 53, nil, nil,
859
862
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
860
- 2, nil, 2, nil, 2, nil, nil, nil, 2, nil,
861
- nil, nil, nil, nil, nil, nil, nil, nil, 53, nil,
862
863
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
863
- nil, 2, nil, nil, 2, 2 ]
864
+ nil, nil, nil, nil, nil, nil, nil, nil, 2, 2,
865
+ 53, nil, 53, 53, 53, nil, 35, 35, 35, nil,
866
+ nil, nil, nil, nil, nil, 53, nil, 20, nil, nil,
867
+ nil, nil, nil, nil, nil, nil, nil, nil, 53, nil,
868
+ 20, 20, 35, nil, nil, nil, nil, nil, nil, nil,
869
+ nil, nil, nil, 2, nil, 2, nil, 2, nil, nil,
870
+ nil, 2, nil, nil, nil, nil, nil, nil, nil, nil,
871
+ 53, nil, nil, nil, nil, nil, nil, nil, nil, nil,
872
+ nil, nil, nil, nil, 2, nil, nil, 2, 2 ]
864
873
 
865
874
  racc_goto_pointer = [
866
- nil, 31, -2, 17, 30, 32, 7, nil, nil, nil,
867
- nil, nil, nil, -112, nil, -28, -45, -193, -214, -238,
868
- -24, -206, -32, -234, -232, -247, nil, -219, -210, nil,
869
- nil, nil, nil, -206, -237, -23, -308, -343, -145, -187,
870
- -200, -240, nil, -284, -298, -376, 55, -18, nil, -36,
871
- 41, -148, nil, -26, -167, -238, nil, -177, -25, -81,
872
- -48, -29, nil, 67, -22, -145, -172, -99, nil, nil,
873
- nil, -178, -134, nil, nil, nil, -134, 68 ]
875
+ nil, 32, -2, 21, 34, 36, 8, nil, nil, nil,
876
+ nil, nil, nil, -109, nil, -33, -40, -218, -212, -241,
877
+ -21, -210, -32, -241, -233, -247, nil, -220, -218, nil,
878
+ nil, nil, nil, -212, -241, -23, -309, -319, -152, -191,
879
+ -202, -244, nil, -282, -297, -381, 53, -18, nil, -38,
880
+ 40, -146, nil, -27, -169, -241, nil, -179, -25, -81,
881
+ -48, -33, nil, 67, -24, -144, -174, -101, nil, nil,
882
+ nil, -180, -156, nil, nil, nil, -134, 68 ]
874
883
 
875
884
  racc_goto_default = [
876
- nil, nil, 44, nil, nil, 411, 309, 107, 108, 109,
877
- 110, 111, 112, nil, 36, 297, 115, nil, nil, nil,
878
- nil, nil, 31, nil, 276, 24, 299, 300, 301, 302,
879
- 303, 304, 305, 308, nil, 144, nil, nil, nil, nil,
880
- nil, nil, 321, nil, nil, nil, nil, nil, 51, nil,
881
- nil, 52, 345, 145, nil, nil, 271, nil, nil, nil,
885
+ nil, nil, 44, nil, nil, 414, 311, 107, 108, 109,
886
+ 110, 111, 112, nil, 36, 299, 115, nil, nil, nil,
887
+ nil, nil, 31, nil, 278, 24, 301, 302, 303, 304,
888
+ 305, 306, 307, 310, nil, 144, nil, nil, nil, nil,
889
+ nil, nil, 323, nil, nil, nil, nil, nil, 51, nil,
890
+ nil, 52, 347, 145, nil, nil, 273, nil, nil, nil,
882
891
  7, nil, 29, nil, nil, 158, 146, 147, 148, 149,
883
892
  150, 151, 152, 153, 154, 155, nil, nil ]
884
893
 
885
894
  racc_reduce_table = [
886
895
  0, 0, :racc_error,
887
- 3, 82, :_reduce_1,
888
- 3, 82, :_reduce_2,
889
- 3, 82, :_reduce_3,
890
- 0, 84, :_reduce_none,
891
- 1, 84, :_reduce_none,
892
- 0, 85, :_reduce_6,
893
- 2, 85, :_reduce_7,
894
- 1, 87, :_reduce_none,
895
- 1, 87, :_reduce_none,
896
- 1, 87, :_reduce_none,
897
- 1, 87, :_reduce_none,
898
- 1, 87, :_reduce_none,
899
- 1, 87, :_reduce_none,
900
- 0, 94, :_reduce_14,
901
- 0, 95, :_reduce_15,
902
- 0, 96, :_reduce_16,
903
- 2, 96, :_reduce_17,
904
- 8, 93, :_reduce_18,
905
- 0, 99, :_reduce_19,
906
- 2, 99, :_reduce_20,
907
- 5, 99, :_reduce_21,
908
- 8, 92, :_reduce_22,
909
- 8, 92, :_reduce_23,
910
- 0, 102, :_reduce_24,
911
- 2, 102, :_reduce_25,
912
- 1, 104, :_reduce_26,
913
- 3, 104, :_reduce_27,
914
- 4, 105, :_reduce_28,
915
- 1, 105, :_reduce_29,
916
- 0, 100, :_reduce_30,
917
- 2, 100, :_reduce_31,
918
- 1, 107, :_reduce_none,
919
- 1, 107, :_reduce_none,
920
- 1, 107, :_reduce_none,
921
- 1, 107, :_reduce_none,
922
- 1, 107, :_reduce_none,
923
- 1, 107, :_reduce_none,
924
- 1, 107, :_reduce_38,
925
- 1, 107, :_reduce_39,
926
- 1, 107, :_reduce_none,
927
- 1, 107, :_reduce_none,
928
- 0, 115, :_reduce_42,
929
- 2, 115, :_reduce_43,
930
- 5, 113, :_reduce_44,
931
- 7, 113, :_reduce_45,
932
- 5, 113, :_reduce_46,
933
- 7, 113, :_reduce_47,
934
- 5, 113, :_reduce_48,
935
- 7, 113, :_reduce_49,
936
- 0, 118, :_reduce_50,
937
- 2, 118, :_reduce_51,
938
- 3, 118, :_reduce_52,
939
- 3, 112, :_reduce_53,
940
- 3, 112, :_reduce_54,
941
- 5, 112, :_reduce_55,
942
- 7, 91, :_reduce_56,
943
- 0, 120, :_reduce_57,
944
- 2, 120, :_reduce_58,
945
- 1, 121, :_reduce_59,
946
- 1, 121, :_reduce_60,
947
- 1, 121, :_reduce_none,
948
- 3, 109, :_reduce_62,
949
- 6, 109, :_reduce_63,
950
- 3, 110, :_reduce_64,
951
- 6, 110, :_reduce_65,
952
- 3, 111, :_reduce_66,
953
- 6, 111, :_reduce_67,
954
- 0, 122, :_reduce_68,
955
- 1, 122, :_reduce_69,
956
- 7, 108, :_reduce_70,
957
- 0, 123, :_reduce_none,
958
- 2, 123, :_reduce_72,
959
- 0, 124, :_reduce_73,
960
- 2, 124, :_reduce_74,
961
- 2, 124, :_reduce_75,
962
- 1, 126, :_reduce_76,
963
- 1, 126, :_reduce_77,
964
- 3, 126, :_reduce_78,
965
- 3, 86, :_reduce_79,
966
- 0, 129, :_reduce_80,
967
- 3, 129, :_reduce_81,
968
- 3, 131, :_reduce_82,
969
- 4, 131, :_reduce_83,
970
- 1, 125, :_reduce_84,
971
- 2, 125, :_reduce_85,
972
- 1, 117, :_reduce_none,
973
- 1, 117, :_reduce_none,
974
- 1, 117, :_reduce_none,
975
- 1, 117, :_reduce_none,
976
- 1, 117, :_reduce_none,
977
- 1, 117, :_reduce_none,
978
- 1, 117, :_reduce_none,
979
- 1, 117, :_reduce_none,
980
- 1, 117, :_reduce_none,
981
- 2, 117, :_reduce_95,
982
- 2, 117, :_reduce_96,
983
- 1, 117, :_reduce_none,
984
- 1, 117, :_reduce_none,
985
- 1, 117, :_reduce_none,
986
- 1, 133, :_reduce_none,
987
- 1, 133, :_reduce_none,
988
- 1, 133, :_reduce_none,
989
- 1, 133, :_reduce_none,
990
- 1, 134, :_reduce_none,
991
- 1, 134, :_reduce_none,
992
- 1, 134, :_reduce_none,
993
- 1, 134, :_reduce_none,
994
- 1, 134, :_reduce_none,
995
- 1, 134, :_reduce_none,
996
- 1, 134, :_reduce_none,
997
- 1, 134, :_reduce_none,
998
- 1, 134, :_reduce_none,
999
- 1, 134, :_reduce_none,
1000
- 1, 134, :_reduce_none,
1001
- 1, 134, :_reduce_none,
1002
- 1, 134, :_reduce_none,
1003
- 1, 134, :_reduce_none,
1004
- 1, 134, :_reduce_none,
1005
- 1, 134, :_reduce_none,
1006
- 1, 134, :_reduce_none,
1007
- 1, 134, :_reduce_none,
1008
- 1, 134, :_reduce_none,
1009
- 1, 134, :_reduce_none,
1010
- 1, 134, :_reduce_none,
1011
- 1, 134, :_reduce_none,
1012
- 1, 134, :_reduce_none,
1013
- 1, 134, :_reduce_none,
1014
- 1, 134, :_reduce_none,
1015
- 1, 134, :_reduce_none,
1016
- 1, 134, :_reduce_none,
1017
- 1, 134, :_reduce_none,
1018
- 1, 134, :_reduce_none,
1019
- 1, 134, :_reduce_none,
1020
- 1, 134, :_reduce_none,
1021
- 1, 134, :_reduce_none,
1022
- 1, 134, :_reduce_none,
1023
- 0, 98, :_reduce_137,
1024
- 3, 98, :_reduce_138,
1025
- 1, 135, :_reduce_139,
1026
- 3, 135, :_reduce_140,
1027
- 3, 136, :_reduce_141,
1028
- 0, 138, :_reduce_142,
1029
- 1, 138, :_reduce_143,
1030
- 1, 138, :_reduce_144,
1031
- 0, 137, :_reduce_145,
1032
- 1, 137, :_reduce_146,
1033
- 0, 127, :_reduce_147,
1034
- 3, 127, :_reduce_148,
1035
- 1, 139, :_reduce_149,
1036
- 3, 139, :_reduce_150,
1037
- 4, 114, :_reduce_151,
1038
- 8, 114, :_reduce_152,
1039
- 5, 88, :_reduce_153,
1040
- 3, 89, :_reduce_154,
1041
- 3, 89, :_reduce_155,
1042
- 3, 90, :_reduce_156,
1043
- 1, 83, :_reduce_none,
1044
- 3, 83, :_reduce_158,
1045
- 3, 83, :_reduce_159,
1046
- 1, 141, :_reduce_160,
1047
- 1, 141, :_reduce_161,
1048
- 1, 141, :_reduce_162,
1049
- 1, 141, :_reduce_163,
1050
- 1, 141, :_reduce_164,
1051
- 1, 141, :_reduce_165,
1052
- 1, 141, :_reduce_166,
1053
- 1, 141, :_reduce_167,
1054
- 1, 141, :_reduce_168,
1055
- 1, 141, :_reduce_169,
1056
- 1, 141, :_reduce_170,
1057
- 1, 141, :_reduce_171,
1058
- 1, 141, :_reduce_172,
1059
- 1, 141, :_reduce_173,
1060
- 1, 141, :_reduce_174,
1061
- 1, 141, :_reduce_175,
1062
- 1, 141, :_reduce_176,
1063
- 4, 141, :_reduce_177,
1064
- 2, 141, :_reduce_178,
1065
- 4, 141, :_reduce_179,
1066
- 3, 141, :_reduce_180,
1067
- 4, 141, :_reduce_181,
1068
- 2, 141, :_reduce_182,
1069
- 2, 141, :_reduce_183,
1070
- 1, 141, :_reduce_none,
1071
- 1, 101, :_reduce_185,
1072
- 3, 101, :_reduce_186,
1073
- 4, 143, :_reduce_187,
1074
- 1, 144, :_reduce_188,
1075
- 3, 144, :_reduce_189,
1076
- 3, 145, :_reduce_190,
1077
- 3, 145, :_reduce_191,
1078
- 3, 145, :_reduce_192,
1079
- 2, 145, :_reduce_193,
1080
- 3, 145, :_reduce_194,
1081
- 3, 145, :_reduce_195,
1082
- 3, 145, :_reduce_196,
1083
- 1, 146, :_reduce_none,
1084
- 2, 146, :_reduce_198,
1085
- 1, 116, :_reduce_none,
1086
- 1, 116, :_reduce_none,
1087
- 1, 116, :_reduce_none,
1088
- 1, 116, :_reduce_none,
1089
- 4, 128, :_reduce_203,
1090
- 1, 128, :_reduce_204,
1091
- 5, 132, :_reduce_205,
1092
- 2, 132, :_reduce_206,
1093
- 3, 130, :_reduce_207,
1094
- 1, 130, :_reduce_208,
1095
- 1, 130, :_reduce_none,
1096
- 3, 148, :_reduce_210,
1097
- 1, 148, :_reduce_211,
896
+ 3, 84, :_reduce_1,
897
+ 3, 84, :_reduce_2,
898
+ 3, 84, :_reduce_3,
899
+ 0, 86, :_reduce_none,
900
+ 1, 86, :_reduce_none,
901
+ 0, 87, :_reduce_6,
902
+ 2, 87, :_reduce_7,
903
+ 1, 89, :_reduce_none,
904
+ 1, 89, :_reduce_none,
905
+ 1, 89, :_reduce_none,
906
+ 1, 89, :_reduce_none,
907
+ 1, 89, :_reduce_none,
908
+ 1, 89, :_reduce_none,
909
+ 0, 96, :_reduce_14,
910
+ 0, 97, :_reduce_15,
911
+ 0, 98, :_reduce_16,
912
+ 2, 98, :_reduce_17,
913
+ 8, 95, :_reduce_18,
914
+ 0, 101, :_reduce_19,
915
+ 2, 101, :_reduce_20,
916
+ 5, 101, :_reduce_21,
917
+ 8, 94, :_reduce_22,
918
+ 8, 94, :_reduce_23,
919
+ 0, 104, :_reduce_24,
920
+ 2, 104, :_reduce_25,
921
+ 1, 106, :_reduce_26,
922
+ 3, 106, :_reduce_27,
923
+ 4, 107, :_reduce_28,
924
+ 1, 107, :_reduce_29,
925
+ 0, 102, :_reduce_30,
926
+ 2, 102, :_reduce_31,
927
+ 1, 109, :_reduce_none,
928
+ 1, 109, :_reduce_none,
929
+ 1, 109, :_reduce_none,
930
+ 1, 109, :_reduce_none,
931
+ 1, 109, :_reduce_none,
932
+ 1, 109, :_reduce_none,
933
+ 1, 109, :_reduce_38,
934
+ 1, 109, :_reduce_39,
935
+ 1, 109, :_reduce_none,
936
+ 1, 109, :_reduce_none,
937
+ 0, 117, :_reduce_42,
938
+ 2, 117, :_reduce_43,
939
+ 5, 115, :_reduce_44,
940
+ 7, 115, :_reduce_45,
941
+ 5, 115, :_reduce_46,
942
+ 7, 115, :_reduce_47,
943
+ 5, 115, :_reduce_48,
944
+ 7, 115, :_reduce_49,
945
+ 0, 120, :_reduce_50,
946
+ 2, 120, :_reduce_51,
947
+ 3, 120, :_reduce_52,
948
+ 3, 114, :_reduce_53,
949
+ 3, 114, :_reduce_54,
950
+ 5, 114, :_reduce_55,
951
+ 7, 93, :_reduce_56,
952
+ 0, 122, :_reduce_57,
953
+ 2, 122, :_reduce_58,
954
+ 1, 123, :_reduce_59,
955
+ 1, 123, :_reduce_60,
956
+ 1, 123, :_reduce_none,
957
+ 3, 111, :_reduce_62,
958
+ 6, 111, :_reduce_63,
959
+ 3, 112, :_reduce_64,
960
+ 6, 112, :_reduce_65,
961
+ 3, 113, :_reduce_66,
962
+ 6, 113, :_reduce_67,
963
+ 0, 124, :_reduce_68,
964
+ 1, 124, :_reduce_69,
965
+ 7, 110, :_reduce_70,
966
+ 0, 125, :_reduce_none,
967
+ 2, 125, :_reduce_72,
968
+ 0, 126, :_reduce_73,
969
+ 2, 126, :_reduce_74,
970
+ 2, 126, :_reduce_75,
971
+ 1, 128, :_reduce_76,
972
+ 1, 128, :_reduce_77,
973
+ 3, 128, :_reduce_78,
974
+ 3, 88, :_reduce_79,
975
+ 0, 131, :_reduce_80,
976
+ 3, 131, :_reduce_81,
977
+ 3, 133, :_reduce_82,
978
+ 4, 133, :_reduce_83,
979
+ 1, 127, :_reduce_84,
980
+ 2, 127, :_reduce_85,
981
+ 1, 119, :_reduce_none,
982
+ 1, 119, :_reduce_none,
983
+ 1, 119, :_reduce_none,
984
+ 1, 119, :_reduce_none,
985
+ 1, 119, :_reduce_none,
986
+ 1, 119, :_reduce_none,
987
+ 1, 119, :_reduce_none,
988
+ 1, 119, :_reduce_none,
989
+ 1, 119, :_reduce_none,
990
+ 2, 119, :_reduce_95,
991
+ 2, 119, :_reduce_96,
992
+ 1, 119, :_reduce_none,
993
+ 1, 119, :_reduce_none,
994
+ 1, 119, :_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, 136, :_reduce_none,
1001
+ 1, 136, :_reduce_none,
1002
+ 1, 136, :_reduce_none,
1003
+ 1, 136, :_reduce_none,
1004
+ 1, 136, :_reduce_none,
1005
+ 1, 136, :_reduce_none,
1006
+ 1, 136, :_reduce_none,
1007
+ 1, 136, :_reduce_none,
1008
+ 1, 136, :_reduce_none,
1009
+ 1, 136, :_reduce_none,
1010
+ 1, 136, :_reduce_none,
1011
+ 1, 136, :_reduce_none,
1012
+ 1, 136, :_reduce_none,
1013
+ 1, 136, :_reduce_none,
1014
+ 1, 136, :_reduce_none,
1015
+ 1, 136, :_reduce_none,
1016
+ 1, 136, :_reduce_none,
1017
+ 1, 136, :_reduce_none,
1018
+ 1, 136, :_reduce_none,
1019
+ 1, 136, :_reduce_none,
1020
+ 1, 136, :_reduce_none,
1021
+ 1, 136, :_reduce_none,
1022
+ 1, 136, :_reduce_none,
1023
+ 1, 136, :_reduce_none,
1024
+ 1, 136, :_reduce_none,
1025
+ 1, 136, :_reduce_none,
1026
+ 1, 136, :_reduce_none,
1027
+ 1, 136, :_reduce_none,
1028
+ 1, 136, :_reduce_none,
1029
+ 1, 136, :_reduce_none,
1030
+ 1, 136, :_reduce_none,
1031
+ 1, 136, :_reduce_none,
1032
+ 1, 136, :_reduce_none,
1033
+ 0, 100, :_reduce_138,
1034
+ 3, 100, :_reduce_139,
1035
+ 1, 137, :_reduce_140,
1036
+ 3, 137, :_reduce_141,
1037
+ 3, 138, :_reduce_142,
1038
+ 0, 140, :_reduce_143,
1039
+ 1, 140, :_reduce_144,
1040
+ 1, 140, :_reduce_145,
1041
+ 0, 139, :_reduce_146,
1042
+ 1, 139, :_reduce_147,
1043
+ 0, 129, :_reduce_148,
1044
+ 3, 129, :_reduce_149,
1045
+ 1, 141, :_reduce_150,
1046
+ 3, 141, :_reduce_151,
1047
+ 4, 116, :_reduce_152,
1048
+ 8, 116, :_reduce_153,
1049
+ 5, 90, :_reduce_154,
1050
+ 3, 91, :_reduce_155,
1051
+ 3, 91, :_reduce_156,
1052
+ 3, 92, :_reduce_157,
1053
+ 1, 85, :_reduce_none,
1054
+ 3, 85, :_reduce_159,
1055
+ 3, 85, :_reduce_160,
1056
+ 1, 143, :_reduce_161,
1057
+ 1, 143, :_reduce_162,
1058
+ 1, 143, :_reduce_163,
1059
+ 1, 143, :_reduce_164,
1060
+ 1, 143, :_reduce_165,
1061
+ 1, 143, :_reduce_166,
1062
+ 1, 143, :_reduce_167,
1063
+ 1, 143, :_reduce_168,
1064
+ 1, 143, :_reduce_169,
1065
+ 1, 143, :_reduce_170,
1066
+ 1, 143, :_reduce_171,
1067
+ 1, 143, :_reduce_172,
1068
+ 1, 143, :_reduce_173,
1069
+ 1, 143, :_reduce_174,
1070
+ 1, 143, :_reduce_175,
1071
+ 1, 143, :_reduce_176,
1072
+ 1, 143, :_reduce_177,
1073
+ 4, 143, :_reduce_178,
1074
+ 2, 143, :_reduce_179,
1075
+ 4, 143, :_reduce_180,
1076
+ 3, 143, :_reduce_181,
1077
+ 4, 143, :_reduce_182,
1078
+ 2, 143, :_reduce_183,
1079
+ 2, 143, :_reduce_184,
1080
+ 1, 143, :_reduce_none,
1081
+ 1, 103, :_reduce_186,
1082
+ 3, 103, :_reduce_187,
1083
+ 4, 145, :_reduce_188,
1084
+ 1, 146, :_reduce_189,
1085
+ 3, 146, :_reduce_190,
1086
+ 3, 147, :_reduce_191,
1087
+ 3, 147, :_reduce_192,
1088
+ 3, 147, :_reduce_193,
1089
+ 2, 147, :_reduce_194,
1090
+ 3, 147, :_reduce_195,
1091
+ 3, 147, :_reduce_196,
1092
+ 3, 147, :_reduce_197,
1098
1093
  1, 148, :_reduce_none,
1099
- 3, 150, :_reduce_213,
1100
- 1, 150, :_reduce_214,
1094
+ 2, 148, :_reduce_199,
1095
+ 1, 118, :_reduce_none,
1096
+ 1, 118, :_reduce_none,
1097
+ 1, 118, :_reduce_none,
1098
+ 1, 118, :_reduce_none,
1099
+ 4, 130, :_reduce_204,
1100
+ 1, 130, :_reduce_205,
1101
+ 5, 134, :_reduce_206,
1102
+ 2, 134, :_reduce_207,
1103
+ 3, 132, :_reduce_208,
1104
+ 1, 132, :_reduce_209,
1105
+ 1, 132, :_reduce_none,
1106
+ 3, 150, :_reduce_211,
1107
+ 1, 150, :_reduce_212,
1101
1108
  1, 150, :_reduce_none,
1102
- 3, 152, :_reduce_216,
1103
- 1, 152, :_reduce_217,
1109
+ 3, 152, :_reduce_214,
1110
+ 1, 152, :_reduce_215,
1104
1111
  1, 152, :_reduce_none,
1105
- 0, 153, :_reduce_219,
1106
- 3, 153, :_reduce_220,
1107
- 1, 153, :_reduce_221,
1108
- 3, 153, :_reduce_222,
1109
- 1, 153, :_reduce_223,
1110
- 1, 153, :_reduce_224,
1111
- 2, 147, :_reduce_225,
1112
- 3, 149, :_reduce_226,
1112
+ 3, 154, :_reduce_217,
1113
+ 1, 154, :_reduce_218,
1114
+ 1, 154, :_reduce_none,
1115
+ 0, 155, :_reduce_220,
1116
+ 3, 155, :_reduce_221,
1117
+ 1, 155, :_reduce_222,
1118
+ 3, 155, :_reduce_223,
1119
+ 1, 155, :_reduce_224,
1120
+ 1, 155, :_reduce_225,
1121
+ 2, 149, :_reduce_226,
1113
1122
  3, 151, :_reduce_227,
1114
- 3, 154, :_reduce_228,
1115
- 4, 155, :_reduce_229,
1116
- 3, 156, :_reduce_230,
1117
- 0, 157, :_reduce_none,
1118
- 1, 157, :_reduce_none,
1119
- 1, 157, :_reduce_none,
1120
- 1, 157, :_reduce_none,
1121
- 2, 106, :_reduce_235,
1122
- 1, 158, :_reduce_none,
1123
- 1, 158, :_reduce_none,
1124
- 1, 158, :_reduce_none,
1125
- 2, 119, :_reduce_239,
1126
- 2, 97, :_reduce_240,
1127
- 2, 140, :_reduce_241,
1128
- 0, 103, :_reduce_242,
1129
- 1, 103, :_reduce_243,
1130
- 2, 103, :_reduce_244,
1131
- 1, 103, :_reduce_245,
1132
- 1, 142, :_reduce_none,
1133
- 0, 142, :_reduce_none ]
1134
-
1135
- racc_reduce_n = 248
1136
-
1137
- racc_shift_n = 422
1123
+ 3, 153, :_reduce_228,
1124
+ 3, 156, :_reduce_229,
1125
+ 4, 157, :_reduce_230,
1126
+ 3, 158, :_reduce_231,
1127
+ 0, 159, :_reduce_none,
1128
+ 1, 159, :_reduce_none,
1129
+ 1, 159, :_reduce_none,
1130
+ 1, 159, :_reduce_none,
1131
+ 1, 159, :_reduce_none,
1132
+ 1, 159, :_reduce_none,
1133
+ 2, 108, :_reduce_238,
1134
+ 1, 160, :_reduce_none,
1135
+ 1, 160, :_reduce_none,
1136
+ 1, 160, :_reduce_none,
1137
+ 2, 121, :_reduce_242,
1138
+ 2, 99, :_reduce_243,
1139
+ 2, 142, :_reduce_244,
1140
+ 0, 105, :_reduce_245,
1141
+ 1, 105, :_reduce_246,
1142
+ 2, 105, :_reduce_247,
1143
+ 1, 105, :_reduce_248,
1144
+ 1, 144, :_reduce_none,
1145
+ 0, 144, :_reduce_none ]
1146
+
1147
+ racc_reduce_n = 251
1148
+
1149
+ racc_shift_n = 425
1138
1150
 
1139
1151
  racc_token_table = {
1140
1152
  false => 0,
1141
1153
  :error => 1,
1142
1154
  :tUIDENT => 2,
1143
1155
  :tLIDENT => 3,
1144
- :tNAMESPACE => 4,
1145
- :tINTERFACEIDENT => 5,
1146
- :tGLOBALIDENT => 6,
1147
- :tLKEYWORD => 7,
1148
- :tUKEYWORD => 8,
1149
- :tLKEYWORD_Q_E => 9,
1150
- :tUKEYWORD_Q_E => 10,
1151
- :tIVAR => 11,
1152
- :tCLASSVAR => 12,
1153
- :tANNOTATION => 13,
1154
- :tSTRING => 14,
1155
- :tSYMBOL => 15,
1156
- :tINTEGER => 16,
1157
- :tWRITE_ATTR => 17,
1158
- :kLPAREN => 18,
1159
- :kRPAREN => 19,
1160
- :kLBRACKET => 20,
1161
- :kRBRACKET => 21,
1162
- :kLBRACE => 22,
1163
- :kRBRACE => 23,
1164
- :kVOID => 24,
1165
- :kNIL => 25,
1166
- :kTRUE => 26,
1167
- :kFALSE => 27,
1168
- :kANY => 28,
1169
- :kUNTYPED => 29,
1170
- :kTOP => 30,
1171
- :kBOT => 31,
1172
- :kSELF => 32,
1173
- :kSELFQ => 33,
1174
- :kINSTANCE => 34,
1175
- :kCLASS => 35,
1176
- :kBOOL => 36,
1177
- :kSINGLETON => 37,
1178
- :kTYPE => 38,
1179
- :kDEF => 39,
1180
- :kMODULE => 40,
1181
- :kPRIVATE => 41,
1182
- :kPUBLIC => 42,
1183
- :kALIAS => 43,
1184
- :kCOLON => 44,
1185
- :kCOLON2 => 45,
1186
- :kCOMMA => 46,
1187
- :kBAR => 47,
1188
- :kAMP => 48,
1189
- :kHAT => 49,
1190
- :kARROW => 50,
1191
- :kQUESTION => 51,
1192
- :kEXCLAMATION => 52,
1193
- :kSTAR => 53,
1194
- :kSTAR2 => 54,
1195
- :kFATARROW => 55,
1196
- :kEQ => 56,
1197
- :kDOT => 57,
1198
- :kDOT3 => 58,
1199
- :kLT => 59,
1200
- :kINTERFACE => 60,
1201
- :kEND => 61,
1202
- :kINCLUDE => 62,
1203
- :kEXTEND => 63,
1204
- :kATTRREADER => 64,
1205
- :kATTRWRITER => 65,
1206
- :kATTRACCESSOR => 66,
1207
- :tOPERATOR => 67,
1208
- :tQUOTEDMETHOD => 68,
1209
- :tQUOTEDIDENT => 69,
1210
- :kPREPEND => 70,
1211
- :kEXTENSION => 71,
1212
- :kINCOMPATIBLE => 72,
1213
- :type_TYPE => 73,
1214
- :type_SIGNATURE => 74,
1215
- :type_METHODTYPE => 75,
1216
- :tEOF => 76,
1217
- :kOUT => 77,
1218
- :kIN => 78,
1219
- :kUNCHECKED => 79,
1220
- :kOVERLOAD => 80 }
1221
-
1222
- racc_nt_base = 81
1156
+ :tUNDERSCOREIDENT => 4,
1157
+ :tNAMESPACE => 5,
1158
+ :tINTERFACEIDENT => 6,
1159
+ :tGLOBALIDENT => 7,
1160
+ :tLKEYWORD => 8,
1161
+ :tUKEYWORD => 9,
1162
+ :tLKEYWORD_Q_E => 10,
1163
+ :tUKEYWORD_Q_E => 11,
1164
+ :tIVAR => 12,
1165
+ :tCLASSVAR => 13,
1166
+ :tANNOTATION => 14,
1167
+ :tSTRING => 15,
1168
+ :tSYMBOL => 16,
1169
+ :tINTEGER => 17,
1170
+ :tWRITE_ATTR => 18,
1171
+ :kLPAREN => 19,
1172
+ :kRPAREN => 20,
1173
+ :kLBRACKET => 21,
1174
+ :kRBRACKET => 22,
1175
+ :kLBRACE => 23,
1176
+ :kRBRACE => 24,
1177
+ :kVOID => 25,
1178
+ :kNIL => 26,
1179
+ :kTRUE => 27,
1180
+ :kFALSE => 28,
1181
+ :kANY => 29,
1182
+ :kUNTYPED => 30,
1183
+ :kTOP => 31,
1184
+ :kBOT => 32,
1185
+ :kSELF => 33,
1186
+ :kSELFQ => 34,
1187
+ :kINSTANCE => 35,
1188
+ :kCLASS => 36,
1189
+ :kBOOL => 37,
1190
+ :kSINGLETON => 38,
1191
+ :kTYPE => 39,
1192
+ :kDEF => 40,
1193
+ :kMODULE => 41,
1194
+ :kPRIVATE => 42,
1195
+ :kPUBLIC => 43,
1196
+ :kALIAS => 44,
1197
+ :kCOLON => 45,
1198
+ :kCOLON2 => 46,
1199
+ :kCOMMA => 47,
1200
+ :kBAR => 48,
1201
+ :kAMP => 49,
1202
+ :kHAT => 50,
1203
+ :kARROW => 51,
1204
+ :kQUESTION => 52,
1205
+ :kEXCLAMATION => 53,
1206
+ :kSTAR => 54,
1207
+ :kSTAR2 => 55,
1208
+ :kFATARROW => 56,
1209
+ :kEQ => 57,
1210
+ :kDOT => 58,
1211
+ :kDOT3 => 59,
1212
+ :kLT => 60,
1213
+ :kINTERFACE => 61,
1214
+ :kEND => 62,
1215
+ :kINCLUDE => 63,
1216
+ :kEXTEND => 64,
1217
+ :kATTRREADER => 65,
1218
+ :kATTRWRITER => 66,
1219
+ :kATTRACCESSOR => 67,
1220
+ :tOPERATOR => 68,
1221
+ :tQUOTEDMETHOD => 69,
1222
+ :tQUOTEDIDENT => 70,
1223
+ :kPREPEND => 71,
1224
+ :kEXTENSION => 72,
1225
+ :kINCOMPATIBLE => 73,
1226
+ :type_TYPE => 74,
1227
+ :type_SIGNATURE => 75,
1228
+ :type_METHODTYPE => 76,
1229
+ :tEOF => 77,
1230
+ :kOUT => 78,
1231
+ :kIN => 79,
1232
+ :kUNCHECKED => 80,
1233
+ :kOVERLOAD => 81,
1234
+ :tPARAMNAME => 82 }
1235
+
1236
+ racc_nt_base = 83
1223
1237
 
1224
1238
  racc_use_result_var = true
1225
1239
 
@@ -1244,6 +1258,7 @@ Racc_token_to_s_table = [
1244
1258
  "error",
1245
1259
  "tUIDENT",
1246
1260
  "tLIDENT",
1261
+ "tUNDERSCOREIDENT",
1247
1262
  "tNAMESPACE",
1248
1263
  "tINTERFACEIDENT",
1249
1264
  "tGLOBALIDENT",
@@ -1321,6 +1336,7 @@ Racc_token_to_s_table = [
1321
1336
  "kIN",
1322
1337
  "kUNCHECKED",
1323
1338
  "kOVERLOAD",
1339
+ "tPARAMNAME",
1324
1340
  "$start",
1325
1341
  "target",
1326
1342
  "type",
@@ -1406,7 +1422,7 @@ Racc_debug_parser = false
1406
1422
 
1407
1423
  # reduce 0 omitted
1408
1424
 
1409
- module_eval(<<'.,.,', 'parser.y', 28)
1425
+ module_eval(<<'.,.,', 'parser.y', 29)
1410
1426
  def _reduce_1(val, _values, result)
1411
1427
  result = val[1]
1412
1428
 
@@ -1414,7 +1430,7 @@ module_eval(<<'.,.,', 'parser.y', 28)
1414
1430
  end
1415
1431
  .,.,
1416
1432
 
1417
- module_eval(<<'.,.,', 'parser.y', 31)
1433
+ module_eval(<<'.,.,', 'parser.y', 32)
1418
1434
  def _reduce_2(val, _values, result)
1419
1435
  result = val[1]
1420
1436
 
@@ -1422,7 +1438,7 @@ module_eval(<<'.,.,', 'parser.y', 31)
1422
1438
  end
1423
1439
  .,.,
1424
1440
 
1425
- module_eval(<<'.,.,', 'parser.y', 34)
1441
+ module_eval(<<'.,.,', 'parser.y', 35)
1426
1442
  def _reduce_3(val, _values, result)
1427
1443
  result = val[1]
1428
1444
 
@@ -1434,14 +1450,14 @@ module_eval(<<'.,.,', 'parser.y', 34)
1434
1450
 
1435
1451
  # reduce 5 omitted
1436
1452
 
1437
- module_eval(<<'.,.,', 'parser.y', 40)
1453
+ module_eval(<<'.,.,', 'parser.y', 41)
1438
1454
  def _reduce_6(val, _values, result)
1439
1455
  result = []
1440
1456
  result
1441
1457
  end
1442
1458
  .,.,
1443
1459
 
1444
- module_eval(<<'.,.,', 'parser.y', 42)
1460
+ module_eval(<<'.,.,', 'parser.y', 43)
1445
1461
  def _reduce_7(val, _values, result)
1446
1462
  result = val[0].push(val[1])
1447
1463
 
@@ -1461,28 +1477,28 @@ module_eval(<<'.,.,', 'parser.y', 42)
1461
1477
 
1462
1478
  # reduce 13 omitted
1463
1479
 
1464
- module_eval(<<'.,.,', 'parser.y', 53)
1480
+ module_eval(<<'.,.,', 'parser.y', 54)
1465
1481
  def _reduce_14(val, _values, result)
1466
1482
  start_new_variables_scope
1467
1483
  result
1468
1484
  end
1469
1485
  .,.,
1470
1486
 
1471
- module_eval(<<'.,.,', 'parser.y', 54)
1487
+ module_eval(<<'.,.,', 'parser.y', 55)
1472
1488
  def _reduce_15(val, _values, result)
1473
1489
  start_merged_variables_scope
1474
1490
  result
1475
1491
  end
1476
1492
  .,.,
1477
1493
 
1478
- module_eval(<<'.,.,', 'parser.y', 57)
1494
+ module_eval(<<'.,.,', 'parser.y', 58)
1479
1495
  def _reduce_16(val, _values, result)
1480
1496
  result = []
1481
1497
  result
1482
1498
  end
1483
1499
  .,.,
1484
1500
 
1485
- module_eval(<<'.,.,', 'parser.y', 59)
1501
+ module_eval(<<'.,.,', 'parser.y', 60)
1486
1502
  def _reduce_17(val, _values, result)
1487
1503
  result = val[1].unshift(Annotation.new(string: val[0].value, location: val[0].location))
1488
1504
 
@@ -1490,7 +1506,7 @@ module_eval(<<'.,.,', 'parser.y', 59)
1490
1506
  end
1491
1507
  .,.,
1492
1508
 
1493
- module_eval(<<'.,.,', 'parser.y', 64)
1509
+ module_eval(<<'.,.,', 'parser.y', 65)
1494
1510
  def _reduce_18(val, _values, result)
1495
1511
  reset_variable_scope
1496
1512
 
@@ -1520,14 +1536,14 @@ module_eval(<<'.,.,', 'parser.y', 64)
1520
1536
  end
1521
1537
  .,.,
1522
1538
 
1523
- module_eval(<<'.,.,', 'parser.y', 90)
1539
+ module_eval(<<'.,.,', 'parser.y', 91)
1524
1540
  def _reduce_19(val, _values, result)
1525
1541
  result = nil
1526
1542
  result
1527
1543
  end
1528
1544
  .,.,
1529
1545
 
1530
- module_eval(<<'.,.,', 'parser.y', 92)
1546
+ module_eval(<<'.,.,', 'parser.y', 93)
1531
1547
  def _reduce_20(val, _values, result)
1532
1548
  loc = val[1].location.with_children(
1533
1549
  required: { name: val[1].location },
@@ -1540,7 +1556,7 @@ module_eval(<<'.,.,', 'parser.y', 92)
1540
1556
  end
1541
1557
  .,.,
1542
1558
 
1543
- module_eval(<<'.,.,', 'parser.y', 100)
1559
+ module_eval(<<'.,.,', 'parser.y', 101)
1544
1560
  def _reduce_21(val, _values, result)
1545
1561
  loc = (val[1].location + val[4].location).with_children(
1546
1562
  required: { name: val[1].location },
@@ -1553,7 +1569,7 @@ module_eval(<<'.,.,', 'parser.y', 100)
1553
1569
  end
1554
1570
  .,.,
1555
1571
 
1556
- module_eval(<<'.,.,', 'parser.y', 110)
1572
+ module_eval(<<'.,.,', 'parser.y', 111)
1557
1573
  def _reduce_22(val, _values, result)
1558
1574
  reset_variable_scope
1559
1575
 
@@ -1596,7 +1612,7 @@ module_eval(<<'.,.,', 'parser.y', 110)
1596
1612
  end
1597
1613
  .,.,
1598
1614
 
1599
- module_eval(<<'.,.,', 'parser.y', 148)
1615
+ module_eval(<<'.,.,', 'parser.y', 149)
1600
1616
  def _reduce_23(val, _values, result)
1601
1617
  reset_variable_scope
1602
1618
 
@@ -1629,14 +1645,14 @@ module_eval(<<'.,.,', 'parser.y', 148)
1629
1645
  end
1630
1646
  .,.,
1631
1647
 
1632
- module_eval(<<'.,.,', 'parser.y', 177)
1648
+ module_eval(<<'.,.,', 'parser.y', 178)
1633
1649
  def _reduce_24(val, _values, result)
1634
1650
  result = LocatedValue.new(value: [], location: nil)
1635
1651
  result
1636
1652
  end
1637
1653
  .,.,
1638
1654
 
1639
- module_eval(<<'.,.,', 'parser.y', 179)
1655
+ module_eval(<<'.,.,', 'parser.y', 180)
1640
1656
  def _reduce_25(val, _values, result)
1641
1657
  result = LocatedValue.new(value: val[1], location: val[0].location)
1642
1658
 
@@ -1644,7 +1660,7 @@ module_eval(<<'.,.,', 'parser.y', 179)
1644
1660
  end
1645
1661
  .,.,
1646
1662
 
1647
- module_eval(<<'.,.,', 'parser.y', 184)
1663
+ module_eval(<<'.,.,', 'parser.y', 185)
1648
1664
  def _reduce_26(val, _values, result)
1649
1665
  result = [val[0]]
1650
1666
 
@@ -1652,7 +1668,7 @@ module_eval(<<'.,.,', 'parser.y', 184)
1652
1668
  end
1653
1669
  .,.,
1654
1670
 
1655
- module_eval(<<'.,.,', 'parser.y', 187)
1671
+ module_eval(<<'.,.,', 'parser.y', 188)
1656
1672
  def _reduce_27(val, _values, result)
1657
1673
  result = val[0].push(val[2])
1658
1674
 
@@ -1660,7 +1676,7 @@ module_eval(<<'.,.,', 'parser.y', 187)
1660
1676
  end
1661
1677
  .,.,
1662
1678
 
1663
- module_eval(<<'.,.,', 'parser.y', 192)
1679
+ module_eval(<<'.,.,', 'parser.y', 193)
1664
1680
  def _reduce_28(val, _values, result)
1665
1681
  name = val[0].value
1666
1682
  args = val[2]
@@ -1683,7 +1699,7 @@ module_eval(<<'.,.,', 'parser.y', 192)
1683
1699
  end
1684
1700
  .,.,
1685
1701
 
1686
- module_eval(<<'.,.,', 'parser.y', 210)
1702
+ module_eval(<<'.,.,', 'parser.y', 211)
1687
1703
  def _reduce_29(val, _values, result)
1688
1704
  name = val[0].value
1689
1705
  args = []
@@ -1705,14 +1721,14 @@ module_eval(<<'.,.,', 'parser.y', 210)
1705
1721
  end
1706
1722
  .,.,
1707
1723
 
1708
- module_eval(<<'.,.,', 'parser.y', 228)
1724
+ module_eval(<<'.,.,', 'parser.y', 229)
1709
1725
  def _reduce_30(val, _values, result)
1710
1726
  result = []
1711
1727
  result
1712
1728
  end
1713
1729
  .,.,
1714
1730
 
1715
- module_eval(<<'.,.,', 'parser.y', 230)
1731
+ module_eval(<<'.,.,', 'parser.y', 231)
1716
1732
  def _reduce_31(val, _values, result)
1717
1733
  result = val[0].push(val[1])
1718
1734
 
@@ -1732,7 +1748,7 @@ module_eval(<<'.,.,', 'parser.y', 230)
1732
1748
 
1733
1749
  # reduce 37 omitted
1734
1750
 
1735
- module_eval(<<'.,.,', 'parser.y', 241)
1751
+ module_eval(<<'.,.,', 'parser.y', 242)
1736
1752
  def _reduce_38(val, _values, result)
1737
1753
  result = Members::Public.new(location: val[0].location)
1738
1754
 
@@ -1740,7 +1756,7 @@ module_eval(<<'.,.,', 'parser.y', 241)
1740
1756
  end
1741
1757
  .,.,
1742
1758
 
1743
- module_eval(<<'.,.,', 'parser.y', 244)
1759
+ module_eval(<<'.,.,', 'parser.y', 245)
1744
1760
  def _reduce_39(val, _values, result)
1745
1761
  result = Members::Private.new(location: val[0].location)
1746
1762
 
@@ -1752,21 +1768,21 @@ module_eval(<<'.,.,', 'parser.y', 244)
1752
1768
 
1753
1769
  # reduce 41 omitted
1754
1770
 
1755
- module_eval(<<'.,.,', 'parser.y', 250)
1771
+ module_eval(<<'.,.,', 'parser.y', 251)
1756
1772
  def _reduce_42(val, _values, result)
1757
1773
  result = LocatedValue.new(value: :instance, location: nil)
1758
1774
  result
1759
1775
  end
1760
1776
  .,.,
1761
1777
 
1762
- module_eval(<<'.,.,', 'parser.y', 251)
1778
+ module_eval(<<'.,.,', 'parser.y', 252)
1763
1779
  def _reduce_43(val, _values, result)
1764
1780
  result = LocatedValue.new(value: :singleton, location: val[0].location + val[1].location)
1765
1781
  result
1766
1782
  end
1767
1783
  .,.,
1768
1784
 
1769
- module_eval(<<'.,.,', 'parser.y', 255)
1785
+ module_eval(<<'.,.,', 'parser.y', 256)
1770
1786
  def _reduce_44(val, _values, result)
1771
1787
  location = val[1].location + val[4].location
1772
1788
  name_loc, colon_loc = split_kw_loc(val[3].location)
@@ -1786,7 +1802,7 @@ module_eval(<<'.,.,', 'parser.y', 255)
1786
1802
  end
1787
1803
  .,.,
1788
1804
 
1789
- module_eval(<<'.,.,', 'parser.y', 270)
1805
+ module_eval(<<'.,.,', 'parser.y', 271)
1790
1806
  def _reduce_45(val, _values, result)
1791
1807
  location = val[1].location + val[6].location
1792
1808
  ivar_loc = val[4]&.location
@@ -1817,7 +1833,7 @@ module_eval(<<'.,.,', 'parser.y', 270)
1817
1833
  end
1818
1834
  .,.,
1819
1835
 
1820
- module_eval(<<'.,.,', 'parser.y', 296)
1836
+ module_eval(<<'.,.,', 'parser.y', 297)
1821
1837
  def _reduce_46(val, _values, result)
1822
1838
  location = val[1].location + val[4].location
1823
1839
  name_loc, colon_loc = split_kw_loc(val[3].location)
@@ -1837,7 +1853,7 @@ module_eval(<<'.,.,', 'parser.y', 296)
1837
1853
  end
1838
1854
  .,.,
1839
1855
 
1840
- module_eval(<<'.,.,', 'parser.y', 311)
1856
+ module_eval(<<'.,.,', 'parser.y', 312)
1841
1857
  def _reduce_47(val, _values, result)
1842
1858
  location = val[1].location + val[6].location
1843
1859
  ivar_loc = val[4]&.location
@@ -1869,7 +1885,7 @@ module_eval(<<'.,.,', 'parser.y', 311)
1869
1885
  end
1870
1886
  .,.,
1871
1887
 
1872
- module_eval(<<'.,.,', 'parser.y', 338)
1888
+ module_eval(<<'.,.,', 'parser.y', 339)
1873
1889
  def _reduce_48(val, _values, result)
1874
1890
  location = val[1].location + val[4].location
1875
1891
  name_loc, colon_loc = split_kw_loc(val[3].location)
@@ -1890,7 +1906,7 @@ module_eval(<<'.,.,', 'parser.y', 338)
1890
1906
  end
1891
1907
  .,.,
1892
1908
 
1893
- module_eval(<<'.,.,', 'parser.y', 354)
1909
+ module_eval(<<'.,.,', 'parser.y', 355)
1894
1910
  def _reduce_49(val, _values, result)
1895
1911
  location = val[1].location + val[6].location
1896
1912
  ivar_loc = val[4]&.location
@@ -1922,21 +1938,21 @@ module_eval(<<'.,.,', 'parser.y', 354)
1922
1938
  end
1923
1939
  .,.,
1924
1940
 
1925
- module_eval(<<'.,.,', 'parser.y', 382)
1941
+ module_eval(<<'.,.,', 'parser.y', 383)
1926
1942
  def _reduce_50(val, _values, result)
1927
1943
  result = nil
1928
1944
  result
1929
1945
  end
1930
1946
  .,.,
1931
1947
 
1932
- module_eval(<<'.,.,', 'parser.y', 383)
1948
+ module_eval(<<'.,.,', 'parser.y', 384)
1933
1949
  def _reduce_51(val, _values, result)
1934
1950
  result = LocatedValue.new(value: false, location: val[0].location + val[1].location)
1935
1951
  result
1936
1952
  end
1937
1953
  .,.,
1938
1954
 
1939
- module_eval(<<'.,.,', 'parser.y', 385)
1955
+ module_eval(<<'.,.,', 'parser.y', 386)
1940
1956
  def _reduce_52(val, _values, result)
1941
1957
  result = LocatedValue.new(
1942
1958
  value: val[1],
@@ -1947,7 +1963,7 @@ module_eval(<<'.,.,', 'parser.y', 385)
1947
1963
  end
1948
1964
  .,.,
1949
1965
 
1950
- module_eval(<<'.,.,', 'parser.y', 393)
1966
+ module_eval(<<'.,.,', 'parser.y', 394)
1951
1967
  def _reduce_53(val, _values, result)
1952
1968
  location = (val[0].location + val[2].location).with_children(
1953
1969
  required: { name: val[0].location, colon: val[1].location },
@@ -1965,7 +1981,7 @@ module_eval(<<'.,.,', 'parser.y', 393)
1965
1981
  end
1966
1982
  .,.,
1967
1983
 
1968
- module_eval(<<'.,.,', 'parser.y', 406)
1984
+ module_eval(<<'.,.,', 'parser.y', 407)
1969
1985
  def _reduce_54(val, _values, result)
1970
1986
  type = val[2]
1971
1987
 
@@ -1993,7 +2009,7 @@ module_eval(<<'.,.,', 'parser.y', 406)
1993
2009
  end
1994
2010
  .,.,
1995
2011
 
1996
- module_eval(<<'.,.,', 'parser.y', 429)
2012
+ module_eval(<<'.,.,', 'parser.y', 430)
1997
2013
  def _reduce_55(val, _values, result)
1998
2014
  type = val[4]
1999
2015
 
@@ -2021,7 +2037,7 @@ module_eval(<<'.,.,', 'parser.y', 429)
2021
2037
  end
2022
2038
  .,.,
2023
2039
 
2024
- module_eval(<<'.,.,', 'parser.y', 454)
2040
+ module_eval(<<'.,.,', 'parser.y', 455)
2025
2041
  def _reduce_56(val, _values, result)
2026
2042
  reset_variable_scope
2027
2043
 
@@ -2043,14 +2059,14 @@ module_eval(<<'.,.,', 'parser.y', 454)
2043
2059
  end
2044
2060
  .,.,
2045
2061
 
2046
- module_eval(<<'.,.,', 'parser.y', 472)
2062
+ module_eval(<<'.,.,', 'parser.y', 473)
2047
2063
  def _reduce_57(val, _values, result)
2048
2064
  result = []
2049
2065
  result
2050
2066
  end
2051
2067
  .,.,
2052
2068
 
2053
- module_eval(<<'.,.,', 'parser.y', 474)
2069
+ module_eval(<<'.,.,', 'parser.y', 475)
2054
2070
  def _reduce_58(val, _values, result)
2055
2071
  result = val[0].push(val[1])
2056
2072
 
@@ -2058,7 +2074,7 @@ module_eval(<<'.,.,', 'parser.y', 474)
2058
2074
  end
2059
2075
  .,.,
2060
2076
 
2061
- module_eval(<<'.,.,', 'parser.y', 479)
2077
+ module_eval(<<'.,.,', 'parser.y', 480)
2062
2078
  def _reduce_59(val, _values, result)
2063
2079
  unless val[0].kind == :instance
2064
2080
  raise SemanticsError.new("Interface cannot have singleton method", subject: val[0], location: val[0].location)
@@ -2074,7 +2090,7 @@ module_eval(<<'.,.,', 'parser.y', 479)
2074
2090
  end
2075
2091
  .,.,
2076
2092
 
2077
- module_eval(<<'.,.,', 'parser.y', 490)
2093
+ module_eval(<<'.,.,', 'parser.y', 491)
2078
2094
  def _reduce_60(val, _values, result)
2079
2095
  unless val[0].name.interface?
2080
2096
  raise SemanticsError.new("Interface should include an interface", subject: val[0], location: val[0].location)
@@ -2088,7 +2104,7 @@ module_eval(<<'.,.,', 'parser.y', 490)
2088
2104
 
2089
2105
  # reduce 61 omitted
2090
2106
 
2091
- module_eval(<<'.,.,', 'parser.y', 500)
2107
+ module_eval(<<'.,.,', 'parser.y', 501)
2092
2108
  def _reduce_62(val, _values, result)
2093
2109
  if val[2].value.alias?
2094
2110
  raise SemanticsError.new("Should include module or interface", subject: val[2].value, location: val[2].location)
@@ -2109,7 +2125,7 @@ module_eval(<<'.,.,', 'parser.y', 500)
2109
2125
  end
2110
2126
  .,.,
2111
2127
 
2112
- module_eval(<<'.,.,', 'parser.y', 516)
2128
+ module_eval(<<'.,.,', 'parser.y', 517)
2113
2129
  def _reduce_63(val, _values, result)
2114
2130
  if val[2].value.alias?
2115
2131
  raise SemanticsError.new("Should include module or interface", subject: val[2].value, location: val[2].location)
@@ -2130,7 +2146,7 @@ module_eval(<<'.,.,', 'parser.y', 516)
2130
2146
  end
2131
2147
  .,.,
2132
2148
 
2133
- module_eval(<<'.,.,', 'parser.y', 534)
2149
+ module_eval(<<'.,.,', 'parser.y', 535)
2134
2150
  def _reduce_64(val, _values, result)
2135
2151
  if val[2].value.alias?
2136
2152
  raise SemanticsError.new("Should extend module or interface", subject: val[2].value, location: val[2].location)
@@ -2151,7 +2167,7 @@ module_eval(<<'.,.,', 'parser.y', 534)
2151
2167
  end
2152
2168
  .,.,
2153
2169
 
2154
- module_eval(<<'.,.,', 'parser.y', 550)
2170
+ module_eval(<<'.,.,', 'parser.y', 551)
2155
2171
  def _reduce_65(val, _values, result)
2156
2172
  if val[2].value.alias?
2157
2173
  raise SemanticsError.new("Should extend module or interface", subject: val[2].value, location: val[2].location)
@@ -2172,7 +2188,7 @@ module_eval(<<'.,.,', 'parser.y', 550)
2172
2188
  end
2173
2189
  .,.,
2174
2190
 
2175
- module_eval(<<'.,.,', 'parser.y', 568)
2191
+ module_eval(<<'.,.,', 'parser.y', 569)
2176
2192
  def _reduce_66(val, _values, result)
2177
2193
  unless val[2].value.class?
2178
2194
  raise SemanticsError.new("Should prepend module", subject: val[2].value, location: val[2].location)
@@ -2193,7 +2209,7 @@ module_eval(<<'.,.,', 'parser.y', 568)
2193
2209
  end
2194
2210
  .,.,
2195
2211
 
2196
- module_eval(<<'.,.,', 'parser.y', 584)
2212
+ module_eval(<<'.,.,', 'parser.y', 585)
2197
2213
  def _reduce_67(val, _values, result)
2198
2214
  unless val[2].value.class?
2199
2215
  raise SemanticsError.new("Should prepend module", subject: val[2].value, location: val[2].location)
@@ -2214,14 +2230,14 @@ module_eval(<<'.,.,', 'parser.y', 584)
2214
2230
  end
2215
2231
  .,.,
2216
2232
 
2217
- module_eval(<<'.,.,', 'parser.y', 601)
2233
+ module_eval(<<'.,.,', 'parser.y', 602)
2218
2234
  def _reduce_68(val, _values, result)
2219
2235
  result = nil
2220
2236
  result
2221
2237
  end
2222
2238
  .,.,
2223
2239
 
2224
- module_eval(<<'.,.,', 'parser.y', 603)
2240
+ module_eval(<<'.,.,', 'parser.y', 604)
2225
2241
  def _reduce_69(val, _values, result)
2226
2242
  RBS.logger.warn "`overload def` syntax is deprecated. Use `...` syntax instead."
2227
2243
  result = val[0]
@@ -2230,7 +2246,7 @@ module_eval(<<'.,.,', 'parser.y', 603)
2230
2246
  end
2231
2247
  .,.,
2232
2248
 
2233
- module_eval(<<'.,.,', 'parser.y', 609)
2249
+ module_eval(<<'.,.,', 'parser.y', 610)
2234
2250
  def _reduce_70(val, _values, result)
2235
2251
  location = val[3].location + val[6].last.location
2236
2252
 
@@ -2269,7 +2285,7 @@ module_eval(<<'.,.,', 'parser.y', 609)
2269
2285
 
2270
2286
  # reduce 71 omitted
2271
2287
 
2272
- module_eval(<<'.,.,', 'parser.y', 643)
2288
+ module_eval(<<'.,.,', 'parser.y', 644)
2273
2289
  def _reduce_72(val, _values, result)
2274
2290
  RBS.logger.warn "`incompatible` method attribute is deprecated and ignored."
2275
2291
 
@@ -2277,42 +2293,42 @@ module_eval(<<'.,.,', 'parser.y', 643)
2277
2293
  end
2278
2294
  .,.,
2279
2295
 
2280
- module_eval(<<'.,.,', 'parser.y', 647)
2296
+ module_eval(<<'.,.,', 'parser.y', 648)
2281
2297
  def _reduce_73(val, _values, result)
2282
2298
  result = nil
2283
2299
  result
2284
2300
  end
2285
2301
  .,.,
2286
2302
 
2287
- module_eval(<<'.,.,', 'parser.y', 648)
2303
+ module_eval(<<'.,.,', 'parser.y', 649)
2288
2304
  def _reduce_74(val, _values, result)
2289
2305
  result = LocatedValue.new(value: :singleton, location: val[0].location + val[1].location)
2290
2306
  result
2291
2307
  end
2292
2308
  .,.,
2293
2309
 
2294
- module_eval(<<'.,.,', 'parser.y', 649)
2310
+ module_eval(<<'.,.,', 'parser.y', 650)
2295
2311
  def _reduce_75(val, _values, result)
2296
2312
  result = LocatedValue.new(value: :singleton_instance, location: val[0].location + val[1].location)
2297
2313
  result
2298
2314
  end
2299
2315
  .,.,
2300
2316
 
2301
- module_eval(<<'.,.,', 'parser.y', 652)
2317
+ module_eval(<<'.,.,', 'parser.y', 653)
2302
2318
  def _reduce_76(val, _values, result)
2303
2319
  result = [val[0]]
2304
2320
  result
2305
2321
  end
2306
2322
  .,.,
2307
2323
 
2308
- module_eval(<<'.,.,', 'parser.y', 653)
2324
+ module_eval(<<'.,.,', 'parser.y', 654)
2309
2325
  def _reduce_77(val, _values, result)
2310
2326
  result = [LocatedValue.new(value: :dot3, location: val[0].location)]
2311
2327
  result
2312
2328
  end
2313
2329
  .,.,
2314
2330
 
2315
- module_eval(<<'.,.,', 'parser.y', 655)
2331
+ module_eval(<<'.,.,', 'parser.y', 656)
2316
2332
  def _reduce_78(val, _values, result)
2317
2333
  result = val[2].unshift(val[0])
2318
2334
 
@@ -2320,7 +2336,7 @@ module_eval(<<'.,.,', 'parser.y', 655)
2320
2336
  end
2321
2337
  .,.,
2322
2338
 
2323
- module_eval(<<'.,.,', 'parser.y', 660)
2339
+ module_eval(<<'.,.,', 'parser.y', 661)
2324
2340
  def _reduce_79(val, _values, result)
2325
2341
  reset_variable_scope
2326
2342
 
@@ -2338,14 +2354,14 @@ module_eval(<<'.,.,', 'parser.y', 660)
2338
2354
  end
2339
2355
  .,.,
2340
2356
 
2341
- module_eval(<<'.,.,', 'parser.y', 674)
2357
+ module_eval(<<'.,.,', 'parser.y', 675)
2342
2358
  def _reduce_80(val, _values, result)
2343
2359
  result = nil
2344
2360
  result
2345
2361
  end
2346
2362
  .,.,
2347
2363
 
2348
- module_eval(<<'.,.,', 'parser.y', 676)
2364
+ module_eval(<<'.,.,', 'parser.y', 677)
2349
2365
  def _reduce_81(val, _values, result)
2350
2366
  result = LocatedValue.new(value: val[1], location: val[0].location + val[2].location)
2351
2367
 
@@ -2353,7 +2369,7 @@ module_eval(<<'.,.,', 'parser.y', 676)
2353
2369
  end
2354
2370
  .,.,
2355
2371
 
2356
- module_eval(<<'.,.,', 'parser.y', 681)
2372
+ module_eval(<<'.,.,', 'parser.y', 682)
2357
2373
  def _reduce_82(val, _values, result)
2358
2374
  block = Types::Block.new(type: val[1].value, required: true)
2359
2375
  result = LocatedValue.new(value: block, location: val[0].location + val[2].location)
@@ -2362,7 +2378,7 @@ module_eval(<<'.,.,', 'parser.y', 681)
2362
2378
  end
2363
2379
  .,.,
2364
2380
 
2365
- module_eval(<<'.,.,', 'parser.y', 685)
2381
+ module_eval(<<'.,.,', 'parser.y', 686)
2366
2382
  def _reduce_83(val, _values, result)
2367
2383
  block = Types::Block.new(type: val[2].value, required: false)
2368
2384
  result = LocatedValue.new(value: block, location: val[0].location + val[3].location)
@@ -2371,7 +2387,7 @@ module_eval(<<'.,.,', 'parser.y', 685)
2371
2387
  end
2372
2388
  .,.,
2373
2389
 
2374
- module_eval(<<'.,.,', 'parser.y', 691)
2390
+ module_eval(<<'.,.,', 'parser.y', 692)
2375
2391
  def _reduce_84(val, _values, result)
2376
2392
  loc = val[0].location
2377
2393
 
@@ -2384,7 +2400,7 @@ module_eval(<<'.,.,', 'parser.y', 691)
2384
2400
  end
2385
2401
  .,.,
2386
2402
 
2387
- module_eval(<<'.,.,', 'parser.y', 699)
2403
+ module_eval(<<'.,.,', 'parser.y', 700)
2388
2404
  def _reduce_85(val, _values, result)
2389
2405
  result = LocatedValue.new(value: val[0].value.to_sym,
2390
2406
  location: val[0].location + val[1].location)
@@ -2411,7 +2427,7 @@ module_eval(<<'.,.,', 'parser.y', 699)
2411
2427
 
2412
2428
  # reduce 94 omitted
2413
2429
 
2414
- module_eval(<<'.,.,', 'parser.y', 708)
2430
+ module_eval(<<'.,.,', 'parser.y', 709)
2415
2431
  def _reduce_95(val, _values, result)
2416
2432
  unless val[0].location.pred?(val[1].location)
2417
2433
  raise SyntaxError.new(token_str: "kQUESTION", error_value: val[1])
@@ -2424,7 +2440,7 @@ module_eval(<<'.,.,', 'parser.y', 708)
2424
2440
  end
2425
2441
  .,.,
2426
2442
 
2427
- module_eval(<<'.,.,', 'parser.y', 716)
2443
+ module_eval(<<'.,.,', 'parser.y', 717)
2428
2444
  def _reduce_96(val, _values, result)
2429
2445
  unless val[0].location.pred?(val[1].location)
2430
2446
  raise SyntaxError.new(token_str: "kEXCLAMATION", error_value: val[1])
@@ -2517,15 +2533,17 @@ module_eval(<<'.,.,', 'parser.y', 716)
2517
2533
 
2518
2534
  # reduce 136 omitted
2519
2535
 
2520
- module_eval(<<'.,.,', 'parser.y', 736)
2521
- def _reduce_137(val, _values, result)
2536
+ # reduce 137 omitted
2537
+
2538
+ module_eval(<<'.,.,', 'parser.y', 737)
2539
+ def _reduce_138(val, _values, result)
2522
2540
  result = nil
2523
2541
  result
2524
2542
  end
2525
2543
  .,.,
2526
2544
 
2527
- module_eval(<<'.,.,', 'parser.y', 738)
2528
- def _reduce_138(val, _values, result)
2545
+ module_eval(<<'.,.,', 'parser.y', 739)
2546
+ def _reduce_139(val, _values, result)
2529
2547
  val[1].each {|p| insert_bound_variable(p.name) }
2530
2548
 
2531
2549
  result = LocatedValue.new(value: val[1], location: val[0].location + val[2].location)
@@ -2534,8 +2552,8 @@ module_eval(<<'.,.,', 'parser.y', 738)
2534
2552
  end
2535
2553
  .,.,
2536
2554
 
2537
- module_eval(<<'.,.,', 'parser.y', 745)
2538
- def _reduce_139(val, _values, result)
2555
+ module_eval(<<'.,.,', 'parser.y', 746)
2556
+ def _reduce_140(val, _values, result)
2539
2557
  result = Declarations::ModuleTypeParams.new()
2540
2558
  result.add(val[0])
2541
2559
 
@@ -2543,16 +2561,16 @@ module_eval(<<'.,.,', 'parser.y', 745)
2543
2561
  end
2544
2562
  .,.,
2545
2563
 
2546
- module_eval(<<'.,.,', 'parser.y', 749)
2547
- def _reduce_140(val, _values, result)
2564
+ module_eval(<<'.,.,', 'parser.y', 750)
2565
+ def _reduce_141(val, _values, result)
2548
2566
  result = val[0].add(val[2])
2549
2567
 
2550
2568
  result
2551
2569
  end
2552
2570
  .,.,
2553
2571
 
2554
- module_eval(<<'.,.,', 'parser.y', 754)
2555
- def _reduce_141(val, _values, result)
2572
+ module_eval(<<'.,.,', 'parser.y', 755)
2573
+ def _reduce_142(val, _values, result)
2556
2574
  loc = case
2557
2575
  when l0 = val[0].location
2558
2576
  l0 + val[2].location
@@ -2576,50 +2594,50 @@ module_eval(<<'.,.,', 'parser.y', 754)
2576
2594
  end
2577
2595
  .,.,
2578
2596
 
2579
- module_eval(<<'.,.,', 'parser.y', 775)
2580
- def _reduce_142(val, _values, result)
2597
+ module_eval(<<'.,.,', 'parser.y', 776)
2598
+ def _reduce_143(val, _values, result)
2581
2599
  result = LocatedValue.new(value: :invariant, location: nil)
2582
2600
  result
2583
2601
  end
2584
2602
  .,.,
2585
2603
 
2586
- module_eval(<<'.,.,', 'parser.y', 776)
2587
- def _reduce_143(val, _values, result)
2604
+ module_eval(<<'.,.,', 'parser.y', 777)
2605
+ def _reduce_144(val, _values, result)
2588
2606
  result = LocatedValue.new(value: :covariant, location: val[0].location)
2589
2607
  result
2590
2608
  end
2591
2609
  .,.,
2592
2610
 
2593
- module_eval(<<'.,.,', 'parser.y', 777)
2594
- def _reduce_144(val, _values, result)
2611
+ module_eval(<<'.,.,', 'parser.y', 778)
2612
+ def _reduce_145(val, _values, result)
2595
2613
  result = LocatedValue.new(value: :contravariant, location: val[0].location)
2596
2614
  result
2597
2615
  end
2598
2616
  .,.,
2599
2617
 
2600
- module_eval(<<'.,.,', 'parser.y', 780)
2601
- def _reduce_145(val, _values, result)
2618
+ module_eval(<<'.,.,', 'parser.y', 781)
2619
+ def _reduce_146(val, _values, result)
2602
2620
  result = LocatedValue.new(value: false, location: nil)
2603
2621
  result
2604
2622
  end
2605
2623
  .,.,
2606
2624
 
2607
- module_eval(<<'.,.,', 'parser.y', 781)
2608
- def _reduce_146(val, _values, result)
2625
+ module_eval(<<'.,.,', 'parser.y', 782)
2626
+ def _reduce_147(val, _values, result)
2609
2627
  result = LocatedValue.new(value: true, location: val[0].location)
2610
2628
  result
2611
2629
  end
2612
2630
  .,.,
2613
2631
 
2614
- module_eval(<<'.,.,', 'parser.y', 784)
2615
- def _reduce_147(val, _values, result)
2632
+ module_eval(<<'.,.,', 'parser.y', 785)
2633
+ def _reduce_148(val, _values, result)
2616
2634
  result = nil
2617
2635
  result
2618
2636
  end
2619
2637
  .,.,
2620
2638
 
2621
- module_eval(<<'.,.,', 'parser.y', 786)
2622
- def _reduce_148(val, _values, result)
2639
+ module_eval(<<'.,.,', 'parser.y', 787)
2640
+ def _reduce_149(val, _values, result)
2623
2641
  val[1].each {|var| insert_bound_variable(var) }
2624
2642
 
2625
2643
  result = LocatedValue.new(value: val[1],
@@ -2629,24 +2647,24 @@ module_eval(<<'.,.,', 'parser.y', 786)
2629
2647
  end
2630
2648
  .,.,
2631
2649
 
2632
- module_eval(<<'.,.,', 'parser.y', 794)
2633
- def _reduce_149(val, _values, result)
2650
+ module_eval(<<'.,.,', 'parser.y', 795)
2651
+ def _reduce_150(val, _values, result)
2634
2652
  result = [val[0].value.to_sym]
2635
2653
 
2636
2654
  result
2637
2655
  end
2638
2656
  .,.,
2639
2657
 
2640
- module_eval(<<'.,.,', 'parser.y', 797)
2641
- def _reduce_150(val, _values, result)
2658
+ module_eval(<<'.,.,', 'parser.y', 798)
2659
+ def _reduce_151(val, _values, result)
2642
2660
  result = val[0].push(val[2].value.to_sym)
2643
2661
 
2644
2662
  result
2645
2663
  end
2646
2664
  .,.,
2647
2665
 
2648
- module_eval(<<'.,.,', 'parser.y', 802)
2649
- def _reduce_151(val, _values, result)
2666
+ module_eval(<<'.,.,', 'parser.y', 803)
2667
+ def _reduce_152(val, _values, result)
2650
2668
  location = val[1].location + val[3].location
2651
2669
  location = location.with_children(
2652
2670
  required: { keyword: val[1].location, new_name: val[2].location, old_name: val[3].location },
@@ -2665,8 +2683,8 @@ module_eval(<<'.,.,', 'parser.y', 802)
2665
2683
  end
2666
2684
  .,.,
2667
2685
 
2668
- module_eval(<<'.,.,', 'parser.y', 817)
2669
- def _reduce_152(val, _values, result)
2686
+ module_eval(<<'.,.,', 'parser.y', 818)
2687
+ def _reduce_153(val, _values, result)
2670
2688
  location = val[1].location + val[7].location
2671
2689
  location = location.with_children(
2672
2690
  required: { keyword: val[1].location, new_name: val[4].location, old_name: val[7].location },
@@ -2688,8 +2706,8 @@ module_eval(<<'.,.,', 'parser.y', 817)
2688
2706
  end
2689
2707
  .,.,
2690
2708
 
2691
- module_eval(<<'.,.,', 'parser.y', 837)
2692
- def _reduce_153(val, _values, result)
2709
+ module_eval(<<'.,.,', 'parser.y', 838)
2710
+ def _reduce_154(val, _values, result)
2693
2711
  location = val[1].location + val[4].location
2694
2712
  location = location.with_children(
2695
2713
  required: { keyword: val[1].location, name: val[2].location, eq: val[3].location }
@@ -2706,8 +2724,8 @@ module_eval(<<'.,.,', 'parser.y', 837)
2706
2724
  end
2707
2725
  .,.,
2708
2726
 
2709
- module_eval(<<'.,.,', 'parser.y', 852)
2710
- def _reduce_154(val, _values, result)
2727
+ module_eval(<<'.,.,', 'parser.y', 853)
2728
+ def _reduce_155(val, _values, result)
2711
2729
  location = val[0].location + val[2].location
2712
2730
  location = location.with_children(
2713
2731
  required: { name: val[0].location, colon: val[1].location }
@@ -2721,8 +2739,8 @@ module_eval(<<'.,.,', 'parser.y', 852)
2721
2739
  end
2722
2740
  .,.,
2723
2741
 
2724
- module_eval(<<'.,.,', 'parser.y', 862)
2725
- def _reduce_155(val, _values, result)
2742
+ module_eval(<<'.,.,', 'parser.y', 863)
2743
+ def _reduce_156(val, _values, result)
2726
2744
  location = (val[0] || val[1]).location + val[2].location
2727
2745
 
2728
2746
  lhs_loc = (val[0] || val[1]).location + val[1].location
@@ -2741,8 +2759,8 @@ module_eval(<<'.,.,', 'parser.y', 862)
2741
2759
  end
2742
2760
  .,.,
2743
2761
 
2744
- module_eval(<<'.,.,', 'parser.y', 879)
2745
- def _reduce_156(val, _values, result)
2762
+ module_eval(<<'.,.,', 'parser.y', 880)
2763
+ def _reduce_157(val, _values, result)
2746
2764
  location = val[0].location + val[2].location
2747
2765
  location = location.with_children(
2748
2766
  required: { name: val[0].location, colon: val[1].location }
@@ -2756,10 +2774,10 @@ module_eval(<<'.,.,', 'parser.y', 879)
2756
2774
  end
2757
2775
  .,.,
2758
2776
 
2759
- # reduce 157 omitted
2777
+ # reduce 158 omitted
2760
2778
 
2761
- module_eval(<<'.,.,', 'parser.y', 892)
2762
- def _reduce_158(val, _values, result)
2779
+ module_eval(<<'.,.,', 'parser.y', 893)
2780
+ def _reduce_159(val, _values, result)
2763
2781
  types = case l = val[0]
2764
2782
  when Types::Union
2765
2783
  l.types + [val[2]]
@@ -2773,8 +2791,8 @@ module_eval(<<'.,.,', 'parser.y', 892)
2773
2791
  end
2774
2792
  .,.,
2775
2793
 
2776
- module_eval(<<'.,.,', 'parser.y', 902)
2777
- def _reduce_159(val, _values, result)
2794
+ module_eval(<<'.,.,', 'parser.y', 903)
2795
+ def _reduce_160(val, _values, result)
2778
2796
  types = case l = val[0]
2779
2797
  when Types::Intersection
2780
2798
  l.types + [val[2]]
@@ -2789,16 +2807,16 @@ module_eval(<<'.,.,', 'parser.y', 902)
2789
2807
  end
2790
2808
  .,.,
2791
2809
 
2792
- module_eval(<<'.,.,', 'parser.y', 915)
2793
- def _reduce_160(val, _values, result)
2810
+ module_eval(<<'.,.,', 'parser.y', 916)
2811
+ def _reduce_161(val, _values, result)
2794
2812
  result = Types::Bases::Void.new(location: val[0].location)
2795
2813
 
2796
2814
  result
2797
2815
  end
2798
2816
  .,.,
2799
2817
 
2800
- module_eval(<<'.,.,', 'parser.y', 918)
2801
- def _reduce_161(val, _values, result)
2818
+ module_eval(<<'.,.,', 'parser.y', 919)
2819
+ def _reduce_162(val, _values, result)
2802
2820
  RBS.logger.warn "`any` type is deprecated. Use `untyped` instead. (#{val[0].location.to_s})"
2803
2821
  result = Types::Bases::Any.new(location: val[0].location)
2804
2822
 
@@ -2806,56 +2824,56 @@ module_eval(<<'.,.,', 'parser.y', 918)
2806
2824
  end
2807
2825
  .,.,
2808
2826
 
2809
- module_eval(<<'.,.,', 'parser.y', 922)
2810
- def _reduce_162(val, _values, result)
2827
+ module_eval(<<'.,.,', 'parser.y', 923)
2828
+ def _reduce_163(val, _values, result)
2811
2829
  result = Types::Bases::Any.new(location: val[0].location)
2812
2830
 
2813
2831
  result
2814
2832
  end
2815
2833
  .,.,
2816
2834
 
2817
- module_eval(<<'.,.,', 'parser.y', 925)
2818
- def _reduce_163(val, _values, result)
2835
+ module_eval(<<'.,.,', 'parser.y', 926)
2836
+ def _reduce_164(val, _values, result)
2819
2837
  result = Types::Bases::Bool.new(location: val[0].location)
2820
2838
 
2821
2839
  result
2822
2840
  end
2823
2841
  .,.,
2824
2842
 
2825
- module_eval(<<'.,.,', 'parser.y', 928)
2826
- def _reduce_164(val, _values, result)
2843
+ module_eval(<<'.,.,', 'parser.y', 929)
2844
+ def _reduce_165(val, _values, result)
2827
2845
  result = Types::Bases::Nil.new(location: val[0].location)
2828
2846
 
2829
2847
  result
2830
2848
  end
2831
2849
  .,.,
2832
2850
 
2833
- module_eval(<<'.,.,', 'parser.y', 931)
2834
- def _reduce_165(val, _values, result)
2851
+ module_eval(<<'.,.,', 'parser.y', 932)
2852
+ def _reduce_166(val, _values, result)
2835
2853
  result = Types::Bases::Top.new(location: val[0].location)
2836
2854
 
2837
2855
  result
2838
2856
  end
2839
2857
  .,.,
2840
2858
 
2841
- module_eval(<<'.,.,', 'parser.y', 934)
2842
- def _reduce_166(val, _values, result)
2859
+ module_eval(<<'.,.,', 'parser.y', 935)
2860
+ def _reduce_167(val, _values, result)
2843
2861
  result = Types::Bases::Bottom.new(location: val[0].location)
2844
2862
 
2845
2863
  result
2846
2864
  end
2847
2865
  .,.,
2848
2866
 
2849
- module_eval(<<'.,.,', 'parser.y', 937)
2850
- def _reduce_167(val, _values, result)
2867
+ module_eval(<<'.,.,', 'parser.y', 938)
2868
+ def _reduce_168(val, _values, result)
2851
2869
  result = Types::Bases::Self.new(location: val[0].location)
2852
2870
 
2853
2871
  result
2854
2872
  end
2855
2873
  .,.,
2856
2874
 
2857
- module_eval(<<'.,.,', 'parser.y', 940)
2858
- def _reduce_168(val, _values, result)
2875
+ module_eval(<<'.,.,', 'parser.y', 941)
2876
+ def _reduce_169(val, _values, result)
2859
2877
  result = Types::Optional.new(type: Types::Bases::Self.new(location: val[0].location),
2860
2878
  location: val[0].location)
2861
2879
 
@@ -2863,64 +2881,64 @@ module_eval(<<'.,.,', 'parser.y', 940)
2863
2881
  end
2864
2882
  .,.,
2865
2883
 
2866
- module_eval(<<'.,.,', 'parser.y', 944)
2867
- def _reduce_169(val, _values, result)
2884
+ module_eval(<<'.,.,', 'parser.y', 945)
2885
+ def _reduce_170(val, _values, result)
2868
2886
  result = Types::Bases::Instance.new(location: val[0].location)
2869
2887
 
2870
2888
  result
2871
2889
  end
2872
2890
  .,.,
2873
2891
 
2874
- module_eval(<<'.,.,', 'parser.y', 947)
2875
- def _reduce_170(val, _values, result)
2892
+ module_eval(<<'.,.,', 'parser.y', 948)
2893
+ def _reduce_171(val, _values, result)
2876
2894
  result = Types::Bases::Class.new(location: val[0].location)
2877
2895
 
2878
2896
  result
2879
2897
  end
2880
2898
  .,.,
2881
2899
 
2882
- module_eval(<<'.,.,', 'parser.y', 950)
2883
- def _reduce_171(val, _values, result)
2900
+ module_eval(<<'.,.,', 'parser.y', 951)
2901
+ def _reduce_172(val, _values, result)
2884
2902
  result = Types::Literal.new(literal: true, location: val[0].location)
2885
2903
 
2886
2904
  result
2887
2905
  end
2888
2906
  .,.,
2889
2907
 
2890
- module_eval(<<'.,.,', 'parser.y', 953)
2891
- def _reduce_172(val, _values, result)
2908
+ module_eval(<<'.,.,', 'parser.y', 954)
2909
+ def _reduce_173(val, _values, result)
2892
2910
  result = Types::Literal.new(literal: false, location: val[0].location)
2893
2911
 
2894
2912
  result
2895
2913
  end
2896
2914
  .,.,
2897
2915
 
2898
- module_eval(<<'.,.,', 'parser.y', 956)
2899
- def _reduce_173(val, _values, result)
2916
+ module_eval(<<'.,.,', 'parser.y', 957)
2917
+ def _reduce_174(val, _values, result)
2900
2918
  result = Types::Literal.new(literal: val[0].value, location: val[0].location)
2901
2919
 
2902
2920
  result
2903
2921
  end
2904
2922
  .,.,
2905
2923
 
2906
- module_eval(<<'.,.,', 'parser.y', 959)
2907
- def _reduce_174(val, _values, result)
2924
+ module_eval(<<'.,.,', 'parser.y', 960)
2925
+ def _reduce_175(val, _values, result)
2908
2926
  result = Types::Literal.new(literal: val[0].value, location: val[0].location)
2909
2927
 
2910
2928
  result
2911
2929
  end
2912
2930
  .,.,
2913
2931
 
2914
- module_eval(<<'.,.,', 'parser.y', 962)
2915
- def _reduce_175(val, _values, result)
2932
+ module_eval(<<'.,.,', 'parser.y', 963)
2933
+ def _reduce_176(val, _values, result)
2916
2934
  result = Types::Literal.new(literal: val[0].value, location: val[0].location)
2917
2935
 
2918
2936
  result
2919
2937
  end
2920
2938
  .,.,
2921
2939
 
2922
- module_eval(<<'.,.,', 'parser.y', 965)
2923
- def _reduce_176(val, _values, result)
2940
+ module_eval(<<'.,.,', 'parser.y', 966)
2941
+ def _reduce_177(val, _values, result)
2924
2942
  name = val[0].value
2925
2943
  args = []
2926
2944
  location = val[0].location
@@ -2954,8 +2972,8 @@ module_eval(<<'.,.,', 'parser.y', 965)
2954
2972
  end
2955
2973
  .,.,
2956
2974
 
2957
- module_eval(<<'.,.,', 'parser.y', 995)
2958
- def _reduce_177(val, _values, result)
2975
+ module_eval(<<'.,.,', 'parser.y', 996)
2976
+ def _reduce_178(val, _values, result)
2959
2977
  name = val[0].value
2960
2978
  args = val[2]
2961
2979
  location = val[0].location + val[3].location
@@ -2984,8 +3002,8 @@ module_eval(<<'.,.,', 'parser.y', 995)
2984
3002
  end
2985
3003
  .,.,
2986
3004
 
2987
- module_eval(<<'.,.,', 'parser.y', 1020)
2988
- def _reduce_178(val, _values, result)
3005
+ module_eval(<<'.,.,', 'parser.y', 1021)
3006
+ def _reduce_179(val, _values, result)
2989
3007
  location = val[0].location + val[1].location
2990
3008
  result = Types::Tuple.new(types: [], location: location)
2991
3009
 
@@ -2993,8 +3011,8 @@ module_eval(<<'.,.,', 'parser.y', 1020)
2993
3011
  end
2994
3012
  .,.,
2995
3013
 
2996
- module_eval(<<'.,.,', 'parser.y', 1024)
2997
- def _reduce_179(val, _values, result)
3014
+ module_eval(<<'.,.,', 'parser.y', 1025)
3015
+ def _reduce_180(val, _values, result)
2998
3016
  location = val[0].location + val[3].location
2999
3017
  types = val[1]
3000
3018
  result = Types::Tuple.new(types: types, location: location)
@@ -3003,8 +3021,8 @@ module_eval(<<'.,.,', 'parser.y', 1024)
3003
3021
  end
3004
3022
  .,.,
3005
3023
 
3006
- module_eval(<<'.,.,', 'parser.y', 1029)
3007
- def _reduce_180(val, _values, result)
3024
+ module_eval(<<'.,.,', 'parser.y', 1030)
3025
+ def _reduce_181(val, _values, result)
3008
3026
  type = val[1].dup
3009
3027
  type.instance_eval do
3010
3028
  @location = val[0].location + val[2].location
@@ -3015,8 +3033,8 @@ module_eval(<<'.,.,', 'parser.y', 1029)
3015
3033
  end
3016
3034
  .,.,
3017
3035
 
3018
- module_eval(<<'.,.,', 'parser.y', 1036)
3019
- def _reduce_181(val, _values, result)
3036
+ module_eval(<<'.,.,', 'parser.y', 1037)
3037
+ def _reduce_182(val, _values, result)
3020
3038
  location = val[0].location + val[3].location
3021
3039
  location = location.with_children(
3022
3040
  required: { name: val[2].location }
@@ -3027,8 +3045,8 @@ module_eval(<<'.,.,', 'parser.y', 1036)
3027
3045
  end
3028
3046
  .,.,
3029
3047
 
3030
- module_eval(<<'.,.,', 'parser.y', 1043)
3031
- def _reduce_182(val, _values, result)
3048
+ module_eval(<<'.,.,', 'parser.y', 1044)
3049
+ def _reduce_183(val, _values, result)
3032
3050
  type, block = val[1].value
3033
3051
  result = Types::Proc.new(type: type, block: block, location: val[0].location + val[1].location)
3034
3052
 
@@ -3036,34 +3054,34 @@ module_eval(<<'.,.,', 'parser.y', 1043)
3036
3054
  end
3037
3055
  .,.,
3038
3056
 
3039
- module_eval(<<'.,.,', 'parser.y', 1047)
3040
- def _reduce_183(val, _values, result)
3057
+ module_eval(<<'.,.,', 'parser.y', 1048)
3058
+ def _reduce_184(val, _values, result)
3041
3059
  result = Types::Optional.new(type: val[0], location: val[0].location + val[1].location)
3042
3060
 
3043
3061
  result
3044
3062
  end
3045
3063
  .,.,
3046
3064
 
3047
- # reduce 184 omitted
3065
+ # reduce 185 omitted
3048
3066
 
3049
- module_eval(<<'.,.,', 'parser.y', 1053)
3050
- def _reduce_185(val, _values, result)
3067
+ module_eval(<<'.,.,', 'parser.y', 1054)
3068
+ def _reduce_186(val, _values, result)
3051
3069
  result = [val[0]]
3052
3070
 
3053
3071
  result
3054
3072
  end
3055
3073
  .,.,
3056
3074
 
3057
- module_eval(<<'.,.,', 'parser.y', 1056)
3058
- def _reduce_186(val, _values, result)
3075
+ module_eval(<<'.,.,', 'parser.y', 1057)
3076
+ def _reduce_187(val, _values, result)
3059
3077
  result = val[0] + [val[2]]
3060
3078
 
3061
3079
  result
3062
3080
  end
3063
3081
  .,.,
3064
3082
 
3065
- module_eval(<<'.,.,', 'parser.y', 1061)
3066
- def _reduce_187(val, _values, result)
3083
+ module_eval(<<'.,.,', 'parser.y', 1062)
3084
+ def _reduce_188(val, _values, result)
3067
3085
  result = Types::Record.new(
3068
3086
  fields: val[1],
3069
3087
  location: val[0].location + val[3].location
@@ -3073,98 +3091,98 @@ module_eval(<<'.,.,', 'parser.y', 1061)
3073
3091
  end
3074
3092
  .,.,
3075
3093
 
3076
- module_eval(<<'.,.,', 'parser.y', 1069)
3077
- def _reduce_188(val, _values, result)
3094
+ module_eval(<<'.,.,', 'parser.y', 1070)
3095
+ def _reduce_189(val, _values, result)
3078
3096
  result = val[0]
3079
3097
 
3080
3098
  result
3081
3099
  end
3082
3100
  .,.,
3083
3101
 
3084
- module_eval(<<'.,.,', 'parser.y', 1072)
3085
- def _reduce_189(val, _values, result)
3102
+ module_eval(<<'.,.,', 'parser.y', 1073)
3103
+ def _reduce_190(val, _values, result)
3086
3104
  result = val[0].merge!(val[2])
3087
3105
 
3088
3106
  result
3089
3107
  end
3090
3108
  .,.,
3091
3109
 
3092
- module_eval(<<'.,.,', 'parser.y', 1077)
3093
- def _reduce_190(val, _values, result)
3110
+ module_eval(<<'.,.,', 'parser.y', 1078)
3111
+ def _reduce_191(val, _values, result)
3094
3112
  result = { val[0].value => val[2] }
3095
3113
 
3096
3114
  result
3097
3115
  end
3098
3116
  .,.,
3099
3117
 
3100
- module_eval(<<'.,.,', 'parser.y', 1080)
3101
- def _reduce_191(val, _values, result)
3118
+ module_eval(<<'.,.,', 'parser.y', 1081)
3119
+ def _reduce_192(val, _values, result)
3102
3120
  result = { val[0].value => val[2] }
3103
3121
 
3104
3122
  result
3105
3123
  end
3106
3124
  .,.,
3107
3125
 
3108
- module_eval(<<'.,.,', 'parser.y', 1083)
3109
- def _reduce_192(val, _values, result)
3126
+ module_eval(<<'.,.,', 'parser.y', 1084)
3127
+ def _reduce_193(val, _values, result)
3110
3128
  result = { val[0].value => val[2] }
3111
3129
 
3112
3130
  result
3113
3131
  end
3114
3132
  .,.,
3115
3133
 
3116
- module_eval(<<'.,.,', 'parser.y', 1086)
3117
- def _reduce_193(val, _values, result)
3134
+ module_eval(<<'.,.,', 'parser.y', 1087)
3135
+ def _reduce_194(val, _values, result)
3118
3136
  result = { val[0].value => val[1] }
3119
3137
 
3120
3138
  result
3121
3139
  end
3122
3140
  .,.,
3123
3141
 
3124
- module_eval(<<'.,.,', 'parser.y', 1089)
3125
- def _reduce_194(val, _values, result)
3142
+ module_eval(<<'.,.,', 'parser.y', 1090)
3143
+ def _reduce_195(val, _values, result)
3126
3144
  result = { val[0].value => val[2] }
3127
3145
 
3128
3146
  result
3129
3147
  end
3130
3148
  .,.,
3131
3149
 
3132
- module_eval(<<'.,.,', 'parser.y', 1092)
3133
- def _reduce_195(val, _values, result)
3150
+ module_eval(<<'.,.,', 'parser.y', 1093)
3151
+ def _reduce_196(val, _values, result)
3134
3152
  result = { val[0].value => val[2] }
3135
3153
 
3136
3154
  result
3137
3155
  end
3138
3156
  .,.,
3139
3157
 
3140
- module_eval(<<'.,.,', 'parser.y', 1095)
3141
- def _reduce_196(val, _values, result)
3158
+ module_eval(<<'.,.,', 'parser.y', 1096)
3159
+ def _reduce_197(val, _values, result)
3142
3160
  result = { val[0].value => val[2] }
3143
3161
 
3144
3162
  result
3145
3163
  end
3146
3164
  .,.,
3147
3165
 
3148
- # reduce 197 omitted
3166
+ # reduce 198 omitted
3149
3167
 
3150
- module_eval(<<'.,.,', 'parser.y', 1101)
3151
- def _reduce_198(val, _values, result)
3168
+ module_eval(<<'.,.,', 'parser.y', 1102)
3169
+ def _reduce_199(val, _values, result)
3152
3170
  result = val[0]
3153
3171
 
3154
3172
  result
3155
3173
  end
3156
3174
  .,.,
3157
3175
 
3158
- # reduce 199 omitted
3159
-
3160
3176
  # reduce 200 omitted
3161
3177
 
3162
3178
  # reduce 201 omitted
3163
3179
 
3164
3180
  # reduce 202 omitted
3165
3181
 
3166
- module_eval(<<'.,.,', 'parser.y', 1108)
3167
- def _reduce_203(val, _values, result)
3182
+ # reduce 203 omitted
3183
+
3184
+ module_eval(<<'.,.,', 'parser.y', 1109)
3185
+ def _reduce_204(val, _values, result)
3168
3186
  location = (val[0] || val[1] || val[2]).location + val[3].location
3169
3187
 
3170
3188
  params = val[0]&.value || [[], [], nil, [], {}, {}, nil]
@@ -3188,16 +3206,16 @@ module_eval(<<'.,.,', 'parser.y', 1108)
3188
3206
  end
3189
3207
  .,.,
3190
3208
 
3191
- module_eval(<<'.,.,', 'parser.y', 1128)
3192
- def _reduce_204(val, _values, result)
3209
+ module_eval(<<'.,.,', 'parser.y', 1129)
3210
+ def _reduce_205(val, _values, result)
3193
3211
  result = LocatedValue.new(value: [val[0].value, nil], location: val[0].location)
3194
3212
 
3195
3213
  result
3196
3214
  end
3197
3215
  .,.,
3198
3216
 
3199
- module_eval(<<'.,.,', 'parser.y', 1133)
3200
- def _reduce_205(val, _values, result)
3217
+ module_eval(<<'.,.,', 'parser.y', 1134)
3218
+ def _reduce_206(val, _values, result)
3201
3219
  location = val[0].location + val[4].location
3202
3220
  type = Types::Function.new(
3203
3221
  required_positionals: val[1][0],
@@ -3216,8 +3234,8 @@ module_eval(<<'.,.,', 'parser.y', 1133)
3216
3234
  end
3217
3235
  .,.,
3218
3236
 
3219
- module_eval(<<'.,.,', 'parser.y', 1148)
3220
- def _reduce_206(val, _values, result)
3237
+ module_eval(<<'.,.,', 'parser.y', 1149)
3238
+ def _reduce_207(val, _values, result)
3221
3239
  location = val[0].location + val[1].location
3222
3240
  type = Types::Function.new(
3223
3241
  required_positionals: [],
@@ -3236,8 +3254,8 @@ module_eval(<<'.,.,', 'parser.y', 1148)
3236
3254
  end
3237
3255
  .,.,
3238
3256
 
3239
- module_eval(<<'.,.,', 'parser.y', 1165)
3240
- def _reduce_207(val, _values, result)
3257
+ module_eval(<<'.,.,', 'parser.y', 1166)
3258
+ def _reduce_208(val, _values, result)
3241
3259
  result = val[2]
3242
3260
  result[0].unshift(val[0])
3243
3261
 
@@ -3245,8 +3263,8 @@ module_eval(<<'.,.,', 'parser.y', 1165)
3245
3263
  end
3246
3264
  .,.,
3247
3265
 
3248
- module_eval(<<'.,.,', 'parser.y', 1169)
3249
- def _reduce_208(val, _values, result)
3266
+ module_eval(<<'.,.,', 'parser.y', 1170)
3267
+ def _reduce_209(val, _values, result)
3250
3268
  result = empty_params_result
3251
3269
  result[0].unshift(val[0])
3252
3270
 
@@ -3254,10 +3272,10 @@ module_eval(<<'.,.,', 'parser.y', 1169)
3254
3272
  end
3255
3273
  .,.,
3256
3274
 
3257
- # reduce 209 omitted
3275
+ # reduce 210 omitted
3258
3276
 
3259
- module_eval(<<'.,.,', 'parser.y', 1176)
3260
- def _reduce_210(val, _values, result)
3277
+ module_eval(<<'.,.,', 'parser.y', 1177)
3278
+ def _reduce_211(val, _values, result)
3261
3279
  result = val[2]
3262
3280
  result[1].unshift(val[0])
3263
3281
 
@@ -3265,8 +3283,8 @@ module_eval(<<'.,.,', 'parser.y', 1176)
3265
3283
  end
3266
3284
  .,.,
3267
3285
 
3268
- module_eval(<<'.,.,', 'parser.y', 1180)
3269
- def _reduce_211(val, _values, result)
3286
+ module_eval(<<'.,.,', 'parser.y', 1181)
3287
+ def _reduce_212(val, _values, result)
3270
3288
  result = empty_params_result
3271
3289
  result[1].unshift(val[0])
3272
3290
 
@@ -3274,10 +3292,10 @@ module_eval(<<'.,.,', 'parser.y', 1180)
3274
3292
  end
3275
3293
  .,.,
3276
3294
 
3277
- # reduce 212 omitted
3295
+ # reduce 213 omitted
3278
3296
 
3279
- module_eval(<<'.,.,', 'parser.y', 1187)
3280
- def _reduce_213(val, _values, result)
3297
+ module_eval(<<'.,.,', 'parser.y', 1188)
3298
+ def _reduce_214(val, _values, result)
3281
3299
  result = val[2]
3282
3300
  result[2] = val[0]
3283
3301
 
@@ -3285,8 +3303,8 @@ module_eval(<<'.,.,', 'parser.y', 1187)
3285
3303
  end
3286
3304
  .,.,
3287
3305
 
3288
- module_eval(<<'.,.,', 'parser.y', 1191)
3289
- def _reduce_214(val, _values, result)
3306
+ module_eval(<<'.,.,', 'parser.y', 1192)
3307
+ def _reduce_215(val, _values, result)
3290
3308
  result = empty_params_result
3291
3309
  result[2] = val[0]
3292
3310
 
@@ -3294,10 +3312,10 @@ module_eval(<<'.,.,', 'parser.y', 1191)
3294
3312
  end
3295
3313
  .,.,
3296
3314
 
3297
- # reduce 215 omitted
3315
+ # reduce 216 omitted
3298
3316
 
3299
- module_eval(<<'.,.,', 'parser.y', 1198)
3300
- def _reduce_216(val, _values, result)
3317
+ module_eval(<<'.,.,', 'parser.y', 1199)
3318
+ def _reduce_217(val, _values, result)
3301
3319
  result = val[2]
3302
3320
  result[3].unshift(val[0])
3303
3321
 
@@ -3305,8 +3323,8 @@ module_eval(<<'.,.,', 'parser.y', 1198)
3305
3323
  end
3306
3324
  .,.,
3307
3325
 
3308
- module_eval(<<'.,.,', 'parser.y', 1202)
3309
- def _reduce_217(val, _values, result)
3326
+ module_eval(<<'.,.,', 'parser.y', 1203)
3327
+ def _reduce_218(val, _values, result)
3310
3328
  result = empty_params_result
3311
3329
  result[3].unshift(val[0])
3312
3330
 
@@ -3314,18 +3332,18 @@ module_eval(<<'.,.,', 'parser.y', 1202)
3314
3332
  end
3315
3333
  .,.,
3316
3334
 
3317
- # reduce 218 omitted
3335
+ # reduce 219 omitted
3318
3336
 
3319
- module_eval(<<'.,.,', 'parser.y', 1209)
3320
- def _reduce_219(val, _values, result)
3337
+ module_eval(<<'.,.,', 'parser.y', 1210)
3338
+ def _reduce_220(val, _values, result)
3321
3339
  result = empty_params_result
3322
3340
 
3323
3341
  result
3324
3342
  end
3325
3343
  .,.,
3326
3344
 
3327
- module_eval(<<'.,.,', 'parser.y', 1212)
3328
- def _reduce_220(val, _values, result)
3345
+ module_eval(<<'.,.,', 'parser.y', 1213)
3346
+ def _reduce_221(val, _values, result)
3329
3347
  result = val[2]
3330
3348
  result[4].merge!(val[0])
3331
3349
 
@@ -3333,8 +3351,8 @@ module_eval(<<'.,.,', 'parser.y', 1212)
3333
3351
  end
3334
3352
  .,.,
3335
3353
 
3336
- module_eval(<<'.,.,', 'parser.y', 1216)
3337
- def _reduce_221(val, _values, result)
3354
+ module_eval(<<'.,.,', 'parser.y', 1217)
3355
+ def _reduce_222(val, _values, result)
3338
3356
  result = empty_params_result
3339
3357
  result[4].merge!(val[0])
3340
3358
 
@@ -3342,8 +3360,8 @@ module_eval(<<'.,.,', 'parser.y', 1216)
3342
3360
  end
3343
3361
  .,.,
3344
3362
 
3345
- module_eval(<<'.,.,', 'parser.y', 1220)
3346
- def _reduce_222(val, _values, result)
3363
+ module_eval(<<'.,.,', 'parser.y', 1221)
3364
+ def _reduce_223(val, _values, result)
3347
3365
  result = val[2]
3348
3366
  result[5].merge!(val[0])
3349
3367
 
@@ -3351,8 +3369,8 @@ module_eval(<<'.,.,', 'parser.y', 1220)
3351
3369
  end
3352
3370
  .,.,
3353
3371
 
3354
- module_eval(<<'.,.,', 'parser.y', 1224)
3355
- def _reduce_223(val, _values, result)
3372
+ module_eval(<<'.,.,', 'parser.y', 1225)
3373
+ def _reduce_224(val, _values, result)
3356
3374
  result = empty_params_result
3357
3375
  result[5].merge!(val[0])
3358
3376
 
@@ -3360,8 +3378,8 @@ module_eval(<<'.,.,', 'parser.y', 1224)
3360
3378
  end
3361
3379
  .,.,
3362
3380
 
3363
- module_eval(<<'.,.,', 'parser.y', 1228)
3364
- def _reduce_224(val, _values, result)
3381
+ module_eval(<<'.,.,', 'parser.y', 1229)
3382
+ def _reduce_225(val, _values, result)
3365
3383
  result = empty_params_result
3366
3384
  result[6] = val[0]
3367
3385
 
@@ -3369,8 +3387,8 @@ module_eval(<<'.,.,', 'parser.y', 1228)
3369
3387
  end
3370
3388
  .,.,
3371
3389
 
3372
- module_eval(<<'.,.,', 'parser.y', 1234)
3373
- def _reduce_225(val, _values, result)
3390
+ module_eval(<<'.,.,', 'parser.y', 1235)
3391
+ def _reduce_226(val, _values, result)
3374
3392
  loc = val[0].location
3375
3393
  if var_name = val[1]
3376
3394
  loc = loc + var_name.location
@@ -3387,8 +3405,8 @@ module_eval(<<'.,.,', 'parser.y', 1234)
3387
3405
  end
3388
3406
  .,.,
3389
3407
 
3390
- module_eval(<<'.,.,', 'parser.y', 1249)
3391
- def _reduce_226(val, _values, result)
3408
+ module_eval(<<'.,.,', 'parser.y', 1250)
3409
+ def _reduce_227(val, _values, result)
3392
3410
  loc = val[0].location + val[1].location
3393
3411
  if var_name = val[2]
3394
3412
  loc = loc + var_name.location
@@ -3405,8 +3423,8 @@ module_eval(<<'.,.,', 'parser.y', 1249)
3405
3423
  end
3406
3424
  .,.,
3407
3425
 
3408
- module_eval(<<'.,.,', 'parser.y', 1264)
3409
- def _reduce_227(val, _values, result)
3426
+ module_eval(<<'.,.,', 'parser.y', 1265)
3427
+ def _reduce_228(val, _values, result)
3410
3428
  loc = val[0].location + val[1].location
3411
3429
  if var_name = val[2]
3412
3430
  loc = loc + var_name.location
@@ -3423,8 +3441,8 @@ module_eval(<<'.,.,', 'parser.y', 1264)
3423
3441
  end
3424
3442
  .,.,
3425
3443
 
3426
- module_eval(<<'.,.,', 'parser.y', 1279)
3427
- def _reduce_228(val, _values, result)
3444
+ module_eval(<<'.,.,', 'parser.y', 1280)
3445
+ def _reduce_229(val, _values, result)
3428
3446
  loc = val[0].location + val[1].location
3429
3447
  if var_name = val[2]
3430
3448
  loc = loc + var_name.location
@@ -3443,8 +3461,8 @@ module_eval(<<'.,.,', 'parser.y', 1279)
3443
3461
  end
3444
3462
  .,.,
3445
3463
 
3446
- module_eval(<<'.,.,', 'parser.y', 1296)
3447
- def _reduce_229(val, _values, result)
3464
+ module_eval(<<'.,.,', 'parser.y', 1297)
3465
+ def _reduce_230(val, _values, result)
3448
3466
  loc = val[0].location + val[2].location
3449
3467
  if var_name = val[3]
3450
3468
  loc = loc + var_name.location
@@ -3463,8 +3481,8 @@ module_eval(<<'.,.,', 'parser.y', 1296)
3463
3481
  end
3464
3482
  .,.,
3465
3483
 
3466
- module_eval(<<'.,.,', 'parser.y', 1313)
3467
- def _reduce_230(val, _values, result)
3484
+ module_eval(<<'.,.,', 'parser.y', 1314)
3485
+ def _reduce_231(val, _values, result)
3468
3486
  loc = val[0].location + val[1].location
3469
3487
  if var_name = val[2]
3470
3488
  loc = loc + var_name.location
@@ -3482,16 +3500,20 @@ module_eval(<<'.,.,', 'parser.y', 1313)
3482
3500
  end
3483
3501
  .,.,
3484
3502
 
3485
- # reduce 231 omitted
3486
-
3487
3503
  # reduce 232 omitted
3488
3504
 
3489
3505
  # reduce 233 omitted
3490
3506
 
3491
3507
  # reduce 234 omitted
3492
3508
 
3493
- module_eval(<<'.,.,', 'parser.y', 1332)
3494
- def _reduce_235(val, _values, result)
3509
+ # reduce 235 omitted
3510
+
3511
+ # reduce 236 omitted
3512
+
3513
+ # reduce 237 omitted
3514
+
3515
+ module_eval(<<'.,.,', 'parser.y', 1333)
3516
+ def _reduce_238(val, _values, result)
3495
3517
  namespace = val[0]&.value || Namespace.empty
3496
3518
  name = val[1].value.to_sym
3497
3519
  type_name = TypeName.new(namespace: namespace, name: name)
@@ -3502,14 +3524,14 @@ module_eval(<<'.,.,', 'parser.y', 1332)
3502
3524
  end
3503
3525
  .,.,
3504
3526
 
3505
- # reduce 236 omitted
3527
+ # reduce 239 omitted
3506
3528
 
3507
- # reduce 237 omitted
3529
+ # reduce 240 omitted
3508
3530
 
3509
- # reduce 238 omitted
3531
+ # reduce 241 omitted
3510
3532
 
3511
- module_eval(<<'.,.,', 'parser.y', 1344)
3512
- def _reduce_239(val, _values, result)
3533
+ module_eval(<<'.,.,', 'parser.y', 1345)
3534
+ def _reduce_242(val, _values, result)
3513
3535
  namespace = val[0]&.value || Namespace.empty
3514
3536
  name = val[1].value.to_sym
3515
3537
  type_name = TypeName.new(namespace: namespace, name: name)
@@ -3520,8 +3542,8 @@ module_eval(<<'.,.,', 'parser.y', 1344)
3520
3542
  end
3521
3543
  .,.,
3522
3544
 
3523
- module_eval(<<'.,.,', 'parser.y', 1353)
3524
- def _reduce_240(val, _values, result)
3545
+ module_eval(<<'.,.,', 'parser.y', 1354)
3546
+ def _reduce_243(val, _values, result)
3525
3547
  namespace = val[0]&.value || Namespace.empty
3526
3548
  name = val[1].value.to_sym
3527
3549
  type_name = TypeName.new(namespace: namespace, name: name)
@@ -3532,8 +3554,8 @@ module_eval(<<'.,.,', 'parser.y', 1353)
3532
3554
  end
3533
3555
  .,.,
3534
3556
 
3535
- module_eval(<<'.,.,', 'parser.y', 1362)
3536
- def _reduce_241(val, _values, result)
3557
+ module_eval(<<'.,.,', 'parser.y', 1363)
3558
+ def _reduce_244(val, _values, result)
3537
3559
  namespace = val[0]&.value || Namespace.empty
3538
3560
  name = val[1].value.to_sym
3539
3561
  type_name = TypeName.new(namespace: namespace, name: name)
@@ -3544,24 +3566,24 @@ module_eval(<<'.,.,', 'parser.y', 1362)
3544
3566
  end
3545
3567
  .,.,
3546
3568
 
3547
- module_eval(<<'.,.,', 'parser.y', 1372)
3548
- def _reduce_242(val, _values, result)
3569
+ module_eval(<<'.,.,', 'parser.y', 1373)
3570
+ def _reduce_245(val, _values, result)
3549
3571
  result = nil
3550
3572
 
3551
3573
  result
3552
3574
  end
3553
3575
  .,.,
3554
3576
 
3555
- module_eval(<<'.,.,', 'parser.y', 1375)
3556
- def _reduce_243(val, _values, result)
3577
+ module_eval(<<'.,.,', 'parser.y', 1376)
3578
+ def _reduce_246(val, _values, result)
3557
3579
  result = LocatedValue.new(value: Namespace.root, location: val[0].location)
3558
3580
 
3559
3581
  result
3560
3582
  end
3561
3583
  .,.,
3562
3584
 
3563
- module_eval(<<'.,.,', 'parser.y', 1378)
3564
- def _reduce_244(val, _values, result)
3585
+ module_eval(<<'.,.,', 'parser.y', 1379)
3586
+ def _reduce_247(val, _values, result)
3565
3587
  namespace = Namespace.parse(val[1].value).absolute!
3566
3588
  result = LocatedValue.new(value: namespace, location: val[0].location + val[1].location)
3567
3589
 
@@ -3569,8 +3591,8 @@ module_eval(<<'.,.,', 'parser.y', 1378)
3569
3591
  end
3570
3592
  .,.,
3571
3593
 
3572
- module_eval(<<'.,.,', 'parser.y', 1382)
3573
- def _reduce_245(val, _values, result)
3594
+ module_eval(<<'.,.,', 'parser.y', 1383)
3595
+ def _reduce_248(val, _values, result)
3574
3596
  namespace = Namespace.parse(val[0].value)
3575
3597
  result = LocatedValue.new(value: namespace, location: val[0].location)
3576
3598
 
@@ -3578,9 +3600,9 @@ module_eval(<<'.,.,', 'parser.y', 1382)
3578
3600
  end
3579
3601
  .,.,
3580
3602
 
3581
- # reduce 246 omitted
3603
+ # reduce 249 omitted
3582
3604
 
3583
- # reduce 247 omitted
3605
+ # reduce 250 omitted
3584
3606
 
3585
3607
  def _reduce_none(val, _values, result)
3586
3608
  val[0]