rbs 1.1.0 → 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ruby.yml +5 -1
- data/.gitignore +2 -0
- data/CHANGELOG.md +81 -0
- data/README.md +1 -1
- data/Rakefile +11 -0
- data/Steepfile +1 -0
- data/core/array.rbs +2 -2
- data/core/basic_object.rbs +1 -1
- data/core/enumerable.rbs +1 -1
- data/core/hash.rbs +13 -5
- data/core/io.rbs +4 -4
- data/core/kernel.rbs +2 -2
- data/core/marshal.rbs +4 -3
- data/core/module.rbs +1 -1
- data/core/numeric.rbs +10 -0
- data/core/proc.rbs +1 -1
- data/core/random.rbs +4 -2
- data/core/range.rbs +2 -2
- data/core/struct.rbs +3 -2
- data/core/thread.rbs +1 -1
- data/docs/CONTRIBUTING.md +5 -3
- data/docs/rbs_by_example.md +328 -0
- data/docs/sigs.md +21 -2
- data/docs/stdlib.md +1 -1
- data/docs/syntax.md +11 -14
- data/lib/rbs.rb +1 -0
- data/lib/rbs/ast/annotation.rb +2 -2
- data/lib/rbs/ast/comment.rb +2 -2
- data/lib/rbs/ast/declarations.rb +37 -22
- data/lib/rbs/ast/members.rb +26 -26
- data/lib/rbs/cli.rb +3 -0
- data/lib/rbs/constant_table.rb +4 -1
- data/lib/rbs/definition.rb +1 -1
- data/lib/rbs/definition_builder.rb +16 -18
- data/lib/rbs/definition_builder/ancestor_builder.rb +10 -2
- data/lib/rbs/definition_builder/method_builder.rb +4 -2
- data/lib/rbs/errors.rb +36 -0
- data/lib/rbs/location.rb +106 -2
- data/lib/rbs/locator.rb +205 -0
- data/lib/rbs/method_type.rb +2 -2
- data/lib/rbs/parser.rb +1315 -962
- data/lib/rbs/parser.y +411 -75
- data/lib/rbs/prototype/rb.rb +7 -3
- data/lib/rbs/prototype/runtime.rb +118 -42
- data/lib/rbs/test/hook.rb +8 -2
- data/lib/rbs/type_name.rb +2 -3
- data/lib/rbs/type_name_resolver.rb +1 -1
- data/lib/rbs/types.rb +36 -34
- data/lib/rbs/version.rb +1 -1
- data/lib/rbs/writer.rb +4 -2
- data/rbs.gemspec +1 -1
- data/sig/ancestor_builder.rbs +2 -0
- data/sig/annotation.rbs +1 -1
- data/sig/cli.rbs +31 -21
- data/sig/comment.rbs +1 -1
- data/sig/declarations.rbs +106 -21
- data/sig/environment.rbs +2 -2
- data/sig/errors.rbs +15 -0
- data/sig/location.rbs +84 -3
- data/sig/locator.rbs +44 -0
- data/sig/members.rbs +76 -12
- data/sig/method_builder.rbs +1 -1
- data/sig/method_types.rbs +1 -1
- data/sig/namespace.rbs +1 -1
- data/sig/polyfill.rbs +4 -17
- data/sig/rbs.rbs +8 -4
- data/sig/typename.rbs +1 -1
- data/sig/types.rbs +67 -20
- data/sig/util.rbs +0 -4
- data/sig/writer.rbs +8 -2
- data/stdlib/dbm/0/dbm.rbs +43 -30
- data/stdlib/mutex_m/0/mutex_m.rbs +1 -1
- data/stdlib/net-http/0/net-http.rbs +1846 -0
- data/stdlib/optparse/0/optparse.rbs +1214 -0
- data/stdlib/resolv/0/resolv.rbs +1504 -0
- data/stdlib/rubygems/0/requirement.rbs +84 -2
- data/stdlib/rubygems/0/rubygems.rbs +2 -2
- data/stdlib/rubygems/0/version.rbs +2 -1
- data/stdlib/shellwords/0/shellwords.rbs +252 -0
- data/stdlib/socket/0/addrinfo.rbs +469 -0
- data/stdlib/socket/0/basic_socket.rbs +503 -0
- data/stdlib/socket/0/ip_socket.rbs +72 -0
- data/stdlib/socket/0/socket.rbs +2687 -0
- data/stdlib/socket/0/tcp_server.rbs +177 -0
- data/stdlib/socket/0/tcp_socket.rbs +35 -0
- data/stdlib/socket/0/udp_socket.rbs +111 -0
- data/stdlib/socket/0/unix_server.rbs +154 -0
- data/stdlib/socket/0/unix_socket.rbs +132 -0
- data/stdlib/timeout/0/timeout.rbs +5 -0
- data/steep/Gemfile.lock +19 -16
- metadata +18 -11
- data/bin/annotate-with-rdoc +0 -153
- data/bin/console +0 -14
- data/bin/query-rdoc +0 -103
- data/bin/rbs-prof +0 -9
- data/bin/run_in_md.rb +0 -49
- data/bin/setup +0 -8
- data/bin/sort +0 -89
- data/bin/steep +0 -4
- data/bin/test_runner.rb +0 -29
data/lib/rbs/method_type.rb
CHANGED
@@ -19,13 +19,13 @@ module RBS
|
|
19
19
|
other.block == block
|
20
20
|
end
|
21
21
|
|
22
|
-
def to_json(
|
22
|
+
def to_json(state = _ = nil)
|
23
23
|
{
|
24
24
|
type_params: type_params,
|
25
25
|
type: type,
|
26
26
|
block: block,
|
27
27
|
location: location
|
28
|
-
}.to_json(
|
28
|
+
}.to_json(state)
|
29
29
|
end
|
30
30
|
|
31
31
|
def sub(s)
|
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',
|
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(/_[
|
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-
|
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(/_/)
|
344
|
+
new_token(:kUNDERSCORE)
|
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|
|
@@ -371,6 +375,16 @@ def on_error(token_id, error_value, value_stack)
|
|
371
375
|
raise SyntaxError.new(token_str: token_to_str(token_id), error_value: error_value, value_stack: value_stack)
|
372
376
|
end
|
373
377
|
|
378
|
+
def split_kw_loc(loc)
|
379
|
+
buf = loc.buffer
|
380
|
+
start_pos = loc.start_pos
|
381
|
+
end_pos = loc.end_pos
|
382
|
+
[
|
383
|
+
Location.new(buffer: buf, start_pos: start_pos, end_pos: end_pos - 1),
|
384
|
+
Location.new(buffer: buf, start_pos: end_pos - 1, end_pos: end_pos)
|
385
|
+
]
|
386
|
+
end
|
387
|
+
|
374
388
|
class SyntaxError < ParsingError
|
375
389
|
attr_reader :token_str, :error_value, :value_stack
|
376
390
|
|
@@ -410,74 +424,109 @@ end
|
|
410
424
|
##### State transition tables begin ###
|
411
425
|
|
412
426
|
clist = [
|
413
|
-
'
|
414
|
-
'
|
415
|
-
'
|
416
|
-
'
|
417
|
-
'
|
418
|
-
'
|
419
|
-
'
|
420
|
-
'
|
421
|
-
'
|
422
|
-
'60,61,62,79,
|
423
|
-
'
|
424
|
-
'73,78,80,
|
425
|
-
'
|
426
|
-
'63,54,64,65,66,77,67,68,69,83,40,41,
|
427
|
-
'
|
428
|
-
'
|
429
|
-
'
|
430
|
-
'
|
431
|
-
'
|
432
|
-
'
|
433
|
-
'
|
434
|
-
'
|
435
|
-
'
|
436
|
-
'
|
437
|
-
'
|
438
|
-
'
|
439
|
-
'
|
440
|
-
'
|
441
|
-
'
|
442
|
-
'
|
443
|
-
'
|
444
|
-
'
|
445
|
-
'
|
446
|
-
'78,80,,,,,84,85,81,86
|
447
|
-
'
|
448
|
-
',
|
427
|
+
'192,195,33,193,192,195,33,193,192,195,33,193,113,192,195,33,193,192',
|
428
|
+
'195,160,193,180,324,192,195,33,193,185,179,33,228,33,33,33,5,33,33,33',
|
429
|
+
'37,174,283,322,177,32,175,40,41,32,161,40,41,32,186,40,41,229,32,49',
|
430
|
+
'40,41,293,49,40,41,176,284,32,194,40,41,32,194,32,32,32,194,32,32,32',
|
431
|
+
'196,194,351,352,196,194,353,42,196,334,53,194,338,196,53,209,407,196',
|
432
|
+
'350,209,336,40,41,196,406,55,56,57,58,59,60,61,62,355,186,63,54,64,65',
|
433
|
+
'66,77,67,68,69,83,40,41,53,346,340,341,53,366,344,342,345,126,2,3,4',
|
434
|
+
'343,82,70,71,72,74,76,75,339,348,349,73,78,80,39,398,410,186,84,85,81',
|
435
|
+
'86,351,352,40,41,353,180,43,411,-4,48,-244,104,264,33,39,117,350,-244',
|
436
|
+
'186,186,40,41,113,55,56,57,58,59,60,61,62,79,186,63,54,64,65,66,77,67',
|
437
|
+
'68,69,83,40,41,120,346,340,341,40,41,344,342,345,32,40,41,125,343,82',
|
438
|
+
'70,71,72,74,76,75,339,348,349,73,78,80,40,41,40,41,84,85,81,86,351,352',
|
439
|
+
'40,41,353,39,96,97,98,99,101,102,40,41,103,165,350,40,41,40,41,40,41',
|
440
|
+
'55,56,57,58,59,60,61,62,79,166,63,54,64,65,66,77,67,68,69,83,40,41,167',
|
441
|
+
'346,340,341,286,287,344,342,345,369,370,40,41,343,82,70,71,72,74,76',
|
442
|
+
'75,339,348,349,73,78,80,40,41,385,386,84,85,81,86,351,352,40,41,353',
|
443
|
+
'168,96,97,98,99,40,41,40,41,40,41,350,40,41,40,41,40,41,55,56,57,58',
|
444
|
+
'59,60,61,62,79,170,63,54,64,65,66,77,67,68,69,83,171,172,113,346,340',
|
445
|
+
'341,178,181,344,342,345,184,41,187,189,343,82,70,71,72,74,76,75,339',
|
446
|
+
'348,349,73,78,80,180,190,-104,-105,84,85,81,86,351,352,-106,-107,353',
|
447
|
+
'-108,96,97,98,99,-109,-110,-111,-112,-113,-114,350,48,-129,197,198,199',
|
448
|
+
'200,55,56,57,58,59,60,61,62,79,201,63,54,64,65,66,77,67,68,69,83,202',
|
449
|
+
'210,211,346,340,341,42,212,344,342,345,230,244,253,254,343,82,70,71',
|
450
|
+
'72,74,76,75,339,348,349,73,78,80,255,257,259,260,84,85,81,86,351,352',
|
451
|
+
'42,262,353,262,262,266,42,230,270,274,276,291,292,315,350,274,317,291',
|
452
|
+
'330,331,332,55,56,57,58,59,60,61,62,79,357,63,54,64,65,66,77,67,68,69',
|
453
|
+
'83,357,357,365,346,340,341,367,368,344,342,345,371,373,380,381,343,82',
|
454
|
+
'70,71,72,74,76,75,339,348,349,73,78,80,382,390,390,390,84,85,81,86,351',
|
455
|
+
'352,402,403,353,404,96,97,98,99,405,408,409,414,415,416,350,418,421',
|
456
|
+
'414,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,,,',
|
457
|
+
'346,340,341,,,344,342,345,,,,,343,82,70,71,72,74,76,75,339,348,349,73',
|
458
|
+
'78,80,,,,,84,85,81,86,351,352,,,353,,,,,,,,,,,,350,,,,,,,55,56,57,58',
|
459
|
+
'59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,,,,346,340,341,,,344,342',
|
460
|
+
'345,,,,,343,82,70,71,72,74,76,75,339,348,349,73,78,80,,,,,84,85,81,86',
|
461
|
+
'33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133,134,135,136',
|
462
|
+
'137,138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,,156,,157',
|
463
|
+
'159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97',
|
464
|
+
'98,99,,,,22,23,21,,26,,25,,30,,131,132,133,134,135,136,137,138,142,16',
|
465
|
+
'139,130,140,141,66,77,67,68,69,83,,32,,,,28,,,,,,,,,,,82,70,71,72,74',
|
466
|
+
'76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-219',
|
467
|
+
'25,,30,,131,132,133,134,135,136,137,138,142,16,139,130,140,141,66,77',
|
468
|
+
'67,68,69,83,,32,,,,28,,156,,157,159,,,,,,82,70,71,72,74,76,75,,,,73',
|
469
|
+
'78,80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,',
|
470
|
+
'131,132,133,134,135,136,137,138,142,16,139,130,140,141,66,77,67,68,69',
|
471
|
+
'83,,32,,,,28,,156,,157,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,',
|
449
472
|
',84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133',
|
450
473
|
'134,135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,',
|
451
|
-
'28,,
|
452
|
-
'
|
453
|
-
'
|
454
|
-
'
|
455
|
-
'
|
456
|
-
'
|
457
|
-
'
|
458
|
-
'
|
459
|
-
'
|
460
|
-
'
|
461
|
-
'
|
462
|
-
'
|
463
|
-
'
|
464
|
-
'
|
465
|
-
'
|
466
|
-
'
|
467
|
-
'
|
468
|
-
'
|
469
|
-
'
|
470
|
-
'
|
471
|
-
'
|
472
|
-
',,,,
|
473
|
-
'
|
474
|
-
'
|
475
|
-
'
|
476
|
-
',,
|
477
|
-
',,
|
478
|
-
',
|
479
|
-
'22,23,21
|
480
|
-
'
|
474
|
+
'28,,236,,,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86',
|
475
|
+
'33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133,134,135,136',
|
476
|
+
'137,138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,,156,,157',
|
477
|
+
'159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97',
|
478
|
+
'98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133,134,135,136,137,138,142',
|
479
|
+
'16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,,236,,,159,,,,,,82,70',
|
480
|
+
'71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,96,97,98,99,,,,90,89,91,',
|
481
|
+
',,,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,,,,',
|
482
|
+
',,,,,,,,,,,,82,70,71,72,74,76,75,,95,94,73,78,80,,,,,84,85,81,86,96',
|
483
|
+
'97,98,99,,,,90,89,91,,,,,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65',
|
484
|
+
'66,77,67,68,69,83,,,,,,,,,,,,,,,,,82,70,71,72,74,76,75,,95,94,73,78',
|
485
|
+
'80,96,97,98,99,84,85,81,86,,,,,,,,,,55,56,57,58,59,60,61,62,79,,63,54',
|
486
|
+
'64,65,66,77,67,68,69,83,,,,,,,,236,,,159,,,,,,82,70,71,72,74,76,75,',
|
487
|
+
',,73,78,80,96,97,98,99,84,85,81,86,,,,,,,,,,55,56,57,58,59,60,61,62',
|
488
|
+
'79,,63,54,64,65,66,77,67,68,69,83,,,,,,,,236,,,159,,,,,,82,70,71,72',
|
489
|
+
'74,76,75,,,,73,78,80,96,97,98,99,84,85,81,86,,,,,,,,,,55,56,57,58,59',
|
490
|
+
'60,61,62,79,,63,54,64,65,66,77,67,68,69,83,-244,,,33,,117,,-244,,,312',
|
491
|
+
'313,113,,,,82,70,71,72,74,76,75,,,,73,78,80,,,314,,84,85,81,86,,,,309',
|
492
|
+
'308,-244,,32,33,,117,,-244,,,312,313,113,,-244,,,33,300,117,,-244,,',
|
493
|
+
'312,313,113,,,,,314,,,,,,,,,309,308,,,32,314,,,,,,,,,309,308,,33,32',
|
494
|
+
',318,,,,,,,22,23,21,,26,,25,319,30,,8,12,19,20,9,10,13,14,15,16,17,18',
|
495
|
+
'11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,45,30,,8,12,19,20,9,10,13,14',
|
496
|
+
'15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20',
|
497
|
+
'9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30',
|
498
|
+
',8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21',
|
499
|
+
',26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,',
|
500
|
+
'28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33',
|
501
|
+
',,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18',
|
502
|
+
'11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14',
|
503
|
+
'15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,-248,30,,8,12,19',
|
504
|
+
'20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,',
|
505
|
+
'30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23',
|
506
|
+
'21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
|
507
|
+
',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
|
508
|
+
',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
|
509
|
+
'17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
|
510
|
+
'13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
|
511
|
+
'19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25',
|
512
|
+
',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23',
|
513
|
+
'21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
|
514
|
+
',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
|
515
|
+
',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
|
516
|
+
'17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
|
517
|
+
'13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
|
518
|
+
'19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25',
|
519
|
+
',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23',
|
520
|
+
'21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
|
521
|
+
',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
|
522
|
+
',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
|
523
|
+
'17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
|
524
|
+
'13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
|
525
|
+
'19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25',
|
526
|
+
',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23',
|
527
|
+
'21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
|
528
|
+
',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
|
529
|
+
',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
|
481
530
|
'17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
|
482
531
|
'13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
|
483
532
|
'19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25',
|
@@ -485,45 +534,12 @@ clist = [
|
|
485
534
|
'21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
|
486
535
|
',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
|
487
536
|
',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
|
488
|
-
'17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25
|
489
|
-
'
|
490
|
-
'
|
491
|
-
',
|
492
|
-
'
|
493
|
-
|
494
|
-
'27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
|
495
|
-
'16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
|
496
|
-
'10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
|
497
|
-
'12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
|
498
|
-
',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
|
499
|
-
'23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
|
500
|
-
'32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
|
501
|
-
'27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
|
502
|
-
'16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
|
503
|
-
'10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
|
504
|
-
'12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
|
505
|
-
',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
|
506
|
-
'23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
|
507
|
-
'32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
|
508
|
-
'27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
|
509
|
-
'16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
|
510
|
-
'10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
|
511
|
-
'12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
|
512
|
-
',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
|
513
|
-
'23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
|
514
|
-
'32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
|
515
|
-
'27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
|
516
|
-
'16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
|
517
|
-
'10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
|
518
|
-
'12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
|
519
|
-
',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
|
520
|
-
'23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
|
521
|
-
'32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
|
522
|
-
'27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
|
523
|
-
'16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
|
524
|
-
'10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
|
525
|
-
'12,19,20,9,10,13,14,15,16,17,18,11,27,,,,,,,,32,,,,28' ]
|
526
|
-
racc_action_table = arr = ::Array.new(3044, nil)
|
537
|
+
'17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
|
538
|
+
'13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
|
539
|
+
'19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25',
|
540
|
+
',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,174,,,177,,175,,32,324',
|
541
|
+
',,28,,,,,,,,,,,,,,176,,322,328,325,326,327,,,,329' ]
|
542
|
+
racc_action_table = arr = ::Array.new(3142, nil)
|
527
543
|
idx = 0
|
528
544
|
clist.each do |str|
|
529
545
|
str.split(',', -1).each do |i|
|
@@ -533,104 +549,105 @@ clist = [
|
|
533
549
|
end
|
534
550
|
|
535
551
|
clist = [
|
536
|
-
'
|
537
|
-
'
|
538
|
-
'
|
539
|
-
'
|
540
|
-
'
|
541
|
-
'323,
|
542
|
-
'
|
543
|
-
'
|
544
|
-
'
|
545
|
-
'
|
546
|
-
'
|
547
|
-
'
|
548
|
-
'
|
549
|
-
'
|
550
|
-
'
|
551
|
-
'
|
552
|
-
'
|
553
|
-
'
|
554
|
-
'
|
555
|
-
'359,359,359,359,359,359,359,359,
|
556
|
-
'359,359,
|
557
|
-
'359,359,
|
558
|
-
'
|
559
|
-
'
|
560
|
-
'
|
561
|
-
'
|
562
|
-
'
|
563
|
-
'
|
564
|
-
'
|
565
|
-
'
|
566
|
-
'
|
567
|
-
'
|
568
|
-
'
|
569
|
-
'
|
570
|
-
'
|
571
|
-
'
|
572
|
-
'
|
573
|
-
'
|
574
|
-
'
|
575
|
-
'
|
576
|
-
'
|
577
|
-
'
|
578
|
-
'
|
579
|
-
'
|
580
|
-
'
|
581
|
-
'
|
582
|
-
'
|
583
|
-
'
|
584
|
-
'
|
585
|
-
'
|
586
|
-
'
|
587
|
-
'
|
588
|
-
'
|
589
|
-
'
|
590
|
-
',,,,
|
591
|
-
',
|
592
|
-
'
|
593
|
-
'
|
594
|
-
'
|
595
|
-
'
|
596
|
-
'
|
597
|
-
'
|
598
|
-
'
|
599
|
-
'
|
600
|
-
'
|
601
|
-
'
|
602
|
-
'
|
603
|
-
'
|
604
|
-
'
|
605
|
-
'
|
606
|
-
'
|
607
|
-
'
|
608
|
-
'
|
609
|
-
'
|
610
|
-
'
|
611
|
-
'288
|
612
|
-
'
|
613
|
-
'
|
614
|
-
',
|
615
|
-
',
|
616
|
-
',,40,
|
617
|
-
',,
|
618
|
-
'
|
619
|
-
'
|
620
|
-
'
|
621
|
-
'
|
622
|
-
'125
|
623
|
-
'
|
624
|
-
'
|
625
|
-
'158,158
|
626
|
-
'
|
627
|
-
'
|
628
|
-
'166,166,166
|
629
|
-
'
|
630
|
-
'
|
631
|
-
'168,168,168,168
|
632
|
-
'
|
633
|
-
',170,
|
552
|
+
'143,143,48,143,203,203,177,203,205,205,220,205,280,206,206,221,206,207',
|
553
|
+
'207,51,207,116,298,240,240,222,240,123,116,264,183,270,276,291,1,322',
|
554
|
+
'328,329,5,114,271,298,114,48,114,143,143,177,51,203,203,220,123,205',
|
555
|
+
'205,183,221,28,206,206,280,119,207,207,114,271,222,143,240,240,264,203',
|
556
|
+
'270,276,291,205,322,328,329,143,206,324,324,203,207,324,7,205,321,28',
|
557
|
+
'240,323,206,119,160,390,207,324,210,323,44,44,240,390,324,324,324,324',
|
558
|
+
'324,324,324,324,324,321,324,324,324,324,324,324,324,324,324,324,6,6',
|
559
|
+
'160,324,324,324,210,333,324,324,324,47,0,0,0,324,324,324,324,324,324',
|
560
|
+
'324,324,324,324,324,324,324,324,6,383,395,333,324,324,324,324,356,356',
|
561
|
+
'47,47,356,250,24,396,34,27,34,32,250,34,35,34,356,34,383,395,169,169',
|
562
|
+
'34,356,356,356,356,356,356,356,356,356,396,356,356,356,356,356,356,356',
|
563
|
+
'356,356,356,188,188,36,356,356,356,214,214,356,356,356,34,215,215,46',
|
564
|
+
'356,356,356,356,356,356,356,356,356,356,356,356,356,356,216,216,217',
|
565
|
+
'217,356,356,356,356,358,358,218,218,358,34,358,358,358,358,31,31,219',
|
566
|
+
'219,31,87,358,225,225,226,226,227,227,358,358,358,358,358,358,358,358',
|
567
|
+
'358,89,358,358,358,358,358,358,358,358,358,358,267,267,90,358,358,358',
|
568
|
+
'273,273,358,358,358,347,347,363,363,358,358,358,358,358,358,358,358',
|
569
|
+
'358,358,358,358,358,358,364,364,368,368,358,358,358,358,359,359,388',
|
570
|
+
'388,359,91,359,359,359,359,391,391,393,393,397,397,359,417,417,419,419',
|
571
|
+
'420,420,359,359,359,359,359,359,359,359,359,93,359,359,359,359,359,359',
|
572
|
+
'359,359,359,359,94,95,113,359,359,359,115,117,359,359,359,120,121,124',
|
573
|
+
'127,359,359,359,359,359,359,359,359,359,359,359,359,359,359,128,129',
|
574
|
+
'130,131,359,359,359,359,360,360,132,133,360,134,360,360,360,360,135',
|
575
|
+
'136,137,138,139,140,360,141,142,145,146,148,150,360,360,360,360,360',
|
576
|
+
'360,360,360,360,153,360,360,360,360,360,360,360,360,360,360,154,161',
|
577
|
+
'162,360,360,360,163,164,360,360,360,190,208,223,224,360,360,360,360',
|
578
|
+
'360,360,360,360,360,360,360,360,360,360,229,234,245,246,360,360,360',
|
579
|
+
'360,371,371,247,248,371,249,251,252,256,259,261,262,263,277,279,282',
|
580
|
+
'371,284,285,289,312,313,314,371,371,371,371,371,371,371,371,371,325',
|
581
|
+
'371,371,371,371,371,371,371,371,371,371,326,327,332,371,371,371,335',
|
582
|
+
'337,371,371,371,355,357,361,362,371,371,371,371,371,371,371,371,371',
|
583
|
+
'371,371,371,371,371,365,375,377,379,371,371,371,371,384,384,385,386',
|
584
|
+
'384,387,384,384,384,384,389,392,394,399,401,404,384,407,413,421,,,,384',
|
585
|
+
'384,384,384,384,384,384,384,384,,384,384,384,384,384,384,384,384,384',
|
586
|
+
'384,,,,384,384,384,,,384,384,384,,,,,384,384,384,384,384,384,384,384',
|
587
|
+
'384,384,384,384,384,384,,,,,384,384,384,384,416,416,,,416,,,,,,,,,,',
|
588
|
+
',416,,,,,,,416,416,416,416,416,416,416,416,416,,416,416,416,416,416',
|
589
|
+
'416,416,416,416,416,,,,416,416,416,,,416,416,416,,,,,416,416,416,416',
|
590
|
+
'416,416,416,416,416,416,416,416,416,416,,,,,416,416,416,416,49,,,49',
|
591
|
+
'49,49,49,,,,49,49,49,,49,49,49,,49,,49,49,49,49,49,49,49,49,49,49,49',
|
592
|
+
'49,49,49,49,49,49,49,49,49,,49,,,,49,,49,,49,49,,,,,,49,49,49,49,49',
|
593
|
+
'49,49,,,,49,49,49,,,,,49,49,49,49,156,,,156,156,156,156,,,,156,156,156',
|
594
|
+
',156,,156,,156,,156,156,156,156,156,156,156,156,156,156,156,156,156',
|
595
|
+
'156,156,156,156,156,156,156,,156,,,,156,,,,,,,,,,,156,156,156,156,156',
|
596
|
+
'156,156,,,,156,156,156,,,,,156,156,156,156,198,,,198,198,198,198,,,',
|
597
|
+
'198,198,198,,198,198,198,,198,,198,198,198,198,198,198,198,198,198,198',
|
598
|
+
'198,198,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,199',
|
600
|
+
',,199,199,199,199,,,,199,199,199,,199,199,199,,199,,199,199,199,199',
|
601
|
+
'199,199,199,199,199,199,199,199,199,199,199,199,199,199,199,199,,199',
|
602
|
+
',,,199,,199,,199,199,,,,,,199,199,199,199,199,199,199,,,,199,199,199',
|
603
|
+
',,,,199,199,199,199,200,,,200,200,200,200,,,,200,200,200,,200,200,200',
|
604
|
+
',200,,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200',
|
605
|
+
'200,200,200,200,,200,,,,200,,200,,,200,,,,,,200,200,200,200,200,200',
|
606
|
+
'200,,,,200,200,200,,,,,200,200,200,200,209,,,209,209,209,209,,,,209',
|
607
|
+
'209,209,,209,209,209,,209,,209,209,209,209,209,209,209,209,209,209,209',
|
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,257,,,257',
|
610
|
+
'257,257,257,,,,257,257,257,,257,257,257,,257,,257,257,257,257,257,257',
|
611
|
+
'257,257,257,257,257,257,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',
|
613
|
+
'257,257,30,30,30,30,,,,30,30,30,,,,,,,,30,30,30,30,30,30,30,30,30,,30',
|
614
|
+
'30,30,30,30,30,30,30,30,30,,,,,,,,,,,,,,,,,30,30,30,30,30,30,30,,30',
|
615
|
+
'30,30,30,30,,,,,30,30,30,30,165,165,165,165,,,,165,165,165,,,,,,,,165',
|
616
|
+
'165,165,165,165,165,165,165,165,,165,165,165,165,165,165,165,165,165',
|
617
|
+
'165,,,,,,,,,,,,,,,,,165,165,165,165,165,165,165,,165,165,165,165,165',
|
618
|
+
'201,201,201,201,165,165,165,165,,,,,,,,,,201,201,201,201,201,201,201',
|
619
|
+
'201,201,,201,201,201,201,201,201,201,201,201,201,,,,,,,,201,,,201,,',
|
620
|
+
',,,201,201,201,201,201,201,201,,,,201,201,201,202,202,202,202,201,201',
|
621
|
+
'201,201,,,,,,,,,,202,202,202,202,202,202,202,202,202,,202,202,202,202',
|
622
|
+
'202,202,202,202,202,202,,,,,,,,202,,,202,,,,,,202,202,202,202,202,202',
|
623
|
+
'202,,,,202,202,202,236,236,236,236,202,202,202,202,,,,,,,,,,236,236',
|
624
|
+
'236,236,236,236,236,236,236,,236,236,236,236,236,236,236,236,236,236',
|
625
|
+
'281,,,281,,281,,281,,,281,281,281,,,,236,236,236,236,236,236,236,,,',
|
626
|
+
'236,236,236,,,281,,236,236,236,236,,,,281,281,288,,281,288,,288,,288',
|
627
|
+
',,288,288,288,,290,,,290,281,290,,290,,,290,290,290,,,,,288,,,,,,,,',
|
628
|
+
'288,288,,,288,290,,,,,,,,,290,290,,2,290,,288,,,,,,,2,2,2,,2,,2,290',
|
629
|
+
'2,,2,2,2,2,2,2,2,2,2,2,2,2,2,2,,,25,,,,,2,,,,2,25,25,25,,25,,25,25,25',
|
630
|
+
',25,25,25,25,25,25,25,25,25,25,25,25,25,25,,,26,,,,,25,,,,25,26,26,26',
|
631
|
+
',26,,26,,26,,26,26,26,26,26,26,26,26,26,26,26,26,26,26,,,40,,,,,26,',
|
632
|
+
',,26,40,40,40,,40,,40,,40,,40,40,40,40,40,40,40,40,40,40,40,40,40,40',
|
633
|
+
',,41,,,,,40,,,,40,41,41,41,,41,,41,,41,,41,41,41,41,41,41,41,41,41,41',
|
634
|
+
'41,41,41,41,,,43,,,,,41,,,,41,43,43,43,,43,,43,,43,,43,43,43,43,43,43',
|
635
|
+
'43,43,43,43,43,43,43,43,,,53,,,,,43,,,,43,53,53,53,,53,,53,,53,,53,53',
|
636
|
+
'53,53,53,53,53,53,53,53,53,53,53,53,,,92,,,,,53,,,,53,92,92,92,,92,',
|
637
|
+
'92,,92,,92,92,92,92,92,92,92,92,92,92,92,92,92,92,,,125,,,,,92,,,,92',
|
638
|
+
'125,125,125,,125,,125,125,125,,125,125,125,125,125,125,125,125,125,125',
|
639
|
+
'125,125,125,125,,,157,,,,,125,,,,125,157,157,157,,157,,157,,157,,157',
|
640
|
+
'157,157,157,157,157,157,157,157,157,157,157,157,157,,,158,,,,,157,,',
|
641
|
+
',157,158,158,158,,158,,158,,158,,158,158,158,158,158,158,158,158,158',
|
642
|
+
'158,158,158,158,158,,,159,,,,,158,,,,158,159,159,159,,159,,159,,159',
|
643
|
+
',159,159,159,159,159,159,159,159,159,159,159,159,159,159,,,166,,,,,159',
|
644
|
+
',,,159,166,166,166,,166,,166,,166,,166,166,166,166,166,166,166,166,166',
|
645
|
+
'166,166,166,166,166,,,167,,,,,166,,,,166,167,167,167,,167,,167,,167',
|
646
|
+
',167,167,167,167,167,167,167,167,167,167,167,167,167,167,,,168,,,,,167',
|
647
|
+
',,,167,168,168,168,,168,,168,,168,,168,168,168,168,168,168,168,168,168',
|
648
|
+
'168,168,168,168,168,,,170,,,,,168,,,,168,170,170,170,,170,,170,,170',
|
649
|
+
',170,170,170,170,170,170,170,170,170,170,170,170,170,170,,,171,,,,,170',
|
650
|
+
',,,170,171,171,171,,171,,171,,171,,171,171,171,171,171,171,171,171,171',
|
634
651
|
'171,171,171,171,171,,,172,,,,,171,,,,171,172,172,172,,172,,172,,172',
|
635
652
|
',172,172,172,172,172,172,172,172,172,172,172,172,172,172,,,178,,,,,172',
|
636
653
|
',,,172,178,178,178,,178,,178,,178,,178,178,178,178,178,178,178,178,178',
|
@@ -638,36 +655,36 @@ clist = [
|
|
638
655
|
',179,179,179,179,179,179,179,179,179,179,179,179,179,179,,,181,,,,,179',
|
639
656
|
',,,179,181,181,181,,181,,181,,181,,181,181,181,181,181,181,181,181,181',
|
640
657
|
'181,181,181,181,181,,,186,,,,,181,,,,181,186,186,186,,186,,186,,186',
|
641
|
-
',186,186,186,186,186,186,186,186,186,186,186,186,186,186,,,
|
642
|
-
',,,186,
|
643
|
-
'
|
644
|
-
',
|
645
|
-
',,,
|
646
|
-
'
|
647
|
-
',
|
648
|
-
',,,
|
649
|
-
'
|
650
|
-
',315,315,315,315,315,315,315,315,315,315,315,315,315,315,,,
|
651
|
-
',,,315,
|
652
|
-
'
|
653
|
-
',
|
654
|
-
',,,
|
655
|
-
'
|
656
|
-
',
|
657
|
-
',,,
|
658
|
-
'
|
659
|
-
',
|
660
|
-
',,,
|
661
|
-
'
|
662
|
-
',
|
663
|
-
',,,
|
664
|
-
'
|
665
|
-
',
|
666
|
-
',,,
|
667
|
-
'
|
668
|
-
',
|
669
|
-
',,,
|
670
|
-
racc_action_check = arr = ::Array.new(
|
658
|
+
',186,186,186,186,186,186,186,186,186,186,186,186,186,186,,,204,,,,,186',
|
659
|
+
',,,186,204,204,204,,204,,204,,204,,204,204,204,204,204,204,204,204,204',
|
660
|
+
'204,204,204,204,204,,,211,,,,,204,,,,204,211,211,211,,211,,211,,211',
|
661
|
+
',211,211,211,211,211,211,211,211,211,211,211,211,211,211,,,230,,,,,211',
|
662
|
+
',,,211,230,230,230,,230,,230,,230,,230,230,230,230,230,230,230,230,230',
|
663
|
+
'230,230,230,230,230,,,253,,,,,230,,,,230,253,253,253,,253,,253,,253',
|
664
|
+
',253,253,253,253,253,253,253,253,253,253,253,253,253,253,,,292,,,,,253',
|
665
|
+
',,,253,292,292,292,,292,,292,,292,,292,292,292,292,292,292,292,292,292',
|
666
|
+
'292,292,292,292,292,,,315,,,,,292,,,,292,315,315,315,,315,,315,,315',
|
667
|
+
',315,315,315,315,315,315,315,315,315,315,315,315,315,315,,,330,,,,,315',
|
668
|
+
',,,315,330,330,330,,330,,330,,330,,330,330,330,330,330,330,330,330,330',
|
669
|
+
'330,330,330,330,330,,,331,,,,,330,,,,330,331,331,331,,331,,331,,331',
|
670
|
+
',331,331,331,331,331,331,331,331,331,331,331,331,331,331,,,367,,,,,331',
|
671
|
+
',,,331,367,367,367,,367,,367,,367,,367,367,367,367,367,367,367,367,367',
|
672
|
+
'367,367,367,367,367,,,374,,,,,367,,,,367,374,374,374,,374,,374,,374',
|
673
|
+
',374,374,374,374,374,374,374,374,374,374,374,374,374,374,,,376,,,,,374',
|
674
|
+
',,,374,376,376,376,,376,,376,,376,,376,376,376,376,376,376,376,376,376',
|
675
|
+
'376,376,376,376,376,,,378,,,,,376,,,,376,378,378,378,,378,,378,,378',
|
676
|
+
',378,378,378,378,378,378,378,378,378,378,378,378,378,378,,,380,,,,,378',
|
677
|
+
',,,378,380,380,380,,380,,380,,380,,380,380,380,380,380,380,380,380,380',
|
678
|
+
'380,380,380,380,380,,,381,,,,,380,,,,380,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,,,405,,,,,382,,,,382,405,405,405,,405,,405,,405',
|
682
|
+
',405,405,405,405,405,405,405,405,405,405,405,405,405,405,,,408,,,,,405',
|
683
|
+
',,,405,408,408,408,,408,,408,,408,,408,408,408,408,408,408,408,408,408',
|
684
|
+
'408,408,408,408,408,,,409,,,,,408,,,,408,409,409,409,,409,,409,,409',
|
685
|
+
',409,409,409,409,409,409,409,409,409,409,409,409,409,409,299,,,299,',
|
686
|
+
'299,,409,299,,,409,,,,,,,,,,,,,,299,,299,299,299,299,299,,,,299' ]
|
687
|
+
racc_action_check = arr = ::Array.new(3142, nil)
|
671
688
|
idx = 0
|
672
689
|
clist.each do |str|
|
673
690
|
str.split(',', -1).each do |i|
|
@@ -677,537 +694,543 @@ clist = [
|
|
677
694
|
end
|
678
695
|
|
679
696
|
racc_action_pointer = [
|
680
|
-
|
697
|
+
62, 34, 1663, nil, nil, 38, 76, 34, nil, nil,
|
698
|
+
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
699
|
+
nil, nil, nil, nil, 146, 1699, 1735, 151, 38, nil,
|
700
|
+
1252, 249, 167, nil, 169, 98, 185, nil, nil, nil,
|
701
|
+
1771, 1807, nil, 1843, 52, nil, 171, 115, -3, 716,
|
702
|
+
nil, -4, nil, 1879, nil, nil, nil, nil, nil, nil,
|
681
703
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
682
|
-
nil, nil, nil, nil, -4, 1626, 1662, 56, -6, nil,
|
683
|
-
1140, 167, 84, nil, 316, 14, 140, nil, nil, nil,
|
684
|
-
1698, 1734, nil, 1770, -27, nil, 121, 52, -2, 604,
|
685
|
-
nil, 101, nil, 1806, nil, nil, nil, nil, nil, nil,
|
686
704
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
705
|
+
nil, nil, nil, nil, nil, nil, nil, 209, nil, 217,
|
706
|
+
230, 270, 1915, 308, 319, 320, nil, nil, nil, nil,
|
687
707
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
688
|
-
nil, nil, nil,
|
689
|
-
|
708
|
+
nil, nil, nil, 352, 3, 325, 19, 326, nil, 42,
|
709
|
+
373, 327, nil, 5, 355, 1951, nil, 358, 391, 374,
|
710
|
+
350, 351, 358, 359, 361, 366, 367, 368, 369, 370,
|
711
|
+
371, 399, 374, -3, nil, 375, 374, nil, 375, nil,
|
712
|
+
376, nil, nil, 386, 397, nil, 793, 1987, 2023, 2059,
|
713
|
+
75, 422, 395, 398, 427, 1326, 2095, 2131, 2167, 133,
|
714
|
+
2203, 2239, 2275, nil, nil, nil, nil, 1, 2311, 2347,
|
715
|
+
nil, 2383, nil, 8, nil, nil, 2419, nil, 156, nil,
|
716
|
+
404, nil, nil, nil, nil, nil, nil, nil, 870, 947,
|
717
|
+
1024, 1392, 1458, 1, 2455, 5, 10, 14, 432, 1101,
|
718
|
+
79, 2491, nil, nil, 162, 168, 185, 187, 195, 205,
|
719
|
+
5, 10, 20, 400, 455, 210, 212, 214, nil, 471,
|
720
|
+
2527, nil, nil, nil, 427, nil, 1524, nil, nil, nil,
|
721
|
+
20, nil, nil, nil, nil, 455, 452, 431, 463, 465,
|
722
|
+
164, 466, 482, 2563, nil, nil, 437, 1178, nil, 439,
|
723
|
+
nil, 431, 412, 448, 24, nil, nil, 236, nil, nil,
|
724
|
+
26, 18, nil, 212, nil, nil, 27, 447, nil, 474,
|
725
|
+
-2, 1567, 475, nil, 418, 497, nil, nil, 1609, 453,
|
726
|
+
1623, 28, 2599, nil, nil, nil, nil, nil, -22, 3070,
|
690
727
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
691
|
-
nil, nil,
|
692
|
-
|
693
|
-
|
694
|
-
|
695
|
-
|
696
|
-
|
697
|
-
|
698
|
-
|
699
|
-
|
700
|
-
|
701
|
-
nil, nil,
|
702
|
-
|
703
|
-
nil, nil, 465, nil, 1412, nil, nil, nil, 1459, nil,
|
704
|
-
nil, nil, nil, 493, 490, 463, 511, 517, 27, 518,
|
705
|
-
534, 2490, nil, nil, 489, 1066, nil, 491, nil, 483,
|
706
|
-
464, 501, 500, nil, 527, nil, nil, 303, nil, nil,
|
707
|
-
38, 132, nil, 279, nil, nil, 52, 1506, 77, 2526,
|
708
|
-
-8, 1528, 528, nil, 470, 548, nil, nil, 1550, 514,
|
709
|
-
1537, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
710
|
-
nil, nil, nil, 527, 528, 516, nil, 154, nil, nil,
|
711
|
-
nil, nil, nil, 168, nil, 2562, nil, nil, nil, 545,
|
712
|
-
546, 550, 87, 88, 89, -62, -2, 2598, 2634, 572,
|
713
|
-
nil, 155, 527, 77, 156, 235, 565, 580, 581, nil,
|
714
|
-
563, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
715
|
-
311, nil, nil, nil, nil, nil, nil, nil, 546, 306,
|
716
|
-
340, 342, 565, nil, nil, 2670, 592, 2706, 597, 2742,
|
717
|
-
598, 2778, 2814, 2850, 363, nil, nil, 377, nil, 2886,
|
718
|
-
350, 573, 0, 352, 577, 374, 581, 156, 168, 185,
|
719
|
-
456, 570, 591, 618, 380, 2922, nil, 632, 2958, 2994,
|
720
|
-
nil, nil, nil, 594, nil, 610, nil, nil, 599, 385,
|
721
|
-
nil, 387, 403, nil, 612, nil, nil, 527, 602, nil,
|
722
|
-
nil ]
|
728
|
+
nil, nil, 456, 457, 445, 2635, nil, nil, nil, nil,
|
729
|
+
nil, 66, 30, 18, 79, 480, 491, 492, 31, 32,
|
730
|
+
2671, 2707, 514, 109, nil, 509, nil, 491, nil, nil,
|
731
|
+
nil, nil, nil, nil, nil, nil, nil, 243, nil, nil,
|
732
|
+
nil, nil, nil, nil, nil, 477, 159, 478, 239, 319,
|
733
|
+
399, 516, 517, 249, 265, 508, nil, 2743, 282, nil,
|
734
|
+
nil, 479, nil, nil, 2779, 535, 2815, 536, 2851, 537,
|
735
|
+
2887, 2923, 2959, 132, 559, 505, 506, 533, 275, 526,
|
736
|
+
83, 283, 527, 285, 528, 133, 146, 287, nil, 515,
|
737
|
+
nil, 530, nil, nil, 518, 2995, nil, 558, 3031, 3067,
|
738
|
+
nil, nil, nil, 531, nil, nil, 639, 290, nil, 292,
|
739
|
+
294, 521, nil, nil ]
|
723
740
|
|
724
741
|
racc_action_default = [
|
725
|
-
-
|
742
|
+
-250, -250, -244, -6, -15, -250, -4, -157, -160, -161,
|
726
743
|
-162, -163, -164, -165, -166, -167, -168, -169, -170, -171,
|
727
|
-
-172, -173, -174, -175, -176, -
|
728
|
-
-
|
729
|
-
-
|
730
|
-
-182, -
|
744
|
+
-172, -173, -174, -175, -176, -244, -244, -250, -80, -184,
|
745
|
+
-250, -250, -245, -247, -16, -4, -147, 424, -1, -5,
|
746
|
+
-244, -244, -183, -244, -185, -178, -249, -250, -244, -244,
|
747
|
+
-182, -250, -204, -244, -104, -105, -106, -107, -108, -109,
|
731
748
|
-110, -111, -112, -113, -114, -115, -116, -117, -118, -119,
|
732
749
|
-120, -121, -122, -123, -124, -125, -126, -127, -128, -129,
|
733
|
-
-130, -131, -132, -133, -134, -135, -136, -
|
734
|
-
-
|
735
|
-
-
|
736
|
-
-11, -12, -13, -16, -
|
737
|
-
-
|
750
|
+
-130, -131, -132, -133, -134, -135, -136, -249, -188, -250,
|
751
|
+
-250, -250, -244, -250, -250, -250, -199, -200, -201, -202,
|
752
|
+
-237, -238, -239, -240, -246, -2, -7, -8, -9, -10,
|
753
|
+
-11, -12, -13, -16, -250, -250, -250, -250, -3, -80,
|
754
|
+
-250, -158, -159, -250, -250, -244, -180, -250, -250, -250,
|
738
755
|
-170, -160, -164, -171, -172, -161, -162, -165, -166, -169,
|
739
|
-
-163, -115, -167, -231, -197, -
|
740
|
-
-214, -215, -218, -221, -223, -224, -
|
741
|
-
-
|
742
|
-
-
|
743
|
-
-
|
744
|
-
-81, -225, -232, -233, -234, -
|
745
|
-
-
|
746
|
-
-187, -189, -190, -191, -192, -194, -195, -196,
|
747
|
-
-
|
748
|
-
-215, -210, -217, -213, -
|
749
|
-
-228, -230, -82, -
|
750
|
-
-
|
751
|
-
|
752
|
-
-
|
753
|
-
-16, -16, -20, -138, -145, -
|
754
|
-
-
|
755
|
-
-
|
756
|
-
-
|
757
|
-
-
|
758
|
-
|
759
|
-
|
760
|
-
-
|
761
|
-
|
762
|
-
-
|
763
|
-
|
764
|
-
-
|
765
|
-
-
|
766
|
-
-
|
767
|
-
-78 ]
|
756
|
+
-163, -115, -167, -231, -197, -250, -208, -209, -211, -212,
|
757
|
+
-214, -215, -218, -221, -223, -224, -244, -244, -244, -244,
|
758
|
+
-250, -250, -250, -206, -250, -248, -244, -244, -244, -193,
|
759
|
+
-244, -244, -244, -17, -14, -14, -14, -244, -244, -244,
|
760
|
+
-242, -244, -79, -250, -149, -177, -244, -179, -186, -181,
|
761
|
+
-81, -225, -232, -233, -234, -235, -236, -198, -244, -244,
|
762
|
+
-244, -219, -219, -231, -244, -231, -231, -231, -250, -244,
|
763
|
+
-250, -244, -187, -189, -190, -191, -192, -194, -195, -196,
|
764
|
+
-244, -244, -244, -250, -250, -154, -155, -156, -148, -250,
|
765
|
+
-244, -207, -215, -210, -217, -213, -250, -220, -222, -226,
|
766
|
+
-231, -227, -228, -230, -82, -250, -250, -203, -137, -137,
|
767
|
+
-250, -137, -250, -244, -243, -150, -205, -244, -229, -250,
|
768
|
+
-83, -19, -145, -24, -244, -57, -241, -153, -216, -30,
|
769
|
+
-244, -250, -139, -142, -146, -30, -244, -30, -26, -29,
|
770
|
+
-16, -16, -20, -138, -145, -250, -143, -144, -16, -25,
|
771
|
+
-16, -244, -244, -56, -58, -59, -60, -61, -71, -71,
|
772
|
+
-18, -31, -32, -33, -34, -35, -36, -37, -38, -39,
|
773
|
+
-40, -41, -250, -250, -250, -244, -140, -141, -22, -23,
|
774
|
+
-27, -250, -244, -68, -250, -42, -42, -42, -244, -244,
|
775
|
+
-244, -244, -250, -250, -28, -62, -69, -250, -72, -86,
|
776
|
+
-87, -88, -89, -90, -91, -92, -93, -94, -97, -98,
|
777
|
+
-99, -100, -101, -102, -103, -129, -250, -250, -250, -250,
|
778
|
+
-250, -64, -66, -53, -54, -250, -21, -244, -73, -95,
|
779
|
+
-96, -250, -151, -43, -244, -50, -244, -50, -244, -50,
|
780
|
+
-244, -244, -244, -250, -250, -250, -250, -250, -44, -250,
|
781
|
+
-250, -46, -250, -48, -250, -250, -250, -55, -63, -15,
|
782
|
+
-84, -250, -74, -75, -250, -244, -51, -250, -244, -244,
|
783
|
+
-65, -67, -70, -76, -77, -85, -250, -45, -52, -47,
|
784
|
+
-49, -15, -152, -78 ]
|
768
785
|
|
769
786
|
racc_goto_table = [
|
770
|
-
6,
|
771
|
-
50,
|
772
|
-
|
773
|
-
|
774
|
-
|
775
|
-
|
776
|
-
|
777
|
-
|
778
|
-
|
779
|
-
169,
|
780
|
-
nil,
|
781
|
-
nil, nil, nil,
|
787
|
+
6, 46, 116, 88, 93, 163, 114, 92, 127, 191,
|
788
|
+
356, 129, 50, 204, 208, 232, 128, 235, 124, 123,
|
789
|
+
234, 234, 279, 38, 47, 277, 412, 281, 272, 261,
|
790
|
+
263, 1, 265, 288, 279, 290, 34, 289, 121, 122,
|
791
|
+
237, 238, 372, 35, 375, 377, 379, 143, 423, 279,
|
792
|
+
316, 105, 118, 106, 389, 269, 392, 387, 394, 164,
|
793
|
+
220, 221, 222, 275, 246, 358, 359, 360, 320, 239,
|
794
|
+
401, 241, 242, 243, 268, 295, 296, 297, 234, 251,
|
795
|
+
335, 280, 294, 337, 384, 173, 361, 362, 399, 119,
|
796
|
+
169, 162, 271, 204, 285, 183, 223, 87, 233, 100,
|
797
|
+
nil, nil, 422, 182, nil, nil, 258, nil, nil, nil,
|
798
|
+
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
782
799
|
nil, nil, nil, 188, nil, nil, nil, nil, nil, nil,
|
783
|
-
nil, nil, nil, nil, nil, nil,
|
784
|
-
nil, nil,
|
785
|
-
nil, nil, nil, nil,
|
786
|
-
|
787
|
-
|
788
|
-
|
789
|
-
|
790
|
-
|
800
|
+
nil, nil, nil, nil, nil, nil, nil, nil, 213, 93,
|
801
|
+
nil, nil, 92, nil, nil, 224, nil, nil, nil, nil,
|
802
|
+
nil, nil, nil, nil, 203, 205, 206, 207, nil, nil,
|
803
|
+
231, nil, nil, 247, 214, 215, 216, nil, 217, 218,
|
804
|
+
219, 245, nil, nil, nil, nil, 225, 226, nil, 227,
|
805
|
+
248, 249, 256, nil, 188, nil, nil, nil, 128, 250,
|
806
|
+
252, nil, nil, nil, nil, nil, 143, 143, 143, nil,
|
807
|
+
nil, nil, 240, nil, nil, nil, nil, 143, nil, nil,
|
791
808
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
792
|
-
nil, nil, nil, nil, 282, nil, nil, nil, nil, nil,
|
793
809
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
794
|
-
|
795
|
-
nil, nil,
|
810
|
+
282, nil, nil, nil, nil, nil, nil, nil, 128, nil,
|
811
|
+
nil, nil, nil, nil, nil, nil, nil, nil, nil, 116,
|
812
|
+
nil, 267, 298, nil, nil, 143, 116, nil, 116, nil,
|
813
|
+
nil, nil, nil, nil, nil, nil, nil, nil, 321, nil,
|
796
814
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
797
815
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
816
|
+
nil, 333, nil, nil, nil, nil, nil, nil, 354, nil,
|
798
817
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
799
|
-
nil, nil, nil, 331, nil, nil, nil, 357, nil, nil,
|
800
|
-
nil, nil, nil, nil, 357, 357, 357, 365, 367, 369,
|
801
818
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
802
|
-
nil, nil, nil, nil, nil,
|
803
|
-
|
804
|
-
nil, nil, nil,
|
805
|
-
|
806
|
-
nil,
|
807
|
-
nil, nil,
|
808
|
-
|
809
|
-
nil, nil, nil,
|
819
|
+
nil, nil, nil, nil, nil, nil, nil, nil, 363, 364,
|
820
|
+
354, nil, 354, 354, 354, 374, 376, 378, nil, nil,
|
821
|
+
nil, nil, nil, 383, nil, 354, nil, nil, nil, nil,
|
822
|
+
nil, nil, nil, nil, nil, nil, 395, 396, 354, nil,
|
823
|
+
nil, 400, nil, nil, nil, nil, nil, nil, nil, nil,
|
824
|
+
nil, nil, 388, nil, 391, nil, 393, nil, nil, nil,
|
825
|
+
397, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
826
|
+
354, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
827
|
+
nil, nil, nil, 417, nil, nil, 419, 420 ]
|
810
828
|
|
811
829
|
racc_goto_check = [
|
812
|
-
2,
|
813
|
-
|
814
|
-
|
815
|
-
|
816
|
-
|
817
|
-
|
818
|
-
|
819
|
-
|
820
|
-
|
821
|
-
2,
|
822
|
-
nil,
|
823
|
-
nil, nil, nil,
|
830
|
+
2, 20, 22, 64, 53, 60, 15, 35, 16, 76,
|
831
|
+
36, 49, 47, 65, 51, 71, 22, 71, 61, 20,
|
832
|
+
66, 66, 25, 3, 2, 23, 45, 19, 55, 17,
|
833
|
+
17, 1, 17, 19, 25, 19, 4, 23, 2, 2,
|
834
|
+
72, 72, 36, 5, 36, 36, 36, 2, 45, 25,
|
835
|
+
55, 3, 3, 6, 37, 18, 37, 36, 37, 61,
|
836
|
+
13, 13, 13, 21, 51, 34, 34, 34, 24, 76,
|
837
|
+
36, 76, 76, 76, 71, 27, 28, 33, 66, 38,
|
838
|
+
25, 39, 40, 41, 43, 15, 25, 25, 44, 46,
|
839
|
+
2, 50, 54, 65, 57, 58, 59, 63, 67, 77,
|
840
|
+
nil, nil, 36, 47, nil, nil, 76, nil, nil, nil,
|
841
|
+
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
824
842
|
nil, nil, nil, 2, nil, nil, nil, nil, nil, nil,
|
825
|
-
nil, nil, nil, nil, nil, nil,
|
826
|
-
nil, nil,
|
843
|
+
nil, nil, nil, nil, nil, nil, nil, nil, 64, 53,
|
844
|
+
nil, nil, 35, nil, nil, 22, nil, nil, nil, nil,
|
827
845
|
nil, nil, nil, nil, 2, 2, 2, 2, nil, nil,
|
828
|
-
|
829
|
-
2,
|
830
|
-
|
831
|
-
|
832
|
-
2, nil, nil, nil, nil, 2, nil, nil,
|
846
|
+
49, nil, nil, 60, 2, 2, 2, nil, 2, 2,
|
847
|
+
2, 49, nil, nil, nil, nil, 2, 2, nil, 2,
|
848
|
+
16, 16, 60, nil, 2, nil, nil, nil, 22, 22,
|
849
|
+
22, nil, nil, nil, nil, nil, 2, 2, 2, nil,
|
850
|
+
nil, nil, 2, nil, nil, nil, nil, 2, nil, nil,
|
833
851
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
834
|
-
nil, nil, nil, nil, 16, nil, nil, nil, nil, nil,
|
835
852
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
836
|
-
nil,
|
837
|
-
nil, nil,
|
853
|
+
16, nil, nil, nil, nil, nil, nil, nil, 22, nil,
|
854
|
+
nil, nil, nil, nil, nil, nil, nil, nil, nil, 22,
|
855
|
+
nil, 2, 15, nil, nil, 2, 22, nil, 22, nil,
|
856
|
+
nil, nil, nil, nil, nil, nil, nil, nil, 20, nil,
|
838
857
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
839
858
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
859
|
+
nil, 20, nil, nil, nil, nil, nil, nil, 53, nil,
|
840
860
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
841
|
-
nil, nil, nil, 20, nil, nil, nil, 52, nil, nil,
|
842
|
-
nil, nil, nil, nil, 52, 52, 52, 34, 34, 34,
|
843
861
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
844
|
-
nil, nil, nil, nil, nil,
|
845
|
-
|
846
|
-
nil, nil, nil, nil, nil, nil, nil, nil,
|
847
|
-
|
848
|
-
nil,
|
849
|
-
nil, nil,
|
850
|
-
nil, nil, nil, nil, nil, nil, nil, nil,
|
862
|
+
nil, nil, nil, nil, nil, nil, nil, nil, 2, 2,
|
863
|
+
53, nil, 53, 53, 53, 35, 35, 35, nil, nil,
|
864
|
+
nil, nil, nil, 20, nil, 53, nil, nil, nil, nil,
|
865
|
+
nil, nil, nil, nil, nil, nil, 20, 20, 53, nil,
|
866
|
+
nil, 35, nil, nil, nil, nil, nil, nil, nil, nil,
|
867
|
+
nil, nil, 2, nil, 2, nil, 2, nil, nil, nil,
|
868
|
+
2, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
869
|
+
53, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
851
870
|
nil, nil, nil, 2, nil, nil, 2, 2 ]
|
852
871
|
|
853
872
|
racc_goto_pointer = [
|
854
|
-
nil,
|
855
|
-
nil, nil, nil, -
|
856
|
-
-
|
857
|
-
nil, nil, -
|
858
|
-
-
|
859
|
-
-
|
860
|
-
-
|
861
|
-
nil, -
|
873
|
+
nil, 31, -2, 17, 33, 39, 19, nil, nil, nil,
|
874
|
+
nil, nil, nil, -114, nil, -28, -40, -219, -206, -242,
|
875
|
+
-24, -200, -32, -239, -223, -242, nil, -205, -204, nil,
|
876
|
+
nil, nil, nil, -203, -260, -23, -314, -321, -143, -184,
|
877
|
+
-198, -240, nil, -284, -296, -373, 53, -16, nil, -38,
|
878
|
+
40, -146, nil, -26, -170, -234, nil, -179, -25, -81,
|
879
|
+
-48, -28, nil, 67, -27, -143, -179, -101, nil, nil,
|
880
|
+
nil, -183, -161, nil, nil, nil, -134, 68 ]
|
862
881
|
|
863
882
|
racc_goto_default = [
|
864
|
-
nil, nil, 44, nil, nil,
|
865
|
-
110, 111, 112, nil, 36,
|
866
|
-
nil, nil, nil,
|
867
|
-
|
868
|
-
nil,
|
869
|
-
52,
|
883
|
+
nil, nil, 44, nil, nil, 413, 311, 107, 108, 109,
|
884
|
+
110, 111, 112, nil, 36, 299, 115, nil, nil, nil,
|
885
|
+
nil, nil, 31, nil, 278, 24, 301, 302, 303, 304,
|
886
|
+
305, 306, 307, 310, nil, 144, nil, nil, nil, nil,
|
887
|
+
nil, nil, 323, nil, nil, nil, nil, nil, 51, nil,
|
888
|
+
nil, 52, 347, 145, nil, nil, 273, nil, nil, nil,
|
870
889
|
7, nil, 29, nil, nil, 158, 146, 147, 148, 149,
|
871
890
|
150, 151, 152, 153, 154, 155, nil, nil ]
|
872
891
|
|
873
892
|
racc_reduce_table = [
|
874
893
|
0, 0, :racc_error,
|
875
|
-
3,
|
876
|
-
3,
|
877
|
-
3,
|
878
|
-
0,
|
879
|
-
1,
|
880
|
-
0,
|
881
|
-
2,
|
882
|
-
1,
|
883
|
-
1,
|
884
|
-
1,
|
885
|
-
1,
|
886
|
-
1,
|
887
|
-
1,
|
888
|
-
0,
|
889
|
-
0,
|
890
|
-
0,
|
891
|
-
2,
|
892
|
-
8,
|
893
|
-
0,
|
894
|
-
2,
|
895
|
-
5,
|
896
|
-
8,
|
897
|
-
|
898
|
-
0,
|
899
|
-
2,
|
900
|
-
1,
|
901
|
-
3,
|
902
|
-
4,
|
903
|
-
1,
|
904
|
-
0,
|
905
|
-
2,
|
906
|
-
1,
|
907
|
-
1,
|
908
|
-
1,
|
909
|
-
1,
|
910
|
-
1,
|
911
|
-
1,
|
912
|
-
1,
|
913
|
-
1,
|
914
|
-
1,
|
915
|
-
1,
|
916
|
-
0,
|
917
|
-
2,
|
918
|
-
5,
|
919
|
-
7,
|
920
|
-
5,
|
921
|
-
7,
|
922
|
-
5,
|
923
|
-
7,
|
924
|
-
0,
|
925
|
-
2,
|
926
|
-
3,
|
927
|
-
3,
|
928
|
-
3,
|
929
|
-
5,
|
930
|
-
7,
|
931
|
-
0,
|
932
|
-
2,
|
933
|
-
1,
|
934
|
-
1,
|
935
|
-
1,
|
936
|
-
3,
|
937
|
-
6,
|
938
|
-
3,
|
939
|
-
6,
|
940
|
-
3,
|
941
|
-
6,
|
942
|
-
0,
|
943
|
-
1,
|
944
|
-
7,
|
945
|
-
0,
|
946
|
-
2,
|
947
|
-
0,
|
948
|
-
2,
|
949
|
-
2,
|
950
|
-
1,
|
951
|
-
1,
|
952
|
-
3,
|
953
|
-
3,
|
954
|
-
0,
|
955
|
-
3,
|
956
|
-
3,
|
957
|
-
4,
|
958
|
-
1,
|
959
|
-
2,
|
960
|
-
1,
|
961
|
-
1,
|
962
|
-
1,
|
963
|
-
1,
|
964
|
-
1,
|
965
|
-
1,
|
966
|
-
1,
|
967
|
-
1,
|
968
|
-
1,
|
969
|
-
2,
|
970
|
-
2,
|
971
|
-
1,
|
972
|
-
1,
|
973
|
-
1,
|
974
|
-
1,
|
975
|
-
1,
|
976
|
-
1,
|
977
|
-
1,
|
978
|
-
1,
|
979
|
-
1,
|
980
|
-
1,
|
981
|
-
1,
|
982
|
-
1,
|
983
|
-
1,
|
984
|
-
1,
|
985
|
-
1,
|
986
|
-
1,
|
987
|
-
1,
|
988
|
-
1,
|
989
|
-
1,
|
990
|
-
1,
|
991
|
-
1,
|
992
|
-
1,
|
993
|
-
1,
|
994
|
-
1,
|
995
|
-
1,
|
996
|
-
1,
|
997
|
-
1,
|
998
|
-
1,
|
999
|
-
1,
|
1000
|
-
1,
|
1001
|
-
1,
|
1002
|
-
1,
|
1003
|
-
1,
|
1004
|
-
1,
|
1005
|
-
1,
|
1006
|
-
1,
|
1007
|
-
1,
|
1008
|
-
1,
|
1009
|
-
1,
|
1010
|
-
1,
|
1011
|
-
0,
|
1012
|
-
3,
|
1013
|
-
1,
|
1014
|
-
3,
|
1015
|
-
3,
|
1016
|
-
0,
|
1017
|
-
1,
|
1018
|
-
1,
|
1019
|
-
0,
|
1020
|
-
1,
|
1021
|
-
0,
|
1022
|
-
3,
|
1023
|
-
1,
|
1024
|
-
3,
|
1025
|
-
4,
|
1026
|
-
8,
|
1027
|
-
5,
|
1028
|
-
3,
|
1029
|
-
3,
|
1030
|
-
3,
|
1031
|
-
1,
|
1032
|
-
3,
|
1033
|
-
3,
|
1034
|
-
1,
|
1035
|
-
1,
|
1036
|
-
1,
|
1037
|
-
1,
|
1038
|
-
1,
|
1039
|
-
1,
|
1040
|
-
1,
|
1041
|
-
1,
|
1042
|
-
1,
|
1043
|
-
1,
|
1044
|
-
1,
|
1045
|
-
1,
|
1046
|
-
1,
|
1047
|
-
1,
|
1048
|
-
1,
|
1049
|
-
1,
|
1050
|
-
1,
|
1051
|
-
4,
|
1052
|
-
2,
|
1053
|
-
4,
|
1054
|
-
3,
|
1055
|
-
4,
|
1056
|
-
2,
|
1057
|
-
2,
|
1058
|
-
1,
|
1059
|
-
1,
|
1060
|
-
3,
|
1061
|
-
4,
|
1062
|
-
1,
|
1063
|
-
3,
|
1064
|
-
3,
|
1065
|
-
3,
|
1066
|
-
3,
|
1067
|
-
2,
|
1068
|
-
3,
|
1069
|
-
3,
|
1070
|
-
3,
|
1071
|
-
1, 146, :_reduce_none,
|
1072
|
-
2, 146, :_reduce_198,
|
1073
|
-
1, 115, :_reduce_none,
|
1074
|
-
1, 115, :_reduce_none,
|
1075
|
-
1, 115, :_reduce_none,
|
1076
|
-
1, 115, :_reduce_none,
|
1077
|
-
4, 127, :_reduce_203,
|
1078
|
-
1, 127, :_reduce_204,
|
1079
|
-
5, 131, :_reduce_205,
|
1080
|
-
2, 131, :_reduce_206,
|
1081
|
-
3, 129, :_reduce_207,
|
1082
|
-
1, 129, :_reduce_208,
|
1083
|
-
1, 129, :_reduce_none,
|
1084
|
-
3, 148, :_reduce_210,
|
1085
|
-
1, 148, :_reduce_211,
|
894
|
+
3, 84, :_reduce_1,
|
895
|
+
3, 84, :_reduce_2,
|
896
|
+
3, 84, :_reduce_3,
|
897
|
+
0, 86, :_reduce_none,
|
898
|
+
1, 86, :_reduce_none,
|
899
|
+
0, 87, :_reduce_6,
|
900
|
+
2, 87, :_reduce_7,
|
901
|
+
1, 89, :_reduce_none,
|
902
|
+
1, 89, :_reduce_none,
|
903
|
+
1, 89, :_reduce_none,
|
904
|
+
1, 89, :_reduce_none,
|
905
|
+
1, 89, :_reduce_none,
|
906
|
+
1, 89, :_reduce_none,
|
907
|
+
0, 96, :_reduce_14,
|
908
|
+
0, 97, :_reduce_15,
|
909
|
+
0, 98, :_reduce_16,
|
910
|
+
2, 98, :_reduce_17,
|
911
|
+
8, 95, :_reduce_18,
|
912
|
+
0, 101, :_reduce_19,
|
913
|
+
2, 101, :_reduce_20,
|
914
|
+
5, 101, :_reduce_21,
|
915
|
+
8, 94, :_reduce_22,
|
916
|
+
8, 94, :_reduce_23,
|
917
|
+
0, 104, :_reduce_24,
|
918
|
+
2, 104, :_reduce_25,
|
919
|
+
1, 106, :_reduce_26,
|
920
|
+
3, 106, :_reduce_27,
|
921
|
+
4, 107, :_reduce_28,
|
922
|
+
1, 107, :_reduce_29,
|
923
|
+
0, 102, :_reduce_30,
|
924
|
+
2, 102, :_reduce_31,
|
925
|
+
1, 109, :_reduce_none,
|
926
|
+
1, 109, :_reduce_none,
|
927
|
+
1, 109, :_reduce_none,
|
928
|
+
1, 109, :_reduce_none,
|
929
|
+
1, 109, :_reduce_none,
|
930
|
+
1, 109, :_reduce_none,
|
931
|
+
1, 109, :_reduce_38,
|
932
|
+
1, 109, :_reduce_39,
|
933
|
+
1, 109, :_reduce_none,
|
934
|
+
1, 109, :_reduce_none,
|
935
|
+
0, 117, :_reduce_42,
|
936
|
+
2, 117, :_reduce_43,
|
937
|
+
5, 115, :_reduce_44,
|
938
|
+
7, 115, :_reduce_45,
|
939
|
+
5, 115, :_reduce_46,
|
940
|
+
7, 115, :_reduce_47,
|
941
|
+
5, 115, :_reduce_48,
|
942
|
+
7, 115, :_reduce_49,
|
943
|
+
0, 120, :_reduce_50,
|
944
|
+
2, 120, :_reduce_51,
|
945
|
+
3, 120, :_reduce_52,
|
946
|
+
3, 114, :_reduce_53,
|
947
|
+
3, 114, :_reduce_54,
|
948
|
+
5, 114, :_reduce_55,
|
949
|
+
7, 93, :_reduce_56,
|
950
|
+
0, 122, :_reduce_57,
|
951
|
+
2, 122, :_reduce_58,
|
952
|
+
1, 123, :_reduce_59,
|
953
|
+
1, 123, :_reduce_60,
|
954
|
+
1, 123, :_reduce_none,
|
955
|
+
3, 111, :_reduce_62,
|
956
|
+
6, 111, :_reduce_63,
|
957
|
+
3, 112, :_reduce_64,
|
958
|
+
6, 112, :_reduce_65,
|
959
|
+
3, 113, :_reduce_66,
|
960
|
+
6, 113, :_reduce_67,
|
961
|
+
0, 124, :_reduce_68,
|
962
|
+
1, 124, :_reduce_69,
|
963
|
+
7, 110, :_reduce_70,
|
964
|
+
0, 125, :_reduce_none,
|
965
|
+
2, 125, :_reduce_72,
|
966
|
+
0, 126, :_reduce_73,
|
967
|
+
2, 126, :_reduce_74,
|
968
|
+
2, 126, :_reduce_75,
|
969
|
+
1, 128, :_reduce_76,
|
970
|
+
1, 128, :_reduce_77,
|
971
|
+
3, 128, :_reduce_78,
|
972
|
+
3, 88, :_reduce_79,
|
973
|
+
0, 131, :_reduce_80,
|
974
|
+
3, 131, :_reduce_81,
|
975
|
+
3, 133, :_reduce_82,
|
976
|
+
4, 133, :_reduce_83,
|
977
|
+
1, 127, :_reduce_84,
|
978
|
+
2, 127, :_reduce_85,
|
979
|
+
1, 119, :_reduce_none,
|
980
|
+
1, 119, :_reduce_none,
|
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
|
+
2, 119, :_reduce_95,
|
989
|
+
2, 119, :_reduce_96,
|
990
|
+
1, 119, :_reduce_none,
|
991
|
+
1, 119, :_reduce_none,
|
992
|
+
1, 119, :_reduce_none,
|
993
|
+
1, 135, :_reduce_none,
|
994
|
+
1, 135, :_reduce_none,
|
995
|
+
1, 135, :_reduce_none,
|
996
|
+
1, 135, :_reduce_none,
|
997
|
+
1, 136, :_reduce_none,
|
998
|
+
1, 136, :_reduce_none,
|
999
|
+
1, 136, :_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
|
+
0, 100, :_reduce_137,
|
1031
|
+
3, 100, :_reduce_138,
|
1032
|
+
1, 137, :_reduce_139,
|
1033
|
+
3, 137, :_reduce_140,
|
1034
|
+
3, 138, :_reduce_141,
|
1035
|
+
0, 140, :_reduce_142,
|
1036
|
+
1, 140, :_reduce_143,
|
1037
|
+
1, 140, :_reduce_144,
|
1038
|
+
0, 139, :_reduce_145,
|
1039
|
+
1, 139, :_reduce_146,
|
1040
|
+
0, 129, :_reduce_147,
|
1041
|
+
3, 129, :_reduce_148,
|
1042
|
+
1, 141, :_reduce_149,
|
1043
|
+
3, 141, :_reduce_150,
|
1044
|
+
4, 116, :_reduce_151,
|
1045
|
+
8, 116, :_reduce_152,
|
1046
|
+
5, 90, :_reduce_153,
|
1047
|
+
3, 91, :_reduce_154,
|
1048
|
+
3, 91, :_reduce_155,
|
1049
|
+
3, 92, :_reduce_156,
|
1050
|
+
1, 85, :_reduce_none,
|
1051
|
+
3, 85, :_reduce_158,
|
1052
|
+
3, 85, :_reduce_159,
|
1053
|
+
1, 143, :_reduce_160,
|
1054
|
+
1, 143, :_reduce_161,
|
1055
|
+
1, 143, :_reduce_162,
|
1056
|
+
1, 143, :_reduce_163,
|
1057
|
+
1, 143, :_reduce_164,
|
1058
|
+
1, 143, :_reduce_165,
|
1059
|
+
1, 143, :_reduce_166,
|
1060
|
+
1, 143, :_reduce_167,
|
1061
|
+
1, 143, :_reduce_168,
|
1062
|
+
1, 143, :_reduce_169,
|
1063
|
+
1, 143, :_reduce_170,
|
1064
|
+
1, 143, :_reduce_171,
|
1065
|
+
1, 143, :_reduce_172,
|
1066
|
+
1, 143, :_reduce_173,
|
1067
|
+
1, 143, :_reduce_174,
|
1068
|
+
1, 143, :_reduce_175,
|
1069
|
+
1, 143, :_reduce_176,
|
1070
|
+
4, 143, :_reduce_177,
|
1071
|
+
2, 143, :_reduce_178,
|
1072
|
+
4, 143, :_reduce_179,
|
1073
|
+
3, 143, :_reduce_180,
|
1074
|
+
4, 143, :_reduce_181,
|
1075
|
+
2, 143, :_reduce_182,
|
1076
|
+
2, 143, :_reduce_183,
|
1077
|
+
1, 143, :_reduce_none,
|
1078
|
+
1, 103, :_reduce_185,
|
1079
|
+
3, 103, :_reduce_186,
|
1080
|
+
4, 145, :_reduce_187,
|
1081
|
+
1, 146, :_reduce_188,
|
1082
|
+
3, 146, :_reduce_189,
|
1083
|
+
3, 147, :_reduce_190,
|
1084
|
+
3, 147, :_reduce_191,
|
1085
|
+
3, 147, :_reduce_192,
|
1086
|
+
2, 147, :_reduce_193,
|
1087
|
+
3, 147, :_reduce_194,
|
1088
|
+
3, 147, :_reduce_195,
|
1089
|
+
3, 147, :_reduce_196,
|
1086
1090
|
1, 148, :_reduce_none,
|
1087
|
-
|
1088
|
-
1,
|
1091
|
+
2, 148, :_reduce_198,
|
1092
|
+
1, 118, :_reduce_none,
|
1093
|
+
1, 118, :_reduce_none,
|
1094
|
+
1, 118, :_reduce_none,
|
1095
|
+
1, 118, :_reduce_none,
|
1096
|
+
4, 130, :_reduce_203,
|
1097
|
+
1, 130, :_reduce_204,
|
1098
|
+
5, 134, :_reduce_205,
|
1099
|
+
2, 134, :_reduce_206,
|
1100
|
+
3, 132, :_reduce_207,
|
1101
|
+
1, 132, :_reduce_208,
|
1102
|
+
1, 132, :_reduce_none,
|
1103
|
+
3, 150, :_reduce_210,
|
1104
|
+
1, 150, :_reduce_211,
|
1089
1105
|
1, 150, :_reduce_none,
|
1090
|
-
3, 152, :
|
1091
|
-
1, 152, :
|
1106
|
+
3, 152, :_reduce_213,
|
1107
|
+
1, 152, :_reduce_214,
|
1092
1108
|
1, 152, :_reduce_none,
|
1093
|
-
|
1094
|
-
|
1095
|
-
1,
|
1096
|
-
|
1097
|
-
|
1098
|
-
1,
|
1099
|
-
|
1100
|
-
|
1101
|
-
|
1102
|
-
|
1103
|
-
|
1104
|
-
3,
|
1105
|
-
|
1106
|
-
|
1107
|
-
|
1108
|
-
|
1109
|
-
|
1110
|
-
1,
|
1111
|
-
1,
|
1112
|
-
1,
|
1113
|
-
|
1114
|
-
2,
|
1115
|
-
|
1116
|
-
|
1117
|
-
1,
|
1118
|
-
2,
|
1119
|
-
|
1120
|
-
|
1121
|
-
0,
|
1122
|
-
|
1123
|
-
|
1124
|
-
|
1125
|
-
|
1109
|
+
3, 154, :_reduce_216,
|
1110
|
+
1, 154, :_reduce_217,
|
1111
|
+
1, 154, :_reduce_none,
|
1112
|
+
0, 155, :_reduce_219,
|
1113
|
+
3, 155, :_reduce_220,
|
1114
|
+
1, 155, :_reduce_221,
|
1115
|
+
3, 155, :_reduce_222,
|
1116
|
+
1, 155, :_reduce_223,
|
1117
|
+
1, 155, :_reduce_224,
|
1118
|
+
2, 149, :_reduce_225,
|
1119
|
+
3, 151, :_reduce_226,
|
1120
|
+
3, 153, :_reduce_227,
|
1121
|
+
3, 156, :_reduce_228,
|
1122
|
+
4, 157, :_reduce_229,
|
1123
|
+
3, 158, :_reduce_230,
|
1124
|
+
0, 159, :_reduce_none,
|
1125
|
+
1, 159, :_reduce_none,
|
1126
|
+
1, 159, :_reduce_none,
|
1127
|
+
1, 159, :_reduce_none,
|
1128
|
+
1, 159, :_reduce_none,
|
1129
|
+
1, 159, :_reduce_none,
|
1130
|
+
2, 108, :_reduce_237,
|
1131
|
+
1, 160, :_reduce_none,
|
1132
|
+
1, 160, :_reduce_none,
|
1133
|
+
1, 160, :_reduce_none,
|
1134
|
+
2, 121, :_reduce_241,
|
1135
|
+
2, 99, :_reduce_242,
|
1136
|
+
2, 142, :_reduce_243,
|
1137
|
+
0, 105, :_reduce_244,
|
1138
|
+
1, 105, :_reduce_245,
|
1139
|
+
2, 105, :_reduce_246,
|
1140
|
+
1, 105, :_reduce_247,
|
1141
|
+
1, 144, :_reduce_none,
|
1142
|
+
0, 144, :_reduce_none ]
|
1143
|
+
|
1144
|
+
racc_reduce_n = 250
|
1145
|
+
|
1146
|
+
racc_shift_n = 424
|
1126
1147
|
|
1127
1148
|
racc_token_table = {
|
1128
1149
|
false => 0,
|
1129
1150
|
:error => 1,
|
1130
1151
|
:tUIDENT => 2,
|
1131
1152
|
:tLIDENT => 3,
|
1132
|
-
:
|
1133
|
-
:
|
1134
|
-
:
|
1135
|
-
:
|
1136
|
-
:
|
1137
|
-
:
|
1138
|
-
:
|
1139
|
-
:
|
1140
|
-
:
|
1141
|
-
:
|
1142
|
-
:
|
1143
|
-
:
|
1144
|
-
:
|
1145
|
-
:
|
1146
|
-
:
|
1147
|
-
:
|
1148
|
-
:
|
1149
|
-
:
|
1150
|
-
:
|
1151
|
-
:
|
1152
|
-
:
|
1153
|
-
:
|
1154
|
-
:
|
1155
|
-
:
|
1156
|
-
:
|
1157
|
-
:
|
1158
|
-
:
|
1159
|
-
:
|
1160
|
-
:
|
1161
|
-
:
|
1162
|
-
:
|
1163
|
-
:
|
1164
|
-
:
|
1165
|
-
:
|
1166
|
-
:
|
1167
|
-
:
|
1168
|
-
:
|
1169
|
-
:
|
1170
|
-
:
|
1171
|
-
:
|
1172
|
-
:
|
1173
|
-
:
|
1174
|
-
:
|
1175
|
-
:
|
1176
|
-
:
|
1177
|
-
:
|
1178
|
-
:
|
1179
|
-
:
|
1180
|
-
:
|
1181
|
-
:
|
1182
|
-
:
|
1183
|
-
:
|
1184
|
-
:
|
1185
|
-
:
|
1186
|
-
:
|
1187
|
-
:
|
1188
|
-
:
|
1189
|
-
:
|
1190
|
-
:
|
1191
|
-
:
|
1192
|
-
:
|
1193
|
-
:
|
1194
|
-
:
|
1195
|
-
:
|
1196
|
-
:
|
1197
|
-
:
|
1198
|
-
:
|
1199
|
-
:
|
1200
|
-
:
|
1201
|
-
:
|
1202
|
-
:
|
1203
|
-
:
|
1204
|
-
:
|
1205
|
-
:
|
1206
|
-
:
|
1207
|
-
:
|
1208
|
-
:
|
1209
|
-
|
1210
|
-
|
1153
|
+
:tUNDERSCOREIDENT => 4,
|
1154
|
+
:tNAMESPACE => 5,
|
1155
|
+
:tINTERFACEIDENT => 6,
|
1156
|
+
:tGLOBALIDENT => 7,
|
1157
|
+
:tLKEYWORD => 8,
|
1158
|
+
:tUKEYWORD => 9,
|
1159
|
+
:tLKEYWORD_Q_E => 10,
|
1160
|
+
:tUKEYWORD_Q_E => 11,
|
1161
|
+
:tIVAR => 12,
|
1162
|
+
:tCLASSVAR => 13,
|
1163
|
+
:tANNOTATION => 14,
|
1164
|
+
:tSTRING => 15,
|
1165
|
+
:tSYMBOL => 16,
|
1166
|
+
:tINTEGER => 17,
|
1167
|
+
:tWRITE_ATTR => 18,
|
1168
|
+
:kLPAREN => 19,
|
1169
|
+
:kRPAREN => 20,
|
1170
|
+
:kLBRACKET => 21,
|
1171
|
+
:kRBRACKET => 22,
|
1172
|
+
:kLBRACE => 23,
|
1173
|
+
:kRBRACE => 24,
|
1174
|
+
:kVOID => 25,
|
1175
|
+
:kNIL => 26,
|
1176
|
+
:kTRUE => 27,
|
1177
|
+
:kFALSE => 28,
|
1178
|
+
:kANY => 29,
|
1179
|
+
:kUNTYPED => 30,
|
1180
|
+
:kTOP => 31,
|
1181
|
+
:kBOT => 32,
|
1182
|
+
:kSELF => 33,
|
1183
|
+
:kSELFQ => 34,
|
1184
|
+
:kINSTANCE => 35,
|
1185
|
+
:kCLASS => 36,
|
1186
|
+
:kBOOL => 37,
|
1187
|
+
:kSINGLETON => 38,
|
1188
|
+
:kTYPE => 39,
|
1189
|
+
:kDEF => 40,
|
1190
|
+
:kMODULE => 41,
|
1191
|
+
:kPRIVATE => 42,
|
1192
|
+
:kPUBLIC => 43,
|
1193
|
+
:kALIAS => 44,
|
1194
|
+
:kCOLON => 45,
|
1195
|
+
:kCOLON2 => 46,
|
1196
|
+
:kCOMMA => 47,
|
1197
|
+
:kBAR => 48,
|
1198
|
+
:kAMP => 49,
|
1199
|
+
:kHAT => 50,
|
1200
|
+
:kARROW => 51,
|
1201
|
+
:kQUESTION => 52,
|
1202
|
+
:kEXCLAMATION => 53,
|
1203
|
+
:kSTAR => 54,
|
1204
|
+
:kSTAR2 => 55,
|
1205
|
+
:kFATARROW => 56,
|
1206
|
+
:kEQ => 57,
|
1207
|
+
:kDOT => 58,
|
1208
|
+
:kDOT3 => 59,
|
1209
|
+
:kLT => 60,
|
1210
|
+
:kINTERFACE => 61,
|
1211
|
+
:kEND => 62,
|
1212
|
+
:kINCLUDE => 63,
|
1213
|
+
:kEXTEND => 64,
|
1214
|
+
:kATTRREADER => 65,
|
1215
|
+
:kATTRWRITER => 66,
|
1216
|
+
:kATTRACCESSOR => 67,
|
1217
|
+
:tOPERATOR => 68,
|
1218
|
+
:tQUOTEDMETHOD => 69,
|
1219
|
+
:tQUOTEDIDENT => 70,
|
1220
|
+
:kPREPEND => 71,
|
1221
|
+
:kEXTENSION => 72,
|
1222
|
+
:kINCOMPATIBLE => 73,
|
1223
|
+
:type_TYPE => 74,
|
1224
|
+
:type_SIGNATURE => 75,
|
1225
|
+
:type_METHODTYPE => 76,
|
1226
|
+
:tEOF => 77,
|
1227
|
+
:kOUT => 78,
|
1228
|
+
:kIN => 79,
|
1229
|
+
:kUNCHECKED => 80,
|
1230
|
+
:kOVERLOAD => 81,
|
1231
|
+
:kUNDERSCORE => 82 }
|
1232
|
+
|
1233
|
+
racc_nt_base = 83
|
1211
1234
|
|
1212
1235
|
racc_use_result_var = true
|
1213
1236
|
|
@@ -1232,6 +1255,7 @@ Racc_token_to_s_table = [
|
|
1232
1255
|
"error",
|
1233
1256
|
"tUIDENT",
|
1234
1257
|
"tLIDENT",
|
1258
|
+
"tUNDERSCOREIDENT",
|
1235
1259
|
"tNAMESPACE",
|
1236
1260
|
"tINTERFACEIDENT",
|
1237
1261
|
"tGLOBALIDENT",
|
@@ -1309,6 +1333,7 @@ Racc_token_to_s_table = [
|
|
1309
1333
|
"kIN",
|
1310
1334
|
"kUNCHECKED",
|
1311
1335
|
"kOVERLOAD",
|
1336
|
+
"kUNDERSCORE",
|
1312
1337
|
"$start",
|
1313
1338
|
"target",
|
1314
1339
|
"type",
|
@@ -1331,6 +1356,7 @@ Racc_token_to_s_table = [
|
|
1331
1356
|
"class_members",
|
1332
1357
|
"type_list",
|
1333
1358
|
"colon_module_self_types",
|
1359
|
+
"namespace",
|
1334
1360
|
"module_self_types",
|
1335
1361
|
"module_self_type",
|
1336
1362
|
"qualified_name",
|
@@ -1368,7 +1394,6 @@ Racc_token_to_s_table = [
|
|
1368
1394
|
"type_param_variance",
|
1369
1395
|
"type_params0",
|
1370
1396
|
"type_alias_name",
|
1371
|
-
"namespace",
|
1372
1397
|
"simple_type",
|
1373
1398
|
"comma_opt",
|
1374
1399
|
"record_type",
|
@@ -1394,7 +1419,7 @@ Racc_debug_parser = false
|
|
1394
1419
|
|
1395
1420
|
# reduce 0 omitted
|
1396
1421
|
|
1397
|
-
module_eval(<<'.,.,', 'parser.y',
|
1422
|
+
module_eval(<<'.,.,', 'parser.y', 29)
|
1398
1423
|
def _reduce_1(val, _values, result)
|
1399
1424
|
result = val[1]
|
1400
1425
|
|
@@ -1402,7 +1427,7 @@ module_eval(<<'.,.,', 'parser.y', 28)
|
|
1402
1427
|
end
|
1403
1428
|
.,.,
|
1404
1429
|
|
1405
|
-
module_eval(<<'.,.,', 'parser.y',
|
1430
|
+
module_eval(<<'.,.,', 'parser.y', 32)
|
1406
1431
|
def _reduce_2(val, _values, result)
|
1407
1432
|
result = val[1]
|
1408
1433
|
|
@@ -1410,7 +1435,7 @@ module_eval(<<'.,.,', 'parser.y', 31)
|
|
1410
1435
|
end
|
1411
1436
|
.,.,
|
1412
1437
|
|
1413
|
-
module_eval(<<'.,.,', 'parser.y',
|
1438
|
+
module_eval(<<'.,.,', 'parser.y', 35)
|
1414
1439
|
def _reduce_3(val, _values, result)
|
1415
1440
|
result = val[1]
|
1416
1441
|
|
@@ -1422,14 +1447,14 @@ module_eval(<<'.,.,', 'parser.y', 34)
|
|
1422
1447
|
|
1423
1448
|
# reduce 5 omitted
|
1424
1449
|
|
1425
|
-
module_eval(<<'.,.,', 'parser.y',
|
1450
|
+
module_eval(<<'.,.,', 'parser.y', 41)
|
1426
1451
|
def _reduce_6(val, _values, result)
|
1427
1452
|
result = []
|
1428
1453
|
result
|
1429
1454
|
end
|
1430
1455
|
.,.,
|
1431
1456
|
|
1432
|
-
module_eval(<<'.,.,', 'parser.y',
|
1457
|
+
module_eval(<<'.,.,', 'parser.y', 43)
|
1433
1458
|
def _reduce_7(val, _values, result)
|
1434
1459
|
result = val[0].push(val[1])
|
1435
1460
|
|
@@ -1449,28 +1474,28 @@ module_eval(<<'.,.,', 'parser.y', 42)
|
|
1449
1474
|
|
1450
1475
|
# reduce 13 omitted
|
1451
1476
|
|
1452
|
-
module_eval(<<'.,.,', 'parser.y',
|
1477
|
+
module_eval(<<'.,.,', 'parser.y', 54)
|
1453
1478
|
def _reduce_14(val, _values, result)
|
1454
1479
|
start_new_variables_scope
|
1455
1480
|
result
|
1456
1481
|
end
|
1457
1482
|
.,.,
|
1458
1483
|
|
1459
|
-
module_eval(<<'.,.,', 'parser.y',
|
1484
|
+
module_eval(<<'.,.,', 'parser.y', 55)
|
1460
1485
|
def _reduce_15(val, _values, result)
|
1461
1486
|
start_merged_variables_scope
|
1462
1487
|
result
|
1463
1488
|
end
|
1464
1489
|
.,.,
|
1465
1490
|
|
1466
|
-
module_eval(<<'.,.,', 'parser.y',
|
1491
|
+
module_eval(<<'.,.,', 'parser.y', 58)
|
1467
1492
|
def _reduce_16(val, _values, result)
|
1468
1493
|
result = []
|
1469
1494
|
result
|
1470
1495
|
end
|
1471
1496
|
.,.,
|
1472
1497
|
|
1473
|
-
module_eval(<<'.,.,', 'parser.y',
|
1498
|
+
module_eval(<<'.,.,', 'parser.y', 60)
|
1474
1499
|
def _reduce_17(val, _values, result)
|
1475
1500
|
result = val[1].unshift(Annotation.new(string: val[0].value, location: val[0].location))
|
1476
1501
|
|
@@ -1478,15 +1503,26 @@ module_eval(<<'.,.,', 'parser.y', 59)
|
|
1478
1503
|
end
|
1479
1504
|
.,.,
|
1480
1505
|
|
1481
|
-
module_eval(<<'.,.,', 'parser.y',
|
1506
|
+
module_eval(<<'.,.,', 'parser.y', 65)
|
1482
1507
|
def _reduce_18(val, _values, result)
|
1483
1508
|
reset_variable_scope
|
1484
1509
|
|
1485
1510
|
location = val[1].location + val[7].location
|
1511
|
+
location = location.with_children(
|
1512
|
+
required: {
|
1513
|
+
keyword: val[1].location,
|
1514
|
+
name: val[3].location,
|
1515
|
+
end: val[7].location
|
1516
|
+
},
|
1517
|
+
optional: {
|
1518
|
+
type_params: val[4]&.location,
|
1519
|
+
lt: val[5]&.location
|
1520
|
+
}
|
1521
|
+
)
|
1486
1522
|
result = Declarations::Class.new(
|
1487
1523
|
name: val[3].value,
|
1488
1524
|
type_params: val[4]&.value || Declarations::ModuleTypeParams.empty,
|
1489
|
-
super_class: val[5],
|
1525
|
+
super_class: val[5]&.value,
|
1490
1526
|
members: val[6],
|
1491
1527
|
annotations: val[0],
|
1492
1528
|
location: location,
|
@@ -1497,42 +1533,72 @@ module_eval(<<'.,.,', 'parser.y', 64)
|
|
1497
1533
|
end
|
1498
1534
|
.,.,
|
1499
1535
|
|
1500
|
-
module_eval(<<'.,.,', 'parser.y',
|
1536
|
+
module_eval(<<'.,.,', 'parser.y', 91)
|
1501
1537
|
def _reduce_19(val, _values, result)
|
1502
1538
|
result = nil
|
1503
1539
|
result
|
1504
1540
|
end
|
1505
1541
|
.,.,
|
1506
1542
|
|
1507
|
-
module_eval(<<'.,.,', 'parser.y',
|
1543
|
+
module_eval(<<'.,.,', 'parser.y', 93)
|
1508
1544
|
def _reduce_20(val, _values, result)
|
1509
|
-
|
1510
|
-
|
1511
|
-
|
1545
|
+
loc = val[1].location.with_children(
|
1546
|
+
required: { name: val[1].location },
|
1547
|
+
optional: { args: nil }
|
1548
|
+
)
|
1549
|
+
sup = Declarations::Class::Super.new(name: val[1].value, args: [], location: loc)
|
1550
|
+
result = LocatedValue.new(value: sup, location: val[0].location)
|
1512
1551
|
|
1513
1552
|
result
|
1514
1553
|
end
|
1515
1554
|
.,.,
|
1516
1555
|
|
1517
|
-
module_eval(<<'.,.,', 'parser.y',
|
1556
|
+
module_eval(<<'.,.,', 'parser.y', 101)
|
1518
1557
|
def _reduce_21(val, _values, result)
|
1519
|
-
|
1520
|
-
|
1521
|
-
|
1558
|
+
loc = (val[1].location + val[4].location).with_children(
|
1559
|
+
required: { name: val[1].location },
|
1560
|
+
optional: { args: val[2].location + val[4].location }
|
1561
|
+
)
|
1562
|
+
sup = Declarations::Class::Super.new(name: val[1].value, args: val[3], location: loc)
|
1563
|
+
result = LocatedValue.new(value: sup, location: val[0].location)
|
1522
1564
|
|
1523
1565
|
result
|
1524
1566
|
end
|
1525
1567
|
.,.,
|
1526
1568
|
|
1527
|
-
module_eval(<<'.,.,', 'parser.y',
|
1569
|
+
module_eval(<<'.,.,', 'parser.y', 111)
|
1528
1570
|
def _reduce_22(val, _values, result)
|
1529
1571
|
reset_variable_scope
|
1530
1572
|
|
1573
|
+
colon_loc = val[5].location
|
1574
|
+
self_loc = val[5].value.yield_self do |params|
|
1575
|
+
case params.size
|
1576
|
+
when 0
|
1577
|
+
nil
|
1578
|
+
when 1
|
1579
|
+
params[0].location
|
1580
|
+
else
|
1581
|
+
params.first.location + params.last.location
|
1582
|
+
end
|
1583
|
+
end
|
1584
|
+
|
1531
1585
|
location = val[1].location + val[7].location
|
1586
|
+
location = location.with_children(
|
1587
|
+
required: {
|
1588
|
+
keyword: val[1].location,
|
1589
|
+
name: val[3].location,
|
1590
|
+
end: val[7].location
|
1591
|
+
},
|
1592
|
+
optional: {
|
1593
|
+
type_params: val[4]&.location,
|
1594
|
+
colon: colon_loc,
|
1595
|
+
self_types: self_loc
|
1596
|
+
}
|
1597
|
+
)
|
1532
1598
|
result = Declarations::Module.new(
|
1533
1599
|
name: val[3].value,
|
1534
1600
|
type_params: val[4]&.value || Declarations::ModuleTypeParams.empty,
|
1535
|
-
self_types: val[5],
|
1601
|
+
self_types: val[5].value,
|
1536
1602
|
members: val[6],
|
1537
1603
|
annotations: val[0],
|
1538
1604
|
location: location,
|
@@ -1543,16 +1609,30 @@ module_eval(<<'.,.,', 'parser.y', 93)
|
|
1543
1609
|
end
|
1544
1610
|
.,.,
|
1545
1611
|
|
1546
|
-
module_eval(<<'.,.,', 'parser.y',
|
1612
|
+
module_eval(<<'.,.,', 'parser.y', 149)
|
1547
1613
|
def _reduce_23(val, _values, result)
|
1548
1614
|
reset_variable_scope
|
1549
1615
|
|
1550
|
-
location = val[1].location + val[
|
1616
|
+
location = val[1].location + val[7].location
|
1617
|
+
name_loc, colon_loc = split_kw_loc(val[4].location)
|
1618
|
+
self_loc = case val[5].size
|
1619
|
+
when 0
|
1620
|
+
nil
|
1621
|
+
when 1
|
1622
|
+
val[5][0].location
|
1623
|
+
else
|
1624
|
+
val[5].first.location + val[5].last.location
|
1625
|
+
end
|
1626
|
+
location = location.with_children(
|
1627
|
+
required: { keyword: val[1].location, name: name_loc, end: val[7].location },
|
1628
|
+
optional: { colon: colon_loc, type_params: nil, self_types: self_loc }
|
1629
|
+
)
|
1630
|
+
|
1551
1631
|
result = Declarations::Module.new(
|
1552
|
-
name: val[
|
1632
|
+
name: RBS::TypeName.new(name: val[4].value, namespace: val[3]&.value || RBS::Namespace.empty),
|
1553
1633
|
type_params: Declarations::ModuleTypeParams.empty,
|
1554
|
-
self_types: val[
|
1555
|
-
members: val[
|
1634
|
+
self_types: val[5],
|
1635
|
+
members: val[6],
|
1556
1636
|
annotations: val[0],
|
1557
1637
|
location: location,
|
1558
1638
|
comment: leading_comment(val[0].first&.location || location)
|
@@ -1562,22 +1642,22 @@ module_eval(<<'.,.,', 'parser.y', 107)
|
|
1562
1642
|
end
|
1563
1643
|
.,.,
|
1564
1644
|
|
1565
|
-
module_eval(<<'.,.,', 'parser.y',
|
1645
|
+
module_eval(<<'.,.,', 'parser.y', 178)
|
1566
1646
|
def _reduce_24(val, _values, result)
|
1567
|
-
result = []
|
1647
|
+
result = LocatedValue.new(value: [], location: nil)
|
1568
1648
|
result
|
1569
1649
|
end
|
1570
1650
|
.,.,
|
1571
1651
|
|
1572
|
-
module_eval(<<'.,.,', 'parser.y',
|
1652
|
+
module_eval(<<'.,.,', 'parser.y', 180)
|
1573
1653
|
def _reduce_25(val, _values, result)
|
1574
|
-
result = val[1]
|
1654
|
+
result = LocatedValue.new(value: val[1], location: val[0].location)
|
1575
1655
|
|
1576
1656
|
result
|
1577
1657
|
end
|
1578
1658
|
.,.,
|
1579
1659
|
|
1580
|
-
module_eval(<<'.,.,', 'parser.y',
|
1660
|
+
module_eval(<<'.,.,', 'parser.y', 185)
|
1581
1661
|
def _reduce_26(val, _values, result)
|
1582
1662
|
result = [val[0]]
|
1583
1663
|
|
@@ -1585,7 +1665,7 @@ module_eval(<<'.,.,', 'parser.y', 129)
|
|
1585
1665
|
end
|
1586
1666
|
.,.,
|
1587
1667
|
|
1588
|
-
module_eval(<<'.,.,', 'parser.y',
|
1668
|
+
module_eval(<<'.,.,', 'parser.y', 188)
|
1589
1669
|
def _reduce_27(val, _values, result)
|
1590
1670
|
result = val[0].push(val[2])
|
1591
1671
|
|
@@ -1593,11 +1673,15 @@ module_eval(<<'.,.,', 'parser.y', 132)
|
|
1593
1673
|
end
|
1594
1674
|
.,.,
|
1595
1675
|
|
1596
|
-
module_eval(<<'.,.,', 'parser.y',
|
1676
|
+
module_eval(<<'.,.,', 'parser.y', 193)
|
1597
1677
|
def _reduce_28(val, _values, result)
|
1598
1678
|
name = val[0].value
|
1599
1679
|
args = val[2]
|
1600
1680
|
location = val[0].location + val[3].location
|
1681
|
+
location = location.with_children(
|
1682
|
+
required: { name: val[0].location },
|
1683
|
+
optional: { args: val[1].location + val[3].location }
|
1684
|
+
)
|
1601
1685
|
|
1602
1686
|
case
|
1603
1687
|
when name.class?
|
@@ -1612,11 +1696,14 @@ module_eval(<<'.,.,', 'parser.y', 137)
|
|
1612
1696
|
end
|
1613
1697
|
.,.,
|
1614
1698
|
|
1615
|
-
module_eval(<<'.,.,', 'parser.y',
|
1699
|
+
module_eval(<<'.,.,', 'parser.y', 211)
|
1616
1700
|
def _reduce_29(val, _values, result)
|
1617
1701
|
name = val[0].value
|
1618
1702
|
args = []
|
1619
|
-
location = val[0].location
|
1703
|
+
location = val[0].location.with_children(
|
1704
|
+
required: { name: val[0].location },
|
1705
|
+
optional: { args: nil }
|
1706
|
+
)
|
1620
1707
|
|
1621
1708
|
case
|
1622
1709
|
when name.class?
|
@@ -1631,14 +1718,14 @@ module_eval(<<'.,.,', 'parser.y', 151)
|
|
1631
1718
|
end
|
1632
1719
|
.,.,
|
1633
1720
|
|
1634
|
-
module_eval(<<'.,.,', 'parser.y',
|
1721
|
+
module_eval(<<'.,.,', 'parser.y', 229)
|
1635
1722
|
def _reduce_30(val, _values, result)
|
1636
1723
|
result = []
|
1637
1724
|
result
|
1638
1725
|
end
|
1639
1726
|
.,.,
|
1640
1727
|
|
1641
|
-
module_eval(<<'.,.,', 'parser.y',
|
1728
|
+
module_eval(<<'.,.,', 'parser.y', 231)
|
1642
1729
|
def _reduce_31(val, _values, result)
|
1643
1730
|
result = val[0].push(val[1])
|
1644
1731
|
|
@@ -1658,7 +1745,7 @@ module_eval(<<'.,.,', 'parser.y', 168)
|
|
1658
1745
|
|
1659
1746
|
# reduce 37 omitted
|
1660
1747
|
|
1661
|
-
module_eval(<<'.,.,', 'parser.y',
|
1748
|
+
module_eval(<<'.,.,', 'parser.y', 242)
|
1662
1749
|
def _reduce_38(val, _values, result)
|
1663
1750
|
result = Members::Public.new(location: val[0].location)
|
1664
1751
|
|
@@ -1666,7 +1753,7 @@ module_eval(<<'.,.,', 'parser.y', 179)
|
|
1666
1753
|
end
|
1667
1754
|
.,.,
|
1668
1755
|
|
1669
|
-
module_eval(<<'.,.,', 'parser.y',
|
1756
|
+
module_eval(<<'.,.,', 'parser.y', 245)
|
1670
1757
|
def _reduce_39(val, _values, result)
|
1671
1758
|
result = Members::Private.new(location: val[0].location)
|
1672
1759
|
|
@@ -1678,27 +1765,32 @@ module_eval(<<'.,.,', 'parser.y', 182)
|
|
1678
1765
|
|
1679
1766
|
# reduce 41 omitted
|
1680
1767
|
|
1681
|
-
module_eval(<<'.,.,', 'parser.y',
|
1768
|
+
module_eval(<<'.,.,', 'parser.y', 251)
|
1682
1769
|
def _reduce_42(val, _values, result)
|
1683
|
-
result = :instance
|
1770
|
+
result = LocatedValue.new(value: :instance, location: nil)
|
1684
1771
|
result
|
1685
1772
|
end
|
1686
1773
|
.,.,
|
1687
1774
|
|
1688
|
-
module_eval(<<'.,.,', 'parser.y',
|
1775
|
+
module_eval(<<'.,.,', 'parser.y', 252)
|
1689
1776
|
def _reduce_43(val, _values, result)
|
1690
|
-
result = :singleton
|
1777
|
+
result = LocatedValue.new(value: :singleton, location: val[0].location + val[1].location)
|
1691
1778
|
result
|
1692
1779
|
end
|
1693
1780
|
.,.,
|
1694
1781
|
|
1695
|
-
module_eval(<<'.,.,', 'parser.y',
|
1782
|
+
module_eval(<<'.,.,', 'parser.y', 256)
|
1696
1783
|
def _reduce_44(val, _values, result)
|
1697
1784
|
location = val[1].location + val[4].location
|
1785
|
+
name_loc, colon_loc = split_kw_loc(val[3].location)
|
1786
|
+
location = location.with_children(
|
1787
|
+
required: { keyword: val[1].location, name: name_loc, colon: colon_loc },
|
1788
|
+
optional: { ivar: nil, ivar_name: nil, kind: val[2].location }
|
1789
|
+
)
|
1698
1790
|
result = Members::AttrReader.new(name: val[3].value,
|
1699
1791
|
ivar_name: nil,
|
1700
1792
|
type: val[4],
|
1701
|
-
kind: val[2],
|
1793
|
+
kind: val[2].value,
|
1702
1794
|
annotations: val[0],
|
1703
1795
|
location: location,
|
1704
1796
|
comment: leading_comment(val[0].first&.location || location))
|
@@ -1707,13 +1799,29 @@ module_eval(<<'.,.,', 'parser.y', 193)
|
|
1707
1799
|
end
|
1708
1800
|
.,.,
|
1709
1801
|
|
1710
|
-
module_eval(<<'.,.,', 'parser.y',
|
1802
|
+
module_eval(<<'.,.,', 'parser.y', 271)
|
1711
1803
|
def _reduce_45(val, _values, result)
|
1712
1804
|
location = val[1].location + val[6].location
|
1805
|
+
ivar_loc = val[4]&.location
|
1806
|
+
case name_value = val[4]&.value
|
1807
|
+
when LocatedValue
|
1808
|
+
ivar_name = name_value.value
|
1809
|
+
ivar_name_loc = name_value.location
|
1810
|
+
when false
|
1811
|
+
ivar_name = false
|
1812
|
+
ivar_name_loc = nil
|
1813
|
+
else
|
1814
|
+
ivar_name = nil
|
1815
|
+
ivar_loc = nil
|
1816
|
+
end
|
1817
|
+
location = location.with_children(
|
1818
|
+
required: { keyword: val[1].location, name: val[3].location, colon: val[5].location },
|
1819
|
+
optional: { ivar: ivar_loc, ivar_name: ivar_name_loc, kind: val[2].location }
|
1820
|
+
)
|
1713
1821
|
result = Members::AttrReader.new(name: val[3].value.to_sym,
|
1714
|
-
ivar_name:
|
1822
|
+
ivar_name: ivar_name,
|
1715
1823
|
type: val[6],
|
1716
|
-
kind: val[2],
|
1824
|
+
kind: val[2].value,
|
1717
1825
|
annotations: val[0],
|
1718
1826
|
location: location,
|
1719
1827
|
comment: leading_comment(val[0].first&.location || location))
|
@@ -1722,12 +1830,17 @@ module_eval(<<'.,.,', 'parser.y', 203)
|
|
1722
1830
|
end
|
1723
1831
|
.,.,
|
1724
1832
|
|
1725
|
-
module_eval(<<'.,.,', 'parser.y',
|
1833
|
+
module_eval(<<'.,.,', 'parser.y', 297)
|
1726
1834
|
def _reduce_46(val, _values, result)
|
1727
1835
|
location = val[1].location + val[4].location
|
1836
|
+
name_loc, colon_loc = split_kw_loc(val[3].location)
|
1837
|
+
location = location.with_children(
|
1838
|
+
required: { keyword: val[1].location, name: name_loc, colon: colon_loc },
|
1839
|
+
optional: { ivar: nil, ivar_name: nil, kind: val[2].location }
|
1840
|
+
)
|
1728
1841
|
result = Members::AttrWriter.new(name: val[3].value,
|
1729
1842
|
ivar_name: nil,
|
1730
|
-
kind: val[2],
|
1843
|
+
kind: val[2].value,
|
1731
1844
|
type: val[4],
|
1732
1845
|
annotations: val[0],
|
1733
1846
|
location: location,
|
@@ -1737,12 +1850,29 @@ module_eval(<<'.,.,', 'parser.y', 213)
|
|
1737
1850
|
end
|
1738
1851
|
.,.,
|
1739
1852
|
|
1740
|
-
module_eval(<<'.,.,', 'parser.y',
|
1853
|
+
module_eval(<<'.,.,', 'parser.y', 312)
|
1741
1854
|
def _reduce_47(val, _values, result)
|
1742
1855
|
location = val[1].location + val[6].location
|
1856
|
+
ivar_loc = val[4]&.location
|
1857
|
+
case name_value = val[4]&.value
|
1858
|
+
when LocatedValue
|
1859
|
+
ivar_name = name_value.value
|
1860
|
+
ivar_name_loc = name_value.location
|
1861
|
+
when false
|
1862
|
+
ivar_name = false
|
1863
|
+
ivar_name_loc = nil
|
1864
|
+
else
|
1865
|
+
ivar_name = nil
|
1866
|
+
ivar_loc = nil
|
1867
|
+
end
|
1868
|
+
location = location.with_children(
|
1869
|
+
required: { keyword: val[1].location, name: val[3].location, colon: val[5].location },
|
1870
|
+
optional: { ivar: ivar_loc, ivar_name: ivar_name_loc, kind: val[2].location }
|
1871
|
+
)
|
1872
|
+
|
1743
1873
|
result = Members::AttrWriter.new(name: val[3].value.to_sym,
|
1744
|
-
ivar_name:
|
1745
|
-
kind: val[2],
|
1874
|
+
ivar_name: ivar_name,
|
1875
|
+
kind: val[2].value,
|
1746
1876
|
type: val[6],
|
1747
1877
|
annotations: val[0],
|
1748
1878
|
location: location,
|
@@ -1752,12 +1882,18 @@ module_eval(<<'.,.,', 'parser.y', 223)
|
|
1752
1882
|
end
|
1753
1883
|
.,.,
|
1754
1884
|
|
1755
|
-
module_eval(<<'.,.,', 'parser.y',
|
1885
|
+
module_eval(<<'.,.,', 'parser.y', 339)
|
1756
1886
|
def _reduce_48(val, _values, result)
|
1757
1887
|
location = val[1].location + val[4].location
|
1888
|
+
name_loc, colon_loc = split_kw_loc(val[3].location)
|
1889
|
+
location = location.with_children(
|
1890
|
+
required: { keyword: val[1].location, name: name_loc, colon: colon_loc },
|
1891
|
+
optional: { ivar: nil, ivar_name: nil, kind: val[2].location }
|
1892
|
+
)
|
1893
|
+
|
1758
1894
|
result = Members::AttrAccessor.new(name: val[3].value,
|
1759
1895
|
ivar_name: nil,
|
1760
|
-
kind: val[2],
|
1896
|
+
kind: val[2].value,
|
1761
1897
|
type: val[4],
|
1762
1898
|
annotations: val[0],
|
1763
1899
|
location: location,
|
@@ -1767,12 +1903,29 @@ module_eval(<<'.,.,', 'parser.y', 233)
|
|
1767
1903
|
end
|
1768
1904
|
.,.,
|
1769
1905
|
|
1770
|
-
module_eval(<<'.,.,', 'parser.y',
|
1906
|
+
module_eval(<<'.,.,', 'parser.y', 355)
|
1771
1907
|
def _reduce_49(val, _values, result)
|
1772
1908
|
location = val[1].location + val[6].location
|
1909
|
+
ivar_loc = val[4]&.location
|
1910
|
+
case name_value = val[4]&.value
|
1911
|
+
when LocatedValue
|
1912
|
+
ivar_name = name_value.value
|
1913
|
+
ivar_name_loc = name_value.location
|
1914
|
+
when false
|
1915
|
+
ivar_name = false
|
1916
|
+
ivar_name_loc = nil
|
1917
|
+
else
|
1918
|
+
ivar_name = nil
|
1919
|
+
ivar_loc = nil
|
1920
|
+
end
|
1921
|
+
location = location.with_children(
|
1922
|
+
required: { keyword: val[1].location, name: val[3].location, colon: val[5].location },
|
1923
|
+
optional: { ivar: ivar_loc, ivar_name: ivar_name_loc, kind: val[2].location }
|
1924
|
+
)
|
1925
|
+
|
1773
1926
|
result = Members::AttrAccessor.new(name: val[3].value.to_sym,
|
1774
|
-
ivar_name:
|
1775
|
-
kind: val[2],
|
1927
|
+
ivar_name: ivar_name,
|
1928
|
+
kind: val[2].value,
|
1776
1929
|
type: val[6],
|
1777
1930
|
annotations: val[0],
|
1778
1931
|
location: location,
|
@@ -1782,30 +1935,38 @@ module_eval(<<'.,.,', 'parser.y', 243)
|
|
1782
1935
|
end
|
1783
1936
|
.,.,
|
1784
1937
|
|
1785
|
-
module_eval(<<'.,.,', 'parser.y',
|
1938
|
+
module_eval(<<'.,.,', 'parser.y', 383)
|
1786
1939
|
def _reduce_50(val, _values, result)
|
1787
1940
|
result = nil
|
1788
1941
|
result
|
1789
1942
|
end
|
1790
1943
|
.,.,
|
1791
1944
|
|
1792
|
-
module_eval(<<'.,.,', 'parser.y',
|
1945
|
+
module_eval(<<'.,.,', 'parser.y', 384)
|
1793
1946
|
def _reduce_51(val, _values, result)
|
1794
|
-
result = false
|
1947
|
+
result = LocatedValue.new(value: false, location: val[0].location + val[1].location)
|
1795
1948
|
result
|
1796
1949
|
end
|
1797
1950
|
.,.,
|
1798
1951
|
|
1799
|
-
module_eval(<<'.,.,', 'parser.y',
|
1952
|
+
module_eval(<<'.,.,', 'parser.y', 386)
|
1800
1953
|
def _reduce_52(val, _values, result)
|
1801
|
-
|
1954
|
+
result = LocatedValue.new(
|
1955
|
+
value: val[1],
|
1956
|
+
location: val[0].location + val[2].location
|
1957
|
+
)
|
1958
|
+
|
1802
1959
|
result
|
1803
1960
|
end
|
1804
1961
|
.,.,
|
1805
1962
|
|
1806
|
-
module_eval(<<'.,.,', 'parser.y',
|
1963
|
+
module_eval(<<'.,.,', 'parser.y', 394)
|
1807
1964
|
def _reduce_53(val, _values, result)
|
1808
|
-
location = val[0].location + val[2].location
|
1965
|
+
location = (val[0].location + val[2].location).with_children(
|
1966
|
+
required: { name: val[0].location, colon: val[1].location },
|
1967
|
+
optional: { kind: nil }
|
1968
|
+
)
|
1969
|
+
|
1809
1970
|
result = Members::InstanceVariable.new(
|
1810
1971
|
name: val[0].value,
|
1811
1972
|
type: val[2],
|
@@ -1817,7 +1978,7 @@ module_eval(<<'.,.,', 'parser.y', 260)
|
|
1817
1978
|
end
|
1818
1979
|
.,.,
|
1819
1980
|
|
1820
|
-
module_eval(<<'.,.,', 'parser.y',
|
1981
|
+
module_eval(<<'.,.,', 'parser.y', 407)
|
1821
1982
|
def _reduce_54(val, _values, result)
|
1822
1983
|
type = val[2]
|
1823
1984
|
|
@@ -1829,7 +1990,11 @@ module_eval(<<'.,.,', 'parser.y', 269)
|
|
1829
1990
|
)
|
1830
1991
|
end
|
1831
1992
|
|
1832
|
-
location = val[0].location + val[2].location
|
1993
|
+
location = (val[0].location + val[2].location).with_children(
|
1994
|
+
required: { name: val[0].location, colon: val[1].location },
|
1995
|
+
optional: { kind: nil }
|
1996
|
+
)
|
1997
|
+
|
1833
1998
|
result = Members::ClassVariable.new(
|
1834
1999
|
name: val[0].value,
|
1835
2000
|
type: type,
|
@@ -1841,7 +2006,7 @@ module_eval(<<'.,.,', 'parser.y', 269)
|
|
1841
2006
|
end
|
1842
2007
|
.,.,
|
1843
2008
|
|
1844
|
-
module_eval(<<'.,.,', 'parser.y',
|
2009
|
+
module_eval(<<'.,.,', 'parser.y', 430)
|
1845
2010
|
def _reduce_55(val, _values, result)
|
1846
2011
|
type = val[4]
|
1847
2012
|
|
@@ -1853,7 +2018,11 @@ module_eval(<<'.,.,', 'parser.y', 288)
|
|
1853
2018
|
)
|
1854
2019
|
end
|
1855
2020
|
|
1856
|
-
location = val[0].location + val[4].location
|
2021
|
+
location = (val[0].location + val[4].location).with_children(
|
2022
|
+
required: { name: val[2].location, colon: val[3].location },
|
2023
|
+
optional: { kind: val[0].location + val[1].location }
|
2024
|
+
)
|
2025
|
+
|
1857
2026
|
result = Members::ClassInstanceVariable.new(
|
1858
2027
|
name: val[2].value,
|
1859
2028
|
type: type,
|
@@ -1865,11 +2034,15 @@ module_eval(<<'.,.,', 'parser.y', 288)
|
|
1865
2034
|
end
|
1866
2035
|
.,.,
|
1867
2036
|
|
1868
|
-
module_eval(<<'.,.,', 'parser.y',
|
2037
|
+
module_eval(<<'.,.,', 'parser.y', 455)
|
1869
2038
|
def _reduce_56(val, _values, result)
|
1870
2039
|
reset_variable_scope
|
1871
2040
|
|
1872
2041
|
location = val[1].location + val[6].location
|
2042
|
+
location = location.with_children(
|
2043
|
+
required: { keyword: val[1].location, name: val[3].location, end: val[6].location },
|
2044
|
+
optional: { type_params: val[4]&.location }
|
2045
|
+
)
|
1873
2046
|
result = Declarations::Interface.new(
|
1874
2047
|
name: val[3].value,
|
1875
2048
|
type_params: val[4]&.value || Declarations::ModuleTypeParams.empty,
|
@@ -1883,14 +2056,14 @@ module_eval(<<'.,.,', 'parser.y', 309)
|
|
1883
2056
|
end
|
1884
2057
|
.,.,
|
1885
2058
|
|
1886
|
-
module_eval(<<'.,.,', 'parser.y',
|
2059
|
+
module_eval(<<'.,.,', 'parser.y', 473)
|
1887
2060
|
def _reduce_57(val, _values, result)
|
1888
2061
|
result = []
|
1889
2062
|
result
|
1890
2063
|
end
|
1891
2064
|
.,.,
|
1892
2065
|
|
1893
|
-
module_eval(<<'.,.,', 'parser.y',
|
2066
|
+
module_eval(<<'.,.,', 'parser.y', 475)
|
1894
2067
|
def _reduce_58(val, _values, result)
|
1895
2068
|
result = val[0].push(val[1])
|
1896
2069
|
|
@@ -1898,7 +2071,7 @@ module_eval(<<'.,.,', 'parser.y', 325)
|
|
1898
2071
|
end
|
1899
2072
|
.,.,
|
1900
2073
|
|
1901
|
-
module_eval(<<'.,.,', 'parser.y',
|
2074
|
+
module_eval(<<'.,.,', 'parser.y', 480)
|
1902
2075
|
def _reduce_59(val, _values, result)
|
1903
2076
|
unless val[0].kind == :instance
|
1904
2077
|
raise SemanticsError.new("Interface cannot have singleton method", subject: val[0], location: val[0].location)
|
@@ -1914,7 +2087,7 @@ module_eval(<<'.,.,', 'parser.y', 330)
|
|
1914
2087
|
end
|
1915
2088
|
.,.,
|
1916
2089
|
|
1917
|
-
module_eval(<<'.,.,', 'parser.y',
|
2090
|
+
module_eval(<<'.,.,', 'parser.y', 491)
|
1918
2091
|
def _reduce_60(val, _values, result)
|
1919
2092
|
unless val[0].name.interface?
|
1920
2093
|
raise SemanticsError.new("Interface should include an interface", subject: val[0], location: val[0].location)
|
@@ -1928,12 +2101,17 @@ module_eval(<<'.,.,', 'parser.y', 341)
|
|
1928
2101
|
|
1929
2102
|
# reduce 61 omitted
|
1930
2103
|
|
1931
|
-
module_eval(<<'.,.,', 'parser.y',
|
2104
|
+
module_eval(<<'.,.,', 'parser.y', 501)
|
1932
2105
|
def _reduce_62(val, _values, result)
|
1933
2106
|
if val[2].value.alias?
|
1934
2107
|
raise SemanticsError.new("Should include module or interface", subject: val[2].value, location: val[2].location)
|
1935
2108
|
end
|
1936
|
-
|
2109
|
+
|
2110
|
+
location = (val[1].location + val[2].location).with_children(
|
2111
|
+
required: { keyword: val[1].location, name: val[2].location },
|
2112
|
+
optional: { args: nil }
|
2113
|
+
)
|
2114
|
+
|
1937
2115
|
result = Members::Include.new(name: val[2].value,
|
1938
2116
|
args: [],
|
1939
2117
|
annotations: val[0],
|
@@ -1944,12 +2122,17 @@ module_eval(<<'.,.,', 'parser.y', 351)
|
|
1944
2122
|
end
|
1945
2123
|
.,.,
|
1946
2124
|
|
1947
|
-
module_eval(<<'.,.,', 'parser.y',
|
2125
|
+
module_eval(<<'.,.,', 'parser.y', 517)
|
1948
2126
|
def _reduce_63(val, _values, result)
|
1949
2127
|
if val[2].value.alias?
|
1950
2128
|
raise SemanticsError.new("Should include module or interface", subject: val[2].value, location: val[2].location)
|
1951
2129
|
end
|
1952
|
-
|
2130
|
+
|
2131
|
+
location = (val[1].location + val[5].location).with_children(
|
2132
|
+
required: { keyword: val[1].location, name: val[2].location },
|
2133
|
+
optional: { args: val[3].location + val[5].location }
|
2134
|
+
)
|
2135
|
+
|
1953
2136
|
result = Members::Include.new(name: val[2].value,
|
1954
2137
|
args: val[4],
|
1955
2138
|
annotations: val[0],
|
@@ -1960,12 +2143,17 @@ module_eval(<<'.,.,', 'parser.y', 362)
|
|
1960
2143
|
end
|
1961
2144
|
.,.,
|
1962
2145
|
|
1963
|
-
module_eval(<<'.,.,', 'parser.y',
|
2146
|
+
module_eval(<<'.,.,', 'parser.y', 535)
|
1964
2147
|
def _reduce_64(val, _values, result)
|
1965
2148
|
if val[2].value.alias?
|
1966
2149
|
raise SemanticsError.new("Should extend module or interface", subject: val[2].value, location: val[2].location)
|
1967
2150
|
end
|
1968
|
-
|
2151
|
+
|
2152
|
+
location = (val[1].location + val[2].location).with_children(
|
2153
|
+
required: { keyword: val[1].location, name: val[2].location },
|
2154
|
+
optional: { args: nil }
|
2155
|
+
)
|
2156
|
+
|
1969
2157
|
result = Members::Extend.new(name: val[2].value,
|
1970
2158
|
args: [],
|
1971
2159
|
annotations: val[0],
|
@@ -1976,12 +2164,17 @@ module_eval(<<'.,.,', 'parser.y', 375)
|
|
1976
2164
|
end
|
1977
2165
|
.,.,
|
1978
2166
|
|
1979
|
-
module_eval(<<'.,.,', 'parser.y',
|
2167
|
+
module_eval(<<'.,.,', 'parser.y', 551)
|
1980
2168
|
def _reduce_65(val, _values, result)
|
1981
2169
|
if val[2].value.alias?
|
1982
2170
|
raise SemanticsError.new("Should extend module or interface", subject: val[2].value, location: val[2].location)
|
1983
2171
|
end
|
1984
|
-
|
2172
|
+
|
2173
|
+
location = (val[1].location + val[5].location).with_children(
|
2174
|
+
required: { keyword: val[1].location, name: val[2].location },
|
2175
|
+
optional: { args: val[3].location + val[5].location }
|
2176
|
+
)
|
2177
|
+
|
1985
2178
|
result = Members::Extend.new(name: val[2].value,
|
1986
2179
|
args: val[4],
|
1987
2180
|
annotations: val[0],
|
@@ -1992,12 +2185,17 @@ module_eval(<<'.,.,', 'parser.y', 386)
|
|
1992
2185
|
end
|
1993
2186
|
.,.,
|
1994
2187
|
|
1995
|
-
module_eval(<<'.,.,', 'parser.y',
|
2188
|
+
module_eval(<<'.,.,', 'parser.y', 569)
|
1996
2189
|
def _reduce_66(val, _values, result)
|
1997
2190
|
unless val[2].value.class?
|
1998
2191
|
raise SemanticsError.new("Should prepend module", subject: val[2].value, location: val[2].location)
|
1999
2192
|
end
|
2000
|
-
|
2193
|
+
|
2194
|
+
location = (val[1].location + val[2].location).with_children(
|
2195
|
+
required: { keyword: val[1].location, name: val[2].location },
|
2196
|
+
optional: { args: nil }
|
2197
|
+
)
|
2198
|
+
|
2001
2199
|
result = Members::Prepend.new(name: val[2].value,
|
2002
2200
|
args: [],
|
2003
2201
|
annotations: val[0],
|
@@ -2008,12 +2206,17 @@ module_eval(<<'.,.,', 'parser.y', 399)
|
|
2008
2206
|
end
|
2009
2207
|
.,.,
|
2010
2208
|
|
2011
|
-
module_eval(<<'.,.,', 'parser.y',
|
2209
|
+
module_eval(<<'.,.,', 'parser.y', 585)
|
2012
2210
|
def _reduce_67(val, _values, result)
|
2013
2211
|
unless val[2].value.class?
|
2014
2212
|
raise SemanticsError.new("Should prepend module", subject: val[2].value, location: val[2].location)
|
2015
2213
|
end
|
2016
|
-
|
2214
|
+
|
2215
|
+
location = (val[1].location + val[5].location).with_children(
|
2216
|
+
required: { keyword: val[1].location, name: val[2].location },
|
2217
|
+
optional: { args: val[3].location + val[5].location }
|
2218
|
+
)
|
2219
|
+
|
2017
2220
|
result = Members::Prepend.new(name: val[2].value,
|
2018
2221
|
args: val[4],
|
2019
2222
|
annotations: val[0],
|
@@ -2024,14 +2227,14 @@ module_eval(<<'.,.,', 'parser.y', 410)
|
|
2024
2227
|
end
|
2025
2228
|
.,.,
|
2026
2229
|
|
2027
|
-
module_eval(<<'.,.,', 'parser.y',
|
2230
|
+
module_eval(<<'.,.,', 'parser.y', 602)
|
2028
2231
|
def _reduce_68(val, _values, result)
|
2029
2232
|
result = nil
|
2030
2233
|
result
|
2031
2234
|
end
|
2032
2235
|
.,.,
|
2033
2236
|
|
2034
|
-
module_eval(<<'.,.,', 'parser.y',
|
2237
|
+
module_eval(<<'.,.,', 'parser.y', 604)
|
2035
2238
|
def _reduce_69(val, _values, result)
|
2036
2239
|
RBS.logger.warn "`overload def` syntax is deprecated. Use `...` syntax instead."
|
2037
2240
|
result = val[0]
|
@@ -2040,13 +2243,24 @@ module_eval(<<'.,.,', 'parser.y', 424)
|
|
2040
2243
|
end
|
2041
2244
|
.,.,
|
2042
2245
|
|
2043
|
-
module_eval(<<'.,.,', 'parser.y',
|
2246
|
+
module_eval(<<'.,.,', 'parser.y', 610)
|
2044
2247
|
def _reduce_70(val, _values, result)
|
2045
2248
|
location = val[3].location + val[6].last.location
|
2046
2249
|
|
2250
|
+
required_children = { keyword: val[3].location, name: val[5].location }
|
2251
|
+
optional_children = { kind: nil, overload: nil }
|
2252
|
+
|
2253
|
+
if val[4]
|
2254
|
+
kind = val[4].value
|
2255
|
+
optional_children[:kind] = val[4].location
|
2256
|
+
else
|
2257
|
+
kind = :instance
|
2258
|
+
end
|
2259
|
+
|
2047
2260
|
last_type = val[6].last
|
2048
2261
|
if last_type.is_a?(LocatedValue) && last_type.value == :dot3
|
2049
2262
|
overload = true
|
2263
|
+
optional_children[:overload] = last_type.location
|
2050
2264
|
val[6].pop
|
2051
2265
|
else
|
2052
2266
|
overload = false
|
@@ -2054,10 +2268,10 @@ module_eval(<<'.,.,', 'parser.y', 430)
|
|
2054
2268
|
|
2055
2269
|
result = Members::MethodDefinition.new(
|
2056
2270
|
name: val[5].value,
|
2057
|
-
kind:
|
2271
|
+
kind: kind,
|
2058
2272
|
types: val[6],
|
2059
2273
|
annotations: val[0],
|
2060
|
-
location: location,
|
2274
|
+
location: location.with_children(required: required_children, optional: optional_children),
|
2061
2275
|
comment: leading_comment(val[0].first&.location || val[2]&.location || val[3].location),
|
2062
2276
|
overload: overload || !!val[2]
|
2063
2277
|
)
|
@@ -2068,7 +2282,7 @@ module_eval(<<'.,.,', 'parser.y', 430)
|
|
2068
2282
|
|
2069
2283
|
# reduce 71 omitted
|
2070
2284
|
|
2071
|
-
module_eval(<<'.,.,', 'parser.y',
|
2285
|
+
module_eval(<<'.,.,', 'parser.y', 644)
|
2072
2286
|
def _reduce_72(val, _values, result)
|
2073
2287
|
RBS.logger.warn "`incompatible` method attribute is deprecated and ignored."
|
2074
2288
|
|
@@ -2076,42 +2290,42 @@ module_eval(<<'.,.,', 'parser.y', 453)
|
|
2076
2290
|
end
|
2077
2291
|
.,.,
|
2078
2292
|
|
2079
|
-
module_eval(<<'.,.,', 'parser.y',
|
2293
|
+
module_eval(<<'.,.,', 'parser.y', 648)
|
2080
2294
|
def _reduce_73(val, _values, result)
|
2081
|
-
result =
|
2295
|
+
result = nil
|
2082
2296
|
result
|
2083
2297
|
end
|
2084
2298
|
.,.,
|
2085
2299
|
|
2086
|
-
module_eval(<<'.,.,', 'parser.y',
|
2300
|
+
module_eval(<<'.,.,', 'parser.y', 649)
|
2087
2301
|
def _reduce_74(val, _values, result)
|
2088
|
-
result = :singleton
|
2302
|
+
result = LocatedValue.new(value: :singleton, location: val[0].location + val[1].location)
|
2089
2303
|
result
|
2090
2304
|
end
|
2091
2305
|
.,.,
|
2092
2306
|
|
2093
|
-
module_eval(<<'.,.,', 'parser.y',
|
2307
|
+
module_eval(<<'.,.,', 'parser.y', 650)
|
2094
2308
|
def _reduce_75(val, _values, result)
|
2095
|
-
result = :singleton_instance
|
2309
|
+
result = LocatedValue.new(value: :singleton_instance, location: val[0].location + val[1].location)
|
2096
2310
|
result
|
2097
2311
|
end
|
2098
2312
|
.,.,
|
2099
2313
|
|
2100
|
-
module_eval(<<'.,.,', 'parser.y',
|
2314
|
+
module_eval(<<'.,.,', 'parser.y', 653)
|
2101
2315
|
def _reduce_76(val, _values, result)
|
2102
2316
|
result = [val[0]]
|
2103
2317
|
result
|
2104
2318
|
end
|
2105
2319
|
.,.,
|
2106
2320
|
|
2107
|
-
module_eval(<<'.,.,', 'parser.y',
|
2321
|
+
module_eval(<<'.,.,', 'parser.y', 654)
|
2108
2322
|
def _reduce_77(val, _values, result)
|
2109
2323
|
result = [LocatedValue.new(value: :dot3, location: val[0].location)]
|
2110
2324
|
result
|
2111
2325
|
end
|
2112
2326
|
.,.,
|
2113
2327
|
|
2114
|
-
module_eval(<<'.,.,', 'parser.y',
|
2328
|
+
module_eval(<<'.,.,', 'parser.y', 656)
|
2115
2329
|
def _reduce_78(val, _values, result)
|
2116
2330
|
result = val[2].unshift(val[0])
|
2117
2331
|
|
@@ -2119,7 +2333,7 @@ module_eval(<<'.,.,', 'parser.y', 465)
|
|
2119
2333
|
end
|
2120
2334
|
.,.,
|
2121
2335
|
|
2122
|
-
module_eval(<<'.,.,', 'parser.y',
|
2336
|
+
module_eval(<<'.,.,', 'parser.y', 661)
|
2123
2337
|
def _reduce_79(val, _values, result)
|
2124
2338
|
reset_variable_scope
|
2125
2339
|
|
@@ -2137,14 +2351,14 @@ module_eval(<<'.,.,', 'parser.y', 470)
|
|
2137
2351
|
end
|
2138
2352
|
.,.,
|
2139
2353
|
|
2140
|
-
module_eval(<<'.,.,', 'parser.y',
|
2354
|
+
module_eval(<<'.,.,', 'parser.y', 675)
|
2141
2355
|
def _reduce_80(val, _values, result)
|
2142
2356
|
result = nil
|
2143
2357
|
result
|
2144
2358
|
end
|
2145
2359
|
.,.,
|
2146
2360
|
|
2147
|
-
module_eval(<<'.,.,', 'parser.y',
|
2361
|
+
module_eval(<<'.,.,', 'parser.y', 677)
|
2148
2362
|
def _reduce_81(val, _values, result)
|
2149
2363
|
result = LocatedValue.new(value: val[1], location: val[0].location + val[2].location)
|
2150
2364
|
|
@@ -2152,7 +2366,7 @@ module_eval(<<'.,.,', 'parser.y', 486)
|
|
2152
2366
|
end
|
2153
2367
|
.,.,
|
2154
2368
|
|
2155
|
-
module_eval(<<'.,.,', 'parser.y',
|
2369
|
+
module_eval(<<'.,.,', 'parser.y', 682)
|
2156
2370
|
def _reduce_82(val, _values, result)
|
2157
2371
|
block = Types::Block.new(type: val[1].value, required: true)
|
2158
2372
|
result = LocatedValue.new(value: block, location: val[0].location + val[2].location)
|
@@ -2161,7 +2375,7 @@ module_eval(<<'.,.,', 'parser.y', 491)
|
|
2161
2375
|
end
|
2162
2376
|
.,.,
|
2163
2377
|
|
2164
|
-
module_eval(<<'.,.,', 'parser.y',
|
2378
|
+
module_eval(<<'.,.,', 'parser.y', 686)
|
2165
2379
|
def _reduce_83(val, _values, result)
|
2166
2380
|
block = Types::Block.new(type: val[2].value, required: false)
|
2167
2381
|
result = LocatedValue.new(value: block, location: val[0].location + val[3].location)
|
@@ -2170,9 +2384,20 @@ module_eval(<<'.,.,', 'parser.y', 495)
|
|
2170
2384
|
end
|
2171
2385
|
.,.,
|
2172
2386
|
|
2173
|
-
|
2387
|
+
module_eval(<<'.,.,', 'parser.y', 692)
|
2388
|
+
def _reduce_84(val, _values, result)
|
2389
|
+
loc = val[0].location
|
2174
2390
|
|
2175
|
-
|
2391
|
+
result = LocatedValue.new(
|
2392
|
+
value: val[0].value,
|
2393
|
+
location: Location.new(buffer: loc.buffer, start_pos: loc.start_pos, end_pos: loc.end_pos - 1)
|
2394
|
+
)
|
2395
|
+
|
2396
|
+
result
|
2397
|
+
end
|
2398
|
+
.,.,
|
2399
|
+
|
2400
|
+
module_eval(<<'.,.,', 'parser.y', 700)
|
2176
2401
|
def _reduce_85(val, _values, result)
|
2177
2402
|
result = LocatedValue.new(value: val[0].value.to_sym,
|
2178
2403
|
location: val[0].location + val[1].location)
|
@@ -2199,7 +2424,7 @@ module_eval(<<'.,.,', 'parser.y', 502)
|
|
2199
2424
|
|
2200
2425
|
# reduce 94 omitted
|
2201
2426
|
|
2202
|
-
module_eval(<<'.,.,', 'parser.y',
|
2427
|
+
module_eval(<<'.,.,', 'parser.y', 709)
|
2203
2428
|
def _reduce_95(val, _values, result)
|
2204
2429
|
unless val[0].location.pred?(val[1].location)
|
2205
2430
|
raise SyntaxError.new(token_str: "kQUESTION", error_value: val[1])
|
@@ -2212,7 +2437,7 @@ module_eval(<<'.,.,', 'parser.y', 511)
|
|
2212
2437
|
end
|
2213
2438
|
.,.,
|
2214
2439
|
|
2215
|
-
module_eval(<<'.,.,', 'parser.y',
|
2440
|
+
module_eval(<<'.,.,', 'parser.y', 717)
|
2216
2441
|
def _reduce_96(val, _values, result)
|
2217
2442
|
unless val[0].location.pred?(val[1].location)
|
2218
2443
|
raise SyntaxError.new(token_str: "kEXCLAMATION", error_value: val[1])
|
@@ -2305,14 +2530,14 @@ module_eval(<<'.,.,', 'parser.y', 519)
|
|
2305
2530
|
|
2306
2531
|
# reduce 136 omitted
|
2307
2532
|
|
2308
|
-
module_eval(<<'.,.,', 'parser.y',
|
2533
|
+
module_eval(<<'.,.,', 'parser.y', 737)
|
2309
2534
|
def _reduce_137(val, _values, result)
|
2310
2535
|
result = nil
|
2311
2536
|
result
|
2312
2537
|
end
|
2313
2538
|
.,.,
|
2314
2539
|
|
2315
|
-
module_eval(<<'.,.,', 'parser.y',
|
2540
|
+
module_eval(<<'.,.,', 'parser.y', 739)
|
2316
2541
|
def _reduce_138(val, _values, result)
|
2317
2542
|
val[1].each {|p| insert_bound_variable(p.name) }
|
2318
2543
|
|
@@ -2322,7 +2547,7 @@ module_eval(<<'.,.,', 'parser.y', 541)
|
|
2322
2547
|
end
|
2323
2548
|
.,.,
|
2324
2549
|
|
2325
|
-
module_eval(<<'.,.,', 'parser.y',
|
2550
|
+
module_eval(<<'.,.,', 'parser.y', 746)
|
2326
2551
|
def _reduce_139(val, _values, result)
|
2327
2552
|
result = Declarations::ModuleTypeParams.new()
|
2328
2553
|
result.add(val[0])
|
@@ -2331,7 +2556,7 @@ module_eval(<<'.,.,', 'parser.y', 548)
|
|
2331
2556
|
end
|
2332
2557
|
.,.,
|
2333
2558
|
|
2334
|
-
module_eval(<<'.,.,', 'parser.y',
|
2559
|
+
module_eval(<<'.,.,', 'parser.y', 750)
|
2335
2560
|
def _reduce_140(val, _values, result)
|
2336
2561
|
result = val[0].add(val[2])
|
2337
2562
|
|
@@ -2339,59 +2564,74 @@ module_eval(<<'.,.,', 'parser.y', 552)
|
|
2339
2564
|
end
|
2340
2565
|
.,.,
|
2341
2566
|
|
2342
|
-
module_eval(<<'.,.,', 'parser.y',
|
2567
|
+
module_eval(<<'.,.,', 'parser.y', 755)
|
2343
2568
|
def _reduce_141(val, _values, result)
|
2344
|
-
|
2345
|
-
|
2346
|
-
|
2569
|
+
loc = case
|
2570
|
+
when l0 = val[0].location
|
2571
|
+
l0 + val[2].location
|
2572
|
+
when l1 = val[1].location
|
2573
|
+
l1 + val[2].location
|
2574
|
+
else
|
2575
|
+
val[2].location
|
2576
|
+
end
|
2577
|
+
loc = loc.with_children(
|
2578
|
+
required: { name: val[2].location },
|
2579
|
+
optional: { variance: val[1].location, unchecked: val[0].location }
|
2580
|
+
)
|
2581
|
+
result = Declarations::ModuleTypeParams::TypeParam.new(
|
2582
|
+
name: val[2].value.to_sym,
|
2583
|
+
variance: val[1].value,
|
2584
|
+
skip_validation: val[0].value,
|
2585
|
+
location: loc
|
2586
|
+
)
|
2347
2587
|
|
2348
2588
|
result
|
2349
2589
|
end
|
2350
2590
|
.,.,
|
2351
2591
|
|
2352
|
-
module_eval(<<'.,.,', 'parser.y',
|
2592
|
+
module_eval(<<'.,.,', 'parser.y', 776)
|
2353
2593
|
def _reduce_142(val, _values, result)
|
2354
|
-
result = :invariant
|
2594
|
+
result = LocatedValue.new(value: :invariant, location: nil)
|
2355
2595
|
result
|
2356
2596
|
end
|
2357
2597
|
.,.,
|
2358
2598
|
|
2359
|
-
module_eval(<<'.,.,', 'parser.y',
|
2599
|
+
module_eval(<<'.,.,', 'parser.y', 777)
|
2360
2600
|
def _reduce_143(val, _values, result)
|
2361
|
-
result = :covariant
|
2601
|
+
result = LocatedValue.new(value: :covariant, location: val[0].location)
|
2362
2602
|
result
|
2363
2603
|
end
|
2364
2604
|
.,.,
|
2365
2605
|
|
2366
|
-
module_eval(<<'.,.,', 'parser.y',
|
2606
|
+
module_eval(<<'.,.,', 'parser.y', 778)
|
2367
2607
|
def _reduce_144(val, _values, result)
|
2368
|
-
result = :contravariant
|
2608
|
+
result = LocatedValue.new(value: :contravariant, location: val[0].location)
|
2369
2609
|
result
|
2370
2610
|
end
|
2371
2611
|
.,.,
|
2372
2612
|
|
2373
|
-
module_eval(<<'.,.,', 'parser.y',
|
2613
|
+
module_eval(<<'.,.,', 'parser.y', 781)
|
2374
2614
|
def _reduce_145(val, _values, result)
|
2375
|
-
result = false
|
2615
|
+
result = LocatedValue.new(value: false, location: nil)
|
2376
2616
|
result
|
2377
2617
|
end
|
2378
2618
|
.,.,
|
2379
2619
|
|
2380
|
-
module_eval(<<'.,.,', 'parser.y',
|
2620
|
+
module_eval(<<'.,.,', 'parser.y', 782)
|
2381
2621
|
def _reduce_146(val, _values, result)
|
2382
|
-
result = true
|
2622
|
+
result = LocatedValue.new(value: true, location: val[0].location)
|
2383
2623
|
result
|
2384
2624
|
end
|
2385
2625
|
.,.,
|
2386
2626
|
|
2387
|
-
module_eval(<<'.,.,', 'parser.y',
|
2627
|
+
module_eval(<<'.,.,', 'parser.y', 785)
|
2388
2628
|
def _reduce_147(val, _values, result)
|
2389
2629
|
result = nil
|
2390
2630
|
result
|
2391
2631
|
end
|
2392
2632
|
.,.,
|
2393
2633
|
|
2394
|
-
module_eval(<<'.,.,', 'parser.y',
|
2634
|
+
module_eval(<<'.,.,', 'parser.y', 787)
|
2395
2635
|
def _reduce_148(val, _values, result)
|
2396
2636
|
val[1].each {|var| insert_bound_variable(var) }
|
2397
2637
|
|
@@ -2402,7 +2642,7 @@ module_eval(<<'.,.,', 'parser.y', 574)
|
|
2402
2642
|
end
|
2403
2643
|
.,.,
|
2404
2644
|
|
2405
|
-
module_eval(<<'.,.,', 'parser.y',
|
2645
|
+
module_eval(<<'.,.,', 'parser.y', 795)
|
2406
2646
|
def _reduce_149(val, _values, result)
|
2407
2647
|
result = [val[0].value.to_sym]
|
2408
2648
|
|
@@ -2410,7 +2650,7 @@ module_eval(<<'.,.,', 'parser.y', 582)
|
|
2410
2650
|
end
|
2411
2651
|
.,.,
|
2412
2652
|
|
2413
|
-
module_eval(<<'.,.,', 'parser.y',
|
2653
|
+
module_eval(<<'.,.,', 'parser.y', 798)
|
2414
2654
|
def _reduce_150(val, _values, result)
|
2415
2655
|
result = val[0].push(val[2].value.to_sym)
|
2416
2656
|
|
@@ -2418,9 +2658,13 @@ module_eval(<<'.,.,', 'parser.y', 585)
|
|
2418
2658
|
end
|
2419
2659
|
.,.,
|
2420
2660
|
|
2421
|
-
module_eval(<<'.,.,', 'parser.y',
|
2661
|
+
module_eval(<<'.,.,', 'parser.y', 803)
|
2422
2662
|
def _reduce_151(val, _values, result)
|
2423
2663
|
location = val[1].location + val[3].location
|
2664
|
+
location = location.with_children(
|
2665
|
+
required: { keyword: val[1].location, new_name: val[2].location, old_name: val[3].location },
|
2666
|
+
optional: { new_kind: nil, old_kind: nil }
|
2667
|
+
)
|
2424
2668
|
result = Members::Alias.new(
|
2425
2669
|
new_name: val[2].value.to_sym,
|
2426
2670
|
old_name: val[3].value.to_sym,
|
@@ -2434,9 +2678,16 @@ module_eval(<<'.,.,', 'parser.y', 590)
|
|
2434
2678
|
end
|
2435
2679
|
.,.,
|
2436
2680
|
|
2437
|
-
module_eval(<<'.,.,', 'parser.y',
|
2681
|
+
module_eval(<<'.,.,', 'parser.y', 818)
|
2438
2682
|
def _reduce_152(val, _values, result)
|
2439
2683
|
location = val[1].location + val[7].location
|
2684
|
+
location = location.with_children(
|
2685
|
+
required: { keyword: val[1].location, new_name: val[4].location, old_name: val[7].location },
|
2686
|
+
optional: {
|
2687
|
+
new_kind: val[2].location + val[3].location,
|
2688
|
+
old_kind: val[5].location + val[6].location
|
2689
|
+
}
|
2690
|
+
)
|
2440
2691
|
result = Members::Alias.new(
|
2441
2692
|
new_name: val[4].value.to_sym,
|
2442
2693
|
old_name: val[7].value.to_sym,
|
@@ -2450,22 +2701,30 @@ module_eval(<<'.,.,', 'parser.y', 601)
|
|
2450
2701
|
end
|
2451
2702
|
.,.,
|
2452
2703
|
|
2453
|
-
module_eval(<<'.,.,', 'parser.y',
|
2704
|
+
module_eval(<<'.,.,', 'parser.y', 838)
|
2454
2705
|
def _reduce_153(val, _values, result)
|
2455
2706
|
location = val[1].location + val[4].location
|
2456
|
-
|
2457
|
-
|
2458
|
-
|
2459
|
-
|
2460
|
-
|
2707
|
+
location = location.with_children(
|
2708
|
+
required: { keyword: val[1].location, name: val[2].location, eq: val[3].location }
|
2709
|
+
)
|
2710
|
+
result = Declarations::Alias.new(
|
2711
|
+
name: val[2].value,
|
2712
|
+
type: val[4],
|
2713
|
+
annotations: val[0],
|
2714
|
+
location: location,
|
2715
|
+
comment: leading_comment(val[0].first&.location || location)
|
2716
|
+
)
|
2461
2717
|
|
2462
2718
|
result
|
2463
2719
|
end
|
2464
2720
|
.,.,
|
2465
2721
|
|
2466
|
-
module_eval(<<'.,.,', 'parser.y',
|
2722
|
+
module_eval(<<'.,.,', 'parser.y', 853)
|
2467
2723
|
def _reduce_154(val, _values, result)
|
2468
2724
|
location = val[0].location + val[2].location
|
2725
|
+
location = location.with_children(
|
2726
|
+
required: { name: val[0].location, colon: val[1].location }
|
2727
|
+
)
|
2469
2728
|
result = Declarations::Constant.new(name: val[0].value,
|
2470
2729
|
type: val[2],
|
2471
2730
|
location: location,
|
@@ -2475,9 +2734,16 @@ module_eval(<<'.,.,', 'parser.y', 624)
|
|
2475
2734
|
end
|
2476
2735
|
.,.,
|
2477
2736
|
|
2478
|
-
module_eval(<<'.,.,', 'parser.y',
|
2737
|
+
module_eval(<<'.,.,', 'parser.y', 863)
|
2479
2738
|
def _reduce_155(val, _values, result)
|
2480
2739
|
location = (val[0] || val[1]).location + val[2].location
|
2740
|
+
|
2741
|
+
lhs_loc = (val[0] || val[1]).location + val[1].location
|
2742
|
+
name_loc, colon_loc = split_kw_loc(lhs_loc)
|
2743
|
+
location = location.with_children(
|
2744
|
+
required: { name: name_loc, colon: colon_loc }
|
2745
|
+
)
|
2746
|
+
|
2481
2747
|
name = TypeName.new(name: val[1].value, namespace: val[0]&.value || Namespace.empty)
|
2482
2748
|
result = Declarations::Constant.new(name: name,
|
2483
2749
|
type: val[2],
|
@@ -2488,9 +2754,12 @@ module_eval(<<'.,.,', 'parser.y', 631)
|
|
2488
2754
|
end
|
2489
2755
|
.,.,
|
2490
2756
|
|
2491
|
-
module_eval(<<'.,.,', 'parser.y',
|
2757
|
+
module_eval(<<'.,.,', 'parser.y', 880)
|
2492
2758
|
def _reduce_156(val, _values, result)
|
2493
2759
|
location = val[0].location + val[2].location
|
2760
|
+
location = location.with_children(
|
2761
|
+
required: { name: val[0].location, colon: val[1].location }
|
2762
|
+
)
|
2494
2763
|
result = Declarations::Global.new(name: val[0].value.to_sym,
|
2495
2764
|
type: val[2],
|
2496
2765
|
location: location,
|
@@ -2502,7 +2771,7 @@ module_eval(<<'.,.,', 'parser.y', 641)
|
|
2502
2771
|
|
2503
2772
|
# reduce 157 omitted
|
2504
2773
|
|
2505
|
-
module_eval(<<'.,.,', 'parser.y',
|
2774
|
+
module_eval(<<'.,.,', 'parser.y', 893)
|
2506
2775
|
def _reduce_158(val, _values, result)
|
2507
2776
|
types = case l = val[0]
|
2508
2777
|
when Types::Union
|
@@ -2517,7 +2786,7 @@ module_eval(<<'.,.,', 'parser.y', 651)
|
|
2517
2786
|
end
|
2518
2787
|
.,.,
|
2519
2788
|
|
2520
|
-
module_eval(<<'.,.,', 'parser.y',
|
2789
|
+
module_eval(<<'.,.,', 'parser.y', 903)
|
2521
2790
|
def _reduce_159(val, _values, result)
|
2522
2791
|
types = case l = val[0]
|
2523
2792
|
when Types::Intersection
|
@@ -2533,7 +2802,7 @@ module_eval(<<'.,.,', 'parser.y', 661)
|
|
2533
2802
|
end
|
2534
2803
|
.,.,
|
2535
2804
|
|
2536
|
-
module_eval(<<'.,.,', 'parser.y',
|
2805
|
+
module_eval(<<'.,.,', 'parser.y', 916)
|
2537
2806
|
def _reduce_160(val, _values, result)
|
2538
2807
|
result = Types::Bases::Void.new(location: val[0].location)
|
2539
2808
|
|
@@ -2541,7 +2810,7 @@ module_eval(<<'.,.,', 'parser.y', 674)
|
|
2541
2810
|
end
|
2542
2811
|
.,.,
|
2543
2812
|
|
2544
|
-
module_eval(<<'.,.,', 'parser.y',
|
2813
|
+
module_eval(<<'.,.,', 'parser.y', 919)
|
2545
2814
|
def _reduce_161(val, _values, result)
|
2546
2815
|
RBS.logger.warn "`any` type is deprecated. Use `untyped` instead. (#{val[0].location.to_s})"
|
2547
2816
|
result = Types::Bases::Any.new(location: val[0].location)
|
@@ -2550,7 +2819,7 @@ module_eval(<<'.,.,', 'parser.y', 677)
|
|
2550
2819
|
end
|
2551
2820
|
.,.,
|
2552
2821
|
|
2553
|
-
module_eval(<<'.,.,', 'parser.y',
|
2822
|
+
module_eval(<<'.,.,', 'parser.y', 923)
|
2554
2823
|
def _reduce_162(val, _values, result)
|
2555
2824
|
result = Types::Bases::Any.new(location: val[0].location)
|
2556
2825
|
|
@@ -2558,7 +2827,7 @@ module_eval(<<'.,.,', 'parser.y', 681)
|
|
2558
2827
|
end
|
2559
2828
|
.,.,
|
2560
2829
|
|
2561
|
-
module_eval(<<'.,.,', 'parser.y',
|
2830
|
+
module_eval(<<'.,.,', 'parser.y', 926)
|
2562
2831
|
def _reduce_163(val, _values, result)
|
2563
2832
|
result = Types::Bases::Bool.new(location: val[0].location)
|
2564
2833
|
|
@@ -2566,7 +2835,7 @@ module_eval(<<'.,.,', 'parser.y', 684)
|
|
2566
2835
|
end
|
2567
2836
|
.,.,
|
2568
2837
|
|
2569
|
-
module_eval(<<'.,.,', 'parser.y',
|
2838
|
+
module_eval(<<'.,.,', 'parser.y', 929)
|
2570
2839
|
def _reduce_164(val, _values, result)
|
2571
2840
|
result = Types::Bases::Nil.new(location: val[0].location)
|
2572
2841
|
|
@@ -2574,7 +2843,7 @@ module_eval(<<'.,.,', 'parser.y', 687)
|
|
2574
2843
|
end
|
2575
2844
|
.,.,
|
2576
2845
|
|
2577
|
-
module_eval(<<'.,.,', 'parser.y',
|
2846
|
+
module_eval(<<'.,.,', 'parser.y', 932)
|
2578
2847
|
def _reduce_165(val, _values, result)
|
2579
2848
|
result = Types::Bases::Top.new(location: val[0].location)
|
2580
2849
|
|
@@ -2582,7 +2851,7 @@ module_eval(<<'.,.,', 'parser.y', 690)
|
|
2582
2851
|
end
|
2583
2852
|
.,.,
|
2584
2853
|
|
2585
|
-
module_eval(<<'.,.,', 'parser.y',
|
2854
|
+
module_eval(<<'.,.,', 'parser.y', 935)
|
2586
2855
|
def _reduce_166(val, _values, result)
|
2587
2856
|
result = Types::Bases::Bottom.new(location: val[0].location)
|
2588
2857
|
|
@@ -2590,7 +2859,7 @@ module_eval(<<'.,.,', 'parser.y', 693)
|
|
2590
2859
|
end
|
2591
2860
|
.,.,
|
2592
2861
|
|
2593
|
-
module_eval(<<'.,.,', 'parser.y',
|
2862
|
+
module_eval(<<'.,.,', 'parser.y', 938)
|
2594
2863
|
def _reduce_167(val, _values, result)
|
2595
2864
|
result = Types::Bases::Self.new(location: val[0].location)
|
2596
2865
|
|
@@ -2598,7 +2867,7 @@ module_eval(<<'.,.,', 'parser.y', 696)
|
|
2598
2867
|
end
|
2599
2868
|
.,.,
|
2600
2869
|
|
2601
|
-
module_eval(<<'.,.,', 'parser.y',
|
2870
|
+
module_eval(<<'.,.,', 'parser.y', 941)
|
2602
2871
|
def _reduce_168(val, _values, result)
|
2603
2872
|
result = Types::Optional.new(type: Types::Bases::Self.new(location: val[0].location),
|
2604
2873
|
location: val[0].location)
|
@@ -2607,7 +2876,7 @@ module_eval(<<'.,.,', 'parser.y', 699)
|
|
2607
2876
|
end
|
2608
2877
|
.,.,
|
2609
2878
|
|
2610
|
-
module_eval(<<'.,.,', 'parser.y',
|
2879
|
+
module_eval(<<'.,.,', 'parser.y', 945)
|
2611
2880
|
def _reduce_169(val, _values, result)
|
2612
2881
|
result = Types::Bases::Instance.new(location: val[0].location)
|
2613
2882
|
|
@@ -2615,7 +2884,7 @@ module_eval(<<'.,.,', 'parser.y', 703)
|
|
2615
2884
|
end
|
2616
2885
|
.,.,
|
2617
2886
|
|
2618
|
-
module_eval(<<'.,.,', 'parser.y',
|
2887
|
+
module_eval(<<'.,.,', 'parser.y', 948)
|
2619
2888
|
def _reduce_170(val, _values, result)
|
2620
2889
|
result = Types::Bases::Class.new(location: val[0].location)
|
2621
2890
|
|
@@ -2623,7 +2892,7 @@ module_eval(<<'.,.,', 'parser.y', 706)
|
|
2623
2892
|
end
|
2624
2893
|
.,.,
|
2625
2894
|
|
2626
|
-
module_eval(<<'.,.,', 'parser.y',
|
2895
|
+
module_eval(<<'.,.,', 'parser.y', 951)
|
2627
2896
|
def _reduce_171(val, _values, result)
|
2628
2897
|
result = Types::Literal.new(literal: true, location: val[0].location)
|
2629
2898
|
|
@@ -2631,7 +2900,7 @@ module_eval(<<'.,.,', 'parser.y', 709)
|
|
2631
2900
|
end
|
2632
2901
|
.,.,
|
2633
2902
|
|
2634
|
-
module_eval(<<'.,.,', 'parser.y',
|
2903
|
+
module_eval(<<'.,.,', 'parser.y', 954)
|
2635
2904
|
def _reduce_172(val, _values, result)
|
2636
2905
|
result = Types::Literal.new(literal: false, location: val[0].location)
|
2637
2906
|
|
@@ -2639,7 +2908,7 @@ module_eval(<<'.,.,', 'parser.y', 712)
|
|
2639
2908
|
end
|
2640
2909
|
.,.,
|
2641
2910
|
|
2642
|
-
module_eval(<<'.,.,', 'parser.y',
|
2911
|
+
module_eval(<<'.,.,', 'parser.y', 957)
|
2643
2912
|
def _reduce_173(val, _values, result)
|
2644
2913
|
result = Types::Literal.new(literal: val[0].value, location: val[0].location)
|
2645
2914
|
|
@@ -2647,7 +2916,7 @@ module_eval(<<'.,.,', 'parser.y', 715)
|
|
2647
2916
|
end
|
2648
2917
|
.,.,
|
2649
2918
|
|
2650
|
-
module_eval(<<'.,.,', 'parser.y',
|
2919
|
+
module_eval(<<'.,.,', 'parser.y', 960)
|
2651
2920
|
def _reduce_174(val, _values, result)
|
2652
2921
|
result = Types::Literal.new(literal: val[0].value, location: val[0].location)
|
2653
2922
|
|
@@ -2655,7 +2924,7 @@ module_eval(<<'.,.,', 'parser.y', 718)
|
|
2655
2924
|
end
|
2656
2925
|
.,.,
|
2657
2926
|
|
2658
|
-
module_eval(<<'.,.,', 'parser.y',
|
2927
|
+
module_eval(<<'.,.,', 'parser.y', 963)
|
2659
2928
|
def _reduce_175(val, _values, result)
|
2660
2929
|
result = Types::Literal.new(literal: val[0].value, location: val[0].location)
|
2661
2930
|
|
@@ -2663,7 +2932,7 @@ module_eval(<<'.,.,', 'parser.y', 721)
|
|
2663
2932
|
end
|
2664
2933
|
.,.,
|
2665
2934
|
|
2666
|
-
module_eval(<<'.,.,', 'parser.y',
|
2935
|
+
module_eval(<<'.,.,', 'parser.y', 966)
|
2667
2936
|
def _reduce_176(val, _values, result)
|
2668
2937
|
name = val[0].value
|
2669
2938
|
args = []
|
@@ -2674,11 +2943,23 @@ module_eval(<<'.,.,', 'parser.y', 724)
|
|
2674
2943
|
if is_bound_variable?(name.name)
|
2675
2944
|
result = Types::Variable.new(name: name.name, location: location)
|
2676
2945
|
else
|
2946
|
+
location = location.with_children(
|
2947
|
+
required: { name: val[0].location },
|
2948
|
+
optional: { args: nil }
|
2949
|
+
)
|
2677
2950
|
result = Types::ClassInstance.new(name: name, args: args, location: location)
|
2678
2951
|
end
|
2679
2952
|
when name.alias?
|
2953
|
+
location = location.with_children(
|
2954
|
+
required: { name: val[0].location },
|
2955
|
+
optional: { args: nil }
|
2956
|
+
)
|
2680
2957
|
result = Types::Alias.new(name: name, location: location)
|
2681
2958
|
when name.interface?
|
2959
|
+
location = location.with_children(
|
2960
|
+
required: { name: val[0].location },
|
2961
|
+
optional: { args: nil }
|
2962
|
+
)
|
2682
2963
|
result = Types::Interface.new(name: name, args: args, location: location)
|
2683
2964
|
end
|
2684
2965
|
|
@@ -2686,7 +2967,7 @@ module_eval(<<'.,.,', 'parser.y', 724)
|
|
2686
2967
|
end
|
2687
2968
|
.,.,
|
2688
2969
|
|
2689
|
-
module_eval(<<'.,.,', 'parser.y',
|
2970
|
+
module_eval(<<'.,.,', 'parser.y', 996)
|
2690
2971
|
def _reduce_177(val, _values, result)
|
2691
2972
|
name = val[0].value
|
2692
2973
|
args = val[2]
|
@@ -2697,8 +2978,16 @@ module_eval(<<'.,.,', 'parser.y', 742)
|
|
2697
2978
|
if is_bound_variable?(name.name)
|
2698
2979
|
raise SemanticsError.new("#{name.name} is type variable and cannot be applied", subject: name, location: location)
|
2699
2980
|
end
|
2981
|
+
location = location.with_children(
|
2982
|
+
required: { name: val[0].location },
|
2983
|
+
optional: { args: val[1].location + val[3].location }
|
2984
|
+
)
|
2700
2985
|
result = Types::ClassInstance.new(name: name, args: args, location: location)
|
2701
2986
|
when name.interface?
|
2987
|
+
location = location.with_children(
|
2988
|
+
required: { name: val[0].location },
|
2989
|
+
optional: { args: val[1].location + val[3].location }
|
2990
|
+
)
|
2702
2991
|
result = Types::Interface.new(name: name, args: args, location: location)
|
2703
2992
|
else
|
2704
2993
|
raise SyntaxError.new(token_str: "kLBRACKET", error_value: val[1])
|
@@ -2708,7 +2997,7 @@ module_eval(<<'.,.,', 'parser.y', 742)
|
|
2708
2997
|
end
|
2709
2998
|
.,.,
|
2710
2999
|
|
2711
|
-
module_eval(<<'.,.,', 'parser.y',
|
3000
|
+
module_eval(<<'.,.,', 'parser.y', 1021)
|
2712
3001
|
def _reduce_178(val, _values, result)
|
2713
3002
|
location = val[0].location + val[1].location
|
2714
3003
|
result = Types::Tuple.new(types: [], location: location)
|
@@ -2717,7 +3006,7 @@ module_eval(<<'.,.,', 'parser.y', 759)
|
|
2717
3006
|
end
|
2718
3007
|
.,.,
|
2719
3008
|
|
2720
|
-
module_eval(<<'.,.,', 'parser.y',
|
3009
|
+
module_eval(<<'.,.,', 'parser.y', 1025)
|
2721
3010
|
def _reduce_179(val, _values, result)
|
2722
3011
|
location = val[0].location + val[3].location
|
2723
3012
|
types = val[1]
|
@@ -2727,7 +3016,7 @@ module_eval(<<'.,.,', 'parser.y', 763)
|
|
2727
3016
|
end
|
2728
3017
|
.,.,
|
2729
3018
|
|
2730
|
-
module_eval(<<'.,.,', 'parser.y',
|
3019
|
+
module_eval(<<'.,.,', 'parser.y', 1030)
|
2731
3020
|
def _reduce_180(val, _values, result)
|
2732
3021
|
type = val[1].dup
|
2733
3022
|
type.instance_eval do
|
@@ -2739,16 +3028,19 @@ module_eval(<<'.,.,', 'parser.y', 768)
|
|
2739
3028
|
end
|
2740
3029
|
.,.,
|
2741
3030
|
|
2742
|
-
module_eval(<<'.,.,', 'parser.y',
|
3031
|
+
module_eval(<<'.,.,', 'parser.y', 1037)
|
2743
3032
|
def _reduce_181(val, _values, result)
|
2744
|
-
|
2745
|
-
|
3033
|
+
location = val[0].location + val[3].location
|
3034
|
+
location = location.with_children(
|
3035
|
+
required: { name: val[2].location }
|
3036
|
+
)
|
3037
|
+
result = Types::ClassSingleton.new(name: val[2].value, location: location)
|
2746
3038
|
|
2747
3039
|
result
|
2748
3040
|
end
|
2749
3041
|
.,.,
|
2750
3042
|
|
2751
|
-
module_eval(<<'.,.,', 'parser.y',
|
3043
|
+
module_eval(<<'.,.,', 'parser.y', 1044)
|
2752
3044
|
def _reduce_182(val, _values, result)
|
2753
3045
|
type, block = val[1].value
|
2754
3046
|
result = Types::Proc.new(type: type, block: block, location: val[0].location + val[1].location)
|
@@ -2757,7 +3049,7 @@ module_eval(<<'.,.,', 'parser.y', 779)
|
|
2757
3049
|
end
|
2758
3050
|
.,.,
|
2759
3051
|
|
2760
|
-
module_eval(<<'.,.,', 'parser.y',
|
3052
|
+
module_eval(<<'.,.,', 'parser.y', 1048)
|
2761
3053
|
def _reduce_183(val, _values, result)
|
2762
3054
|
result = Types::Optional.new(type: val[0], location: val[0].location + val[1].location)
|
2763
3055
|
|
@@ -2767,7 +3059,7 @@ module_eval(<<'.,.,', 'parser.y', 783)
|
|
2767
3059
|
|
2768
3060
|
# reduce 184 omitted
|
2769
3061
|
|
2770
|
-
module_eval(<<'.,.,', 'parser.y',
|
3062
|
+
module_eval(<<'.,.,', 'parser.y', 1054)
|
2771
3063
|
def _reduce_185(val, _values, result)
|
2772
3064
|
result = [val[0]]
|
2773
3065
|
|
@@ -2775,7 +3067,7 @@ module_eval(<<'.,.,', 'parser.y', 789)
|
|
2775
3067
|
end
|
2776
3068
|
.,.,
|
2777
3069
|
|
2778
|
-
module_eval(<<'.,.,', 'parser.y',
|
3070
|
+
module_eval(<<'.,.,', 'parser.y', 1057)
|
2779
3071
|
def _reduce_186(val, _values, result)
|
2780
3072
|
result = val[0] + [val[2]]
|
2781
3073
|
|
@@ -2783,7 +3075,7 @@ module_eval(<<'.,.,', 'parser.y', 792)
|
|
2783
3075
|
end
|
2784
3076
|
.,.,
|
2785
3077
|
|
2786
|
-
module_eval(<<'.,.,', 'parser.y',
|
3078
|
+
module_eval(<<'.,.,', 'parser.y', 1062)
|
2787
3079
|
def _reduce_187(val, _values, result)
|
2788
3080
|
result = Types::Record.new(
|
2789
3081
|
fields: val[1],
|
@@ -2794,7 +3086,7 @@ module_eval(<<'.,.,', 'parser.y', 797)
|
|
2794
3086
|
end
|
2795
3087
|
.,.,
|
2796
3088
|
|
2797
|
-
module_eval(<<'.,.,', 'parser.y',
|
3089
|
+
module_eval(<<'.,.,', 'parser.y', 1070)
|
2798
3090
|
def _reduce_188(val, _values, result)
|
2799
3091
|
result = val[0]
|
2800
3092
|
|
@@ -2802,7 +3094,7 @@ module_eval(<<'.,.,', 'parser.y', 805)
|
|
2802
3094
|
end
|
2803
3095
|
.,.,
|
2804
3096
|
|
2805
|
-
module_eval(<<'.,.,', 'parser.y',
|
3097
|
+
module_eval(<<'.,.,', 'parser.y', 1073)
|
2806
3098
|
def _reduce_189(val, _values, result)
|
2807
3099
|
result = val[0].merge!(val[2])
|
2808
3100
|
|
@@ -2810,7 +3102,7 @@ module_eval(<<'.,.,', 'parser.y', 808)
|
|
2810
3102
|
end
|
2811
3103
|
.,.,
|
2812
3104
|
|
2813
|
-
module_eval(<<'.,.,', 'parser.y',
|
3105
|
+
module_eval(<<'.,.,', 'parser.y', 1078)
|
2814
3106
|
def _reduce_190(val, _values, result)
|
2815
3107
|
result = { val[0].value => val[2] }
|
2816
3108
|
|
@@ -2818,7 +3110,7 @@ module_eval(<<'.,.,', 'parser.y', 813)
|
|
2818
3110
|
end
|
2819
3111
|
.,.,
|
2820
3112
|
|
2821
|
-
module_eval(<<'.,.,', 'parser.y',
|
3113
|
+
module_eval(<<'.,.,', 'parser.y', 1081)
|
2822
3114
|
def _reduce_191(val, _values, result)
|
2823
3115
|
result = { val[0].value => val[2] }
|
2824
3116
|
|
@@ -2826,7 +3118,7 @@ module_eval(<<'.,.,', 'parser.y', 816)
|
|
2826
3118
|
end
|
2827
3119
|
.,.,
|
2828
3120
|
|
2829
|
-
module_eval(<<'.,.,', 'parser.y',
|
3121
|
+
module_eval(<<'.,.,', 'parser.y', 1084)
|
2830
3122
|
def _reduce_192(val, _values, result)
|
2831
3123
|
result = { val[0].value => val[2] }
|
2832
3124
|
|
@@ -2834,7 +3126,7 @@ module_eval(<<'.,.,', 'parser.y', 819)
|
|
2834
3126
|
end
|
2835
3127
|
.,.,
|
2836
3128
|
|
2837
|
-
module_eval(<<'.,.,', 'parser.y',
|
3129
|
+
module_eval(<<'.,.,', 'parser.y', 1087)
|
2838
3130
|
def _reduce_193(val, _values, result)
|
2839
3131
|
result = { val[0].value => val[1] }
|
2840
3132
|
|
@@ -2842,7 +3134,7 @@ module_eval(<<'.,.,', 'parser.y', 822)
|
|
2842
3134
|
end
|
2843
3135
|
.,.,
|
2844
3136
|
|
2845
|
-
module_eval(<<'.,.,', 'parser.y',
|
3137
|
+
module_eval(<<'.,.,', 'parser.y', 1090)
|
2846
3138
|
def _reduce_194(val, _values, result)
|
2847
3139
|
result = { val[0].value => val[2] }
|
2848
3140
|
|
@@ -2850,7 +3142,7 @@ module_eval(<<'.,.,', 'parser.y', 825)
|
|
2850
3142
|
end
|
2851
3143
|
.,.,
|
2852
3144
|
|
2853
|
-
module_eval(<<'.,.,', 'parser.y',
|
3145
|
+
module_eval(<<'.,.,', 'parser.y', 1093)
|
2854
3146
|
def _reduce_195(val, _values, result)
|
2855
3147
|
result = { val[0].value => val[2] }
|
2856
3148
|
|
@@ -2858,7 +3150,7 @@ module_eval(<<'.,.,', 'parser.y', 828)
|
|
2858
3150
|
end
|
2859
3151
|
.,.,
|
2860
3152
|
|
2861
|
-
module_eval(<<'.,.,', 'parser.y',
|
3153
|
+
module_eval(<<'.,.,', 'parser.y', 1096)
|
2862
3154
|
def _reduce_196(val, _values, result)
|
2863
3155
|
result = { val[0].value => val[2] }
|
2864
3156
|
|
@@ -2868,7 +3160,7 @@ module_eval(<<'.,.,', 'parser.y', 831)
|
|
2868
3160
|
|
2869
3161
|
# reduce 197 omitted
|
2870
3162
|
|
2871
|
-
module_eval(<<'.,.,', 'parser.y',
|
3163
|
+
module_eval(<<'.,.,', 'parser.y', 1102)
|
2872
3164
|
def _reduce_198(val, _values, result)
|
2873
3165
|
result = val[0]
|
2874
3166
|
|
@@ -2884,7 +3176,7 @@ module_eval(<<'.,.,', 'parser.y', 837)
|
|
2884
3176
|
|
2885
3177
|
# reduce 202 omitted
|
2886
3178
|
|
2887
|
-
module_eval(<<'.,.,', 'parser.y',
|
3179
|
+
module_eval(<<'.,.,', 'parser.y', 1109)
|
2888
3180
|
def _reduce_203(val, _values, result)
|
2889
3181
|
location = (val[0] || val[1] || val[2]).location + val[3].location
|
2890
3182
|
|
@@ -2909,7 +3201,7 @@ module_eval(<<'.,.,', 'parser.y', 844)
|
|
2909
3201
|
end
|
2910
3202
|
.,.,
|
2911
3203
|
|
2912
|
-
module_eval(<<'.,.,', 'parser.y',
|
3204
|
+
module_eval(<<'.,.,', 'parser.y', 1129)
|
2913
3205
|
def _reduce_204(val, _values, result)
|
2914
3206
|
result = LocatedValue.new(value: [val[0].value, nil], location: val[0].location)
|
2915
3207
|
|
@@ -2917,7 +3209,7 @@ module_eval(<<'.,.,', 'parser.y', 864)
|
|
2917
3209
|
end
|
2918
3210
|
.,.,
|
2919
3211
|
|
2920
|
-
module_eval(<<'.,.,', 'parser.y',
|
3212
|
+
module_eval(<<'.,.,', 'parser.y', 1134)
|
2921
3213
|
def _reduce_205(val, _values, result)
|
2922
3214
|
location = val[0].location + val[4].location
|
2923
3215
|
type = Types::Function.new(
|
@@ -2937,7 +3229,7 @@ module_eval(<<'.,.,', 'parser.y', 869)
|
|
2937
3229
|
end
|
2938
3230
|
.,.,
|
2939
3231
|
|
2940
|
-
module_eval(<<'.,.,', 'parser.y',
|
3232
|
+
module_eval(<<'.,.,', 'parser.y', 1149)
|
2941
3233
|
def _reduce_206(val, _values, result)
|
2942
3234
|
location = val[0].location + val[1].location
|
2943
3235
|
type = Types::Function.new(
|
@@ -2957,7 +3249,7 @@ module_eval(<<'.,.,', 'parser.y', 884)
|
|
2957
3249
|
end
|
2958
3250
|
.,.,
|
2959
3251
|
|
2960
|
-
module_eval(<<'.,.,', 'parser.y',
|
3252
|
+
module_eval(<<'.,.,', 'parser.y', 1166)
|
2961
3253
|
def _reduce_207(val, _values, result)
|
2962
3254
|
result = val[2]
|
2963
3255
|
result[0].unshift(val[0])
|
@@ -2966,7 +3258,7 @@ module_eval(<<'.,.,', 'parser.y', 901)
|
|
2966
3258
|
end
|
2967
3259
|
.,.,
|
2968
3260
|
|
2969
|
-
module_eval(<<'.,.,', 'parser.y',
|
3261
|
+
module_eval(<<'.,.,', 'parser.y', 1170)
|
2970
3262
|
def _reduce_208(val, _values, result)
|
2971
3263
|
result = empty_params_result
|
2972
3264
|
result[0].unshift(val[0])
|
@@ -2977,7 +3269,7 @@ module_eval(<<'.,.,', 'parser.y', 905)
|
|
2977
3269
|
|
2978
3270
|
# reduce 209 omitted
|
2979
3271
|
|
2980
|
-
module_eval(<<'.,.,', 'parser.y',
|
3272
|
+
module_eval(<<'.,.,', 'parser.y', 1177)
|
2981
3273
|
def _reduce_210(val, _values, result)
|
2982
3274
|
result = val[2]
|
2983
3275
|
result[1].unshift(val[0])
|
@@ -2986,7 +3278,7 @@ module_eval(<<'.,.,', 'parser.y', 912)
|
|
2986
3278
|
end
|
2987
3279
|
.,.,
|
2988
3280
|
|
2989
|
-
module_eval(<<'.,.,', 'parser.y',
|
3281
|
+
module_eval(<<'.,.,', 'parser.y', 1181)
|
2990
3282
|
def _reduce_211(val, _values, result)
|
2991
3283
|
result = empty_params_result
|
2992
3284
|
result[1].unshift(val[0])
|
@@ -2997,7 +3289,7 @@ module_eval(<<'.,.,', 'parser.y', 916)
|
|
2997
3289
|
|
2998
3290
|
# reduce 212 omitted
|
2999
3291
|
|
3000
|
-
module_eval(<<'.,.,', 'parser.y',
|
3292
|
+
module_eval(<<'.,.,', 'parser.y', 1188)
|
3001
3293
|
def _reduce_213(val, _values, result)
|
3002
3294
|
result = val[2]
|
3003
3295
|
result[2] = val[0]
|
@@ -3006,7 +3298,7 @@ module_eval(<<'.,.,', 'parser.y', 923)
|
|
3006
3298
|
end
|
3007
3299
|
.,.,
|
3008
3300
|
|
3009
|
-
module_eval(<<'.,.,', 'parser.y',
|
3301
|
+
module_eval(<<'.,.,', 'parser.y', 1192)
|
3010
3302
|
def _reduce_214(val, _values, result)
|
3011
3303
|
result = empty_params_result
|
3012
3304
|
result[2] = val[0]
|
@@ -3017,7 +3309,7 @@ module_eval(<<'.,.,', 'parser.y', 927)
|
|
3017
3309
|
|
3018
3310
|
# reduce 215 omitted
|
3019
3311
|
|
3020
|
-
module_eval(<<'.,.,', 'parser.y',
|
3312
|
+
module_eval(<<'.,.,', 'parser.y', 1199)
|
3021
3313
|
def _reduce_216(val, _values, result)
|
3022
3314
|
result = val[2]
|
3023
3315
|
result[3].unshift(val[0])
|
@@ -3026,7 +3318,7 @@ module_eval(<<'.,.,', 'parser.y', 934)
|
|
3026
3318
|
end
|
3027
3319
|
.,.,
|
3028
3320
|
|
3029
|
-
module_eval(<<'.,.,', 'parser.y',
|
3321
|
+
module_eval(<<'.,.,', 'parser.y', 1203)
|
3030
3322
|
def _reduce_217(val, _values, result)
|
3031
3323
|
result = empty_params_result
|
3032
3324
|
result[3].unshift(val[0])
|
@@ -3037,7 +3329,7 @@ module_eval(<<'.,.,', 'parser.y', 938)
|
|
3037
3329
|
|
3038
3330
|
# reduce 218 omitted
|
3039
3331
|
|
3040
|
-
module_eval(<<'.,.,', 'parser.y',
|
3332
|
+
module_eval(<<'.,.,', 'parser.y', 1210)
|
3041
3333
|
def _reduce_219(val, _values, result)
|
3042
3334
|
result = empty_params_result
|
3043
3335
|
|
@@ -3045,7 +3337,7 @@ module_eval(<<'.,.,', 'parser.y', 945)
|
|
3045
3337
|
end
|
3046
3338
|
.,.,
|
3047
3339
|
|
3048
|
-
module_eval(<<'.,.,', 'parser.y',
|
3340
|
+
module_eval(<<'.,.,', 'parser.y', 1213)
|
3049
3341
|
def _reduce_220(val, _values, result)
|
3050
3342
|
result = val[2]
|
3051
3343
|
result[4].merge!(val[0])
|
@@ -3054,7 +3346,7 @@ module_eval(<<'.,.,', 'parser.y', 948)
|
|
3054
3346
|
end
|
3055
3347
|
.,.,
|
3056
3348
|
|
3057
|
-
module_eval(<<'.,.,', 'parser.y',
|
3349
|
+
module_eval(<<'.,.,', 'parser.y', 1217)
|
3058
3350
|
def _reduce_221(val, _values, result)
|
3059
3351
|
result = empty_params_result
|
3060
3352
|
result[4].merge!(val[0])
|
@@ -3063,7 +3355,7 @@ module_eval(<<'.,.,', 'parser.y', 952)
|
|
3063
3355
|
end
|
3064
3356
|
.,.,
|
3065
3357
|
|
3066
|
-
module_eval(<<'.,.,', 'parser.y',
|
3358
|
+
module_eval(<<'.,.,', 'parser.y', 1221)
|
3067
3359
|
def _reduce_222(val, _values, result)
|
3068
3360
|
result = val[2]
|
3069
3361
|
result[5].merge!(val[0])
|
@@ -3072,7 +3364,7 @@ module_eval(<<'.,.,', 'parser.y', 956)
|
|
3072
3364
|
end
|
3073
3365
|
.,.,
|
3074
3366
|
|
3075
|
-
module_eval(<<'.,.,', 'parser.y',
|
3367
|
+
module_eval(<<'.,.,', 'parser.y', 1225)
|
3076
3368
|
def _reduce_223(val, _values, result)
|
3077
3369
|
result = empty_params_result
|
3078
3370
|
result[5].merge!(val[0])
|
@@ -3081,7 +3373,7 @@ module_eval(<<'.,.,', 'parser.y', 960)
|
|
3081
3373
|
end
|
3082
3374
|
.,.,
|
3083
3375
|
|
3084
|
-
module_eval(<<'.,.,', 'parser.y',
|
3376
|
+
module_eval(<<'.,.,', 'parser.y', 1229)
|
3085
3377
|
def _reduce_224(val, _values, result)
|
3086
3378
|
result = empty_params_result
|
3087
3379
|
result[6] = val[0]
|
@@ -3090,57 +3382,114 @@ module_eval(<<'.,.,', 'parser.y', 964)
|
|
3090
3382
|
end
|
3091
3383
|
.,.,
|
3092
3384
|
|
3093
|
-
module_eval(<<'.,.,', 'parser.y',
|
3385
|
+
module_eval(<<'.,.,', 'parser.y', 1235)
|
3094
3386
|
def _reduce_225(val, _values, result)
|
3095
|
-
|
3096
|
-
|
3387
|
+
loc = val[0].location
|
3388
|
+
if var_name = val[1]
|
3389
|
+
loc = loc + var_name.location
|
3390
|
+
end
|
3391
|
+
loc = loc.with_children(optional: { name: var_name&.location })
|
3392
|
+
|
3393
|
+
result = Types::Function::Param.new(
|
3394
|
+
type: val[0],
|
3395
|
+
name: var_name&.value&.to_sym,
|
3396
|
+
location: loc
|
3397
|
+
)
|
3097
3398
|
|
3098
3399
|
result
|
3099
3400
|
end
|
3100
3401
|
.,.,
|
3101
3402
|
|
3102
|
-
module_eval(<<'.,.,', 'parser.y',
|
3403
|
+
module_eval(<<'.,.,', 'parser.y', 1250)
|
3103
3404
|
def _reduce_226(val, _values, result)
|
3104
|
-
|
3105
|
-
|
3405
|
+
loc = val[0].location + val[1].location
|
3406
|
+
if var_name = val[2]
|
3407
|
+
loc = loc + var_name.location
|
3408
|
+
end
|
3409
|
+
loc = loc.with_children(optional: { name: var_name&.location })
|
3410
|
+
|
3411
|
+
result = Types::Function::Param.new(
|
3412
|
+
type: val[1],
|
3413
|
+
name: val[2]&.value&.to_sym,
|
3414
|
+
location: loc
|
3415
|
+
)
|
3106
3416
|
|
3107
3417
|
result
|
3108
3418
|
end
|
3109
3419
|
.,.,
|
3110
3420
|
|
3111
|
-
module_eval(<<'.,.,', 'parser.y',
|
3421
|
+
module_eval(<<'.,.,', 'parser.y', 1265)
|
3112
3422
|
def _reduce_227(val, _values, result)
|
3113
|
-
|
3114
|
-
|
3423
|
+
loc = val[0].location + val[1].location
|
3424
|
+
if var_name = val[2]
|
3425
|
+
loc = loc + var_name.location
|
3426
|
+
end
|
3427
|
+
loc = loc.with_children(optional: { name: var_name&.location })
|
3428
|
+
|
3429
|
+
result = Types::Function::Param.new(
|
3430
|
+
type: val[1],
|
3431
|
+
name: val[2]&.value&.to_sym,
|
3432
|
+
location: loc
|
3433
|
+
)
|
3115
3434
|
|
3116
3435
|
result
|
3117
3436
|
end
|
3118
3437
|
.,.,
|
3119
3438
|
|
3120
|
-
module_eval(<<'.,.,', 'parser.y',
|
3439
|
+
module_eval(<<'.,.,', 'parser.y', 1280)
|
3121
3440
|
def _reduce_228(val, _values, result)
|
3122
|
-
|
3123
|
-
|
3441
|
+
loc = val[0].location + val[1].location
|
3442
|
+
if var_name = val[2]
|
3443
|
+
loc = loc + var_name.location
|
3444
|
+
end
|
3445
|
+
|
3446
|
+
loc = loc.with_children(optional: { name: var_name&.location })
|
3447
|
+
|
3448
|
+
param = Types::Function::Param.new(
|
3449
|
+
type: val[1],
|
3450
|
+
name: val[2]&.value&.to_sym,
|
3451
|
+
location: loc
|
3452
|
+
)
|
3124
3453
|
result = { val[0].value => param }
|
3125
3454
|
|
3126
3455
|
result
|
3127
3456
|
end
|
3128
3457
|
.,.,
|
3129
3458
|
|
3130
|
-
module_eval(<<'.,.,', 'parser.y',
|
3459
|
+
module_eval(<<'.,.,', 'parser.y', 1297)
|
3131
3460
|
def _reduce_229(val, _values, result)
|
3132
|
-
|
3133
|
-
|
3461
|
+
loc = val[0].location + val[2].location
|
3462
|
+
if var_name = val[3]
|
3463
|
+
loc = loc + var_name.location
|
3464
|
+
end
|
3465
|
+
|
3466
|
+
loc = loc.with_children(optional: { name: var_name&.location })
|
3467
|
+
|
3468
|
+
param = Types::Function::Param.new(
|
3469
|
+
type: val[2],
|
3470
|
+
name: val[3]&.value&.to_sym,
|
3471
|
+
location: loc
|
3472
|
+
)
|
3134
3473
|
result = { val[1].value => param }
|
3135
3474
|
|
3136
3475
|
result
|
3137
3476
|
end
|
3138
3477
|
.,.,
|
3139
3478
|
|
3140
|
-
module_eval(<<'.,.,', 'parser.y',
|
3479
|
+
module_eval(<<'.,.,', 'parser.y', 1314)
|
3141
3480
|
def _reduce_230(val, _values, result)
|
3142
|
-
|
3143
|
-
|
3481
|
+
loc = val[0].location + val[1].location
|
3482
|
+
if var_name = val[2]
|
3483
|
+
loc = loc + var_name.location
|
3484
|
+
end
|
3485
|
+
|
3486
|
+
loc = loc.with_children(optional: { name: var_name&.location })
|
3487
|
+
|
3488
|
+
result = Types::Function::Param.new(
|
3489
|
+
type: val[1],
|
3490
|
+
name: val[2]&.value&.to_sym,
|
3491
|
+
location: loc
|
3492
|
+
)
|
3144
3493
|
|
3145
3494
|
result
|
3146
3495
|
end
|
@@ -3154,8 +3503,12 @@ module_eval(<<'.,.,', 'parser.y', 1002)
|
|
3154
3503
|
|
3155
3504
|
# reduce 234 omitted
|
3156
3505
|
|
3157
|
-
|
3158
|
-
|
3506
|
+
# reduce 235 omitted
|
3507
|
+
|
3508
|
+
# reduce 236 omitted
|
3509
|
+
|
3510
|
+
module_eval(<<'.,.,', 'parser.y', 1333)
|
3511
|
+
def _reduce_237(val, _values, result)
|
3159
3512
|
namespace = val[0]&.value || Namespace.empty
|
3160
3513
|
name = val[1].value.to_sym
|
3161
3514
|
type_name = TypeName.new(namespace: namespace, name: name)
|
@@ -3166,14 +3519,14 @@ module_eval(<<'.,.,', 'parser.y', 1011)
|
|
3166
3519
|
end
|
3167
3520
|
.,.,
|
3168
3521
|
|
3169
|
-
# reduce
|
3522
|
+
# reduce 238 omitted
|
3170
3523
|
|
3171
|
-
# reduce
|
3524
|
+
# reduce 239 omitted
|
3172
3525
|
|
3173
|
-
# reduce
|
3526
|
+
# reduce 240 omitted
|
3174
3527
|
|
3175
|
-
module_eval(<<'.,.,', 'parser.y',
|
3176
|
-
def
|
3528
|
+
module_eval(<<'.,.,', 'parser.y', 1345)
|
3529
|
+
def _reduce_241(val, _values, result)
|
3177
3530
|
namespace = val[0]&.value || Namespace.empty
|
3178
3531
|
name = val[1].value.to_sym
|
3179
3532
|
type_name = TypeName.new(namespace: namespace, name: name)
|
@@ -3184,8 +3537,8 @@ module_eval(<<'.,.,', 'parser.y', 1023)
|
|
3184
3537
|
end
|
3185
3538
|
.,.,
|
3186
3539
|
|
3187
|
-
module_eval(<<'.,.,', 'parser.y',
|
3188
|
-
def
|
3540
|
+
module_eval(<<'.,.,', 'parser.y', 1354)
|
3541
|
+
def _reduce_242(val, _values, result)
|
3189
3542
|
namespace = val[0]&.value || Namespace.empty
|
3190
3543
|
name = val[1].value.to_sym
|
3191
3544
|
type_name = TypeName.new(namespace: namespace, name: name)
|
@@ -3196,8 +3549,8 @@ module_eval(<<'.,.,', 'parser.y', 1032)
|
|
3196
3549
|
end
|
3197
3550
|
.,.,
|
3198
3551
|
|
3199
|
-
module_eval(<<'.,.,', 'parser.y',
|
3200
|
-
def
|
3552
|
+
module_eval(<<'.,.,', 'parser.y', 1363)
|
3553
|
+
def _reduce_243(val, _values, result)
|
3201
3554
|
namespace = val[0]&.value || Namespace.empty
|
3202
3555
|
name = val[1].value.to_sym
|
3203
3556
|
type_name = TypeName.new(namespace: namespace, name: name)
|
@@ -3208,24 +3561,24 @@ module_eval(<<'.,.,', 'parser.y', 1041)
|
|
3208
3561
|
end
|
3209
3562
|
.,.,
|
3210
3563
|
|
3211
|
-
module_eval(<<'.,.,', 'parser.y',
|
3212
|
-
def
|
3564
|
+
module_eval(<<'.,.,', 'parser.y', 1373)
|
3565
|
+
def _reduce_244(val, _values, result)
|
3213
3566
|
result = nil
|
3214
3567
|
|
3215
3568
|
result
|
3216
3569
|
end
|
3217
3570
|
.,.,
|
3218
3571
|
|
3219
|
-
module_eval(<<'.,.,', 'parser.y',
|
3220
|
-
def
|
3572
|
+
module_eval(<<'.,.,', 'parser.y', 1376)
|
3573
|
+
def _reduce_245(val, _values, result)
|
3221
3574
|
result = LocatedValue.new(value: Namespace.root, location: val[0].location)
|
3222
3575
|
|
3223
3576
|
result
|
3224
3577
|
end
|
3225
3578
|
.,.,
|
3226
3579
|
|
3227
|
-
module_eval(<<'.,.,', 'parser.y',
|
3228
|
-
def
|
3580
|
+
module_eval(<<'.,.,', 'parser.y', 1379)
|
3581
|
+
def _reduce_246(val, _values, result)
|
3229
3582
|
namespace = Namespace.parse(val[1].value).absolute!
|
3230
3583
|
result = LocatedValue.new(value: namespace, location: val[0].location + val[1].location)
|
3231
3584
|
|
@@ -3233,8 +3586,8 @@ module_eval(<<'.,.,', 'parser.y', 1057)
|
|
3233
3586
|
end
|
3234
3587
|
.,.,
|
3235
3588
|
|
3236
|
-
module_eval(<<'.,.,', 'parser.y',
|
3237
|
-
def
|
3589
|
+
module_eval(<<'.,.,', 'parser.y', 1383)
|
3590
|
+
def _reduce_247(val, _values, result)
|
3238
3591
|
namespace = Namespace.parse(val[0].value)
|
3239
3592
|
result = LocatedValue.new(value: namespace, location: val[0].location)
|
3240
3593
|
|
@@ -3242,9 +3595,9 @@ module_eval(<<'.,.,', 'parser.y', 1061)
|
|
3242
3595
|
end
|
3243
3596
|
.,.,
|
3244
3597
|
|
3245
|
-
# reduce
|
3598
|
+
# reduce 248 omitted
|
3246
3599
|
|
3247
|
-
# reduce
|
3600
|
+
# reduce 249 omitted
|
3248
3601
|
|
3249
3602
|
def _reduce_none(val, _values, result)
|
3250
3603
|
val[0]
|