@ast-grep/napi 0.32.0 → 0.32.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lang/Ruby.d.ts ADDED
@@ -0,0 +1,3492 @@
1
+ // Auto-generated from tree-sitter Ruby v0.23.0
2
+ type RubyTypes = {
3
+ "_arg": {
4
+ "type": "_arg",
5
+ "named": true,
6
+ "subtypes": [
7
+ {
8
+ "type": "_primary",
9
+ "named": true
10
+ },
11
+ {
12
+ "type": "assignment",
13
+ "named": true
14
+ },
15
+ {
16
+ "type": "binary",
17
+ "named": true
18
+ },
19
+ {
20
+ "type": "conditional",
21
+ "named": true
22
+ },
23
+ {
24
+ "type": "operator_assignment",
25
+ "named": true
26
+ },
27
+ {
28
+ "type": "range",
29
+ "named": true
30
+ },
31
+ {
32
+ "type": "unary",
33
+ "named": true
34
+ }
35
+ ]
36
+ },
37
+ "_call_operator": {
38
+ "type": "_call_operator",
39
+ "named": true,
40
+ "subtypes": []
41
+ },
42
+ "_expression": {
43
+ "type": "_expression",
44
+ "named": true,
45
+ "subtypes": [
46
+ {
47
+ "type": "_arg",
48
+ "named": true
49
+ },
50
+ {
51
+ "type": "assignment",
52
+ "named": true
53
+ },
54
+ {
55
+ "type": "binary",
56
+ "named": true
57
+ },
58
+ {
59
+ "type": "break",
60
+ "named": true
61
+ },
62
+ {
63
+ "type": "call",
64
+ "named": true
65
+ },
66
+ {
67
+ "type": "match_pattern",
68
+ "named": true
69
+ },
70
+ {
71
+ "type": "next",
72
+ "named": true
73
+ },
74
+ {
75
+ "type": "operator_assignment",
76
+ "named": true
77
+ },
78
+ {
79
+ "type": "return",
80
+ "named": true
81
+ },
82
+ {
83
+ "type": "test_pattern",
84
+ "named": true
85
+ },
86
+ {
87
+ "type": "unary",
88
+ "named": true
89
+ },
90
+ {
91
+ "type": "yield",
92
+ "named": true
93
+ }
94
+ ]
95
+ },
96
+ "_lhs": {
97
+ "type": "_lhs",
98
+ "named": true,
99
+ "subtypes": [
100
+ {
101
+ "type": "_variable",
102
+ "named": true
103
+ },
104
+ {
105
+ "type": "call",
106
+ "named": true
107
+ },
108
+ {
109
+ "type": "element_reference",
110
+ "named": true
111
+ },
112
+ {
113
+ "type": "false",
114
+ "named": true
115
+ },
116
+ {
117
+ "type": "nil",
118
+ "named": true
119
+ },
120
+ {
121
+ "type": "scope_resolution",
122
+ "named": true
123
+ },
124
+ {
125
+ "type": "true",
126
+ "named": true
127
+ }
128
+ ]
129
+ },
130
+ "_method_name": {
131
+ "type": "_method_name",
132
+ "named": true,
133
+ "subtypes": [
134
+ {
135
+ "type": "_nonlocal_variable",
136
+ "named": true
137
+ },
138
+ {
139
+ "type": "constant",
140
+ "named": true
141
+ },
142
+ {
143
+ "type": "delimited_symbol",
144
+ "named": true
145
+ },
146
+ {
147
+ "type": "identifier",
148
+ "named": true
149
+ },
150
+ {
151
+ "type": "operator",
152
+ "named": true
153
+ },
154
+ {
155
+ "type": "setter",
156
+ "named": true
157
+ },
158
+ {
159
+ "type": "simple_symbol",
160
+ "named": true
161
+ }
162
+ ]
163
+ },
164
+ "_nonlocal_variable": {
165
+ "type": "_nonlocal_variable",
166
+ "named": true,
167
+ "subtypes": [
168
+ {
169
+ "type": "class_variable",
170
+ "named": true
171
+ },
172
+ {
173
+ "type": "global_variable",
174
+ "named": true
175
+ },
176
+ {
177
+ "type": "instance_variable",
178
+ "named": true
179
+ }
180
+ ]
181
+ },
182
+ "_pattern_constant": {
183
+ "type": "_pattern_constant",
184
+ "named": true,
185
+ "subtypes": [
186
+ {
187
+ "type": "constant",
188
+ "named": true
189
+ },
190
+ {
191
+ "type": "scope_resolution",
192
+ "named": true
193
+ }
194
+ ]
195
+ },
196
+ "_pattern_expr": {
197
+ "type": "_pattern_expr",
198
+ "named": true,
199
+ "subtypes": [
200
+ {
201
+ "type": "_pattern_expr_basic",
202
+ "named": true
203
+ },
204
+ {
205
+ "type": "alternative_pattern",
206
+ "named": true
207
+ },
208
+ {
209
+ "type": "as_pattern",
210
+ "named": true
211
+ }
212
+ ]
213
+ },
214
+ "_pattern_expr_basic": {
215
+ "type": "_pattern_expr_basic",
216
+ "named": true,
217
+ "subtypes": [
218
+ {
219
+ "type": "_pattern_constant",
220
+ "named": true
221
+ },
222
+ {
223
+ "type": "_pattern_primitive",
224
+ "named": true
225
+ },
226
+ {
227
+ "type": "array_pattern",
228
+ "named": true
229
+ },
230
+ {
231
+ "type": "expression_reference_pattern",
232
+ "named": true
233
+ },
234
+ {
235
+ "type": "find_pattern",
236
+ "named": true
237
+ },
238
+ {
239
+ "type": "hash_pattern",
240
+ "named": true
241
+ },
242
+ {
243
+ "type": "identifier",
244
+ "named": true
245
+ },
246
+ {
247
+ "type": "parenthesized_pattern",
248
+ "named": true
249
+ },
250
+ {
251
+ "type": "range",
252
+ "named": true
253
+ },
254
+ {
255
+ "type": "variable_reference_pattern",
256
+ "named": true
257
+ }
258
+ ]
259
+ },
260
+ "_pattern_primitive": {
261
+ "type": "_pattern_primitive",
262
+ "named": true,
263
+ "subtypes": [
264
+ {
265
+ "type": "_simple_numeric",
266
+ "named": true
267
+ },
268
+ {
269
+ "type": "delimited_symbol",
270
+ "named": true
271
+ },
272
+ {
273
+ "type": "encoding",
274
+ "named": true
275
+ },
276
+ {
277
+ "type": "false",
278
+ "named": true
279
+ },
280
+ {
281
+ "type": "file",
282
+ "named": true
283
+ },
284
+ {
285
+ "type": "heredoc_beginning",
286
+ "named": true
287
+ },
288
+ {
289
+ "type": "lambda",
290
+ "named": true
291
+ },
292
+ {
293
+ "type": "line",
294
+ "named": true
295
+ },
296
+ {
297
+ "type": "nil",
298
+ "named": true
299
+ },
300
+ {
301
+ "type": "regex",
302
+ "named": true
303
+ },
304
+ {
305
+ "type": "self",
306
+ "named": true
307
+ },
308
+ {
309
+ "type": "simple_symbol",
310
+ "named": true
311
+ },
312
+ {
313
+ "type": "string",
314
+ "named": true
315
+ },
316
+ {
317
+ "type": "string_array",
318
+ "named": true
319
+ },
320
+ {
321
+ "type": "subshell",
322
+ "named": true
323
+ },
324
+ {
325
+ "type": "symbol_array",
326
+ "named": true
327
+ },
328
+ {
329
+ "type": "true",
330
+ "named": true
331
+ },
332
+ {
333
+ "type": "unary",
334
+ "named": true
335
+ }
336
+ ]
337
+ },
338
+ "_pattern_top_expr_body": {
339
+ "type": "_pattern_top_expr_body",
340
+ "named": true,
341
+ "subtypes": [
342
+ {
343
+ "type": "_pattern_expr",
344
+ "named": true
345
+ },
346
+ {
347
+ "type": "array_pattern",
348
+ "named": true
349
+ },
350
+ {
351
+ "type": "find_pattern",
352
+ "named": true
353
+ },
354
+ {
355
+ "type": "hash_pattern",
356
+ "named": true
357
+ }
358
+ ]
359
+ },
360
+ "_primary": {
361
+ "type": "_primary",
362
+ "named": true,
363
+ "subtypes": [
364
+ {
365
+ "type": "_lhs",
366
+ "named": true
367
+ },
368
+ {
369
+ "type": "_simple_numeric",
370
+ "named": true
371
+ },
372
+ {
373
+ "type": "array",
374
+ "named": true
375
+ },
376
+ {
377
+ "type": "begin",
378
+ "named": true
379
+ },
380
+ {
381
+ "type": "break",
382
+ "named": true
383
+ },
384
+ {
385
+ "type": "call",
386
+ "named": true
387
+ },
388
+ {
389
+ "type": "case",
390
+ "named": true
391
+ },
392
+ {
393
+ "type": "case_match",
394
+ "named": true
395
+ },
396
+ {
397
+ "type": "chained_string",
398
+ "named": true
399
+ },
400
+ {
401
+ "type": "character",
402
+ "named": true
403
+ },
404
+ {
405
+ "type": "class",
406
+ "named": true
407
+ },
408
+ {
409
+ "type": "delimited_symbol",
410
+ "named": true
411
+ },
412
+ {
413
+ "type": "for",
414
+ "named": true
415
+ },
416
+ {
417
+ "type": "hash",
418
+ "named": true
419
+ },
420
+ {
421
+ "type": "heredoc_beginning",
422
+ "named": true
423
+ },
424
+ {
425
+ "type": "if",
426
+ "named": true
427
+ },
428
+ {
429
+ "type": "lambda",
430
+ "named": true
431
+ },
432
+ {
433
+ "type": "method",
434
+ "named": true
435
+ },
436
+ {
437
+ "type": "module",
438
+ "named": true
439
+ },
440
+ {
441
+ "type": "next",
442
+ "named": true
443
+ },
444
+ {
445
+ "type": "parenthesized_statements",
446
+ "named": true
447
+ },
448
+ {
449
+ "type": "redo",
450
+ "named": true
451
+ },
452
+ {
453
+ "type": "regex",
454
+ "named": true
455
+ },
456
+ {
457
+ "type": "retry",
458
+ "named": true
459
+ },
460
+ {
461
+ "type": "return",
462
+ "named": true
463
+ },
464
+ {
465
+ "type": "simple_symbol",
466
+ "named": true
467
+ },
468
+ {
469
+ "type": "singleton_class",
470
+ "named": true
471
+ },
472
+ {
473
+ "type": "singleton_method",
474
+ "named": true
475
+ },
476
+ {
477
+ "type": "string",
478
+ "named": true
479
+ },
480
+ {
481
+ "type": "string_array",
482
+ "named": true
483
+ },
484
+ {
485
+ "type": "subshell",
486
+ "named": true
487
+ },
488
+ {
489
+ "type": "symbol_array",
490
+ "named": true
491
+ },
492
+ {
493
+ "type": "unary",
494
+ "named": true
495
+ },
496
+ {
497
+ "type": "unless",
498
+ "named": true
499
+ },
500
+ {
501
+ "type": "until",
502
+ "named": true
503
+ },
504
+ {
505
+ "type": "while",
506
+ "named": true
507
+ },
508
+ {
509
+ "type": "yield",
510
+ "named": true
511
+ }
512
+ ]
513
+ },
514
+ "_simple_numeric": {
515
+ "type": "_simple_numeric",
516
+ "named": true,
517
+ "subtypes": [
518
+ {
519
+ "type": "complex",
520
+ "named": true
521
+ },
522
+ {
523
+ "type": "float",
524
+ "named": true
525
+ },
526
+ {
527
+ "type": "integer",
528
+ "named": true
529
+ },
530
+ {
531
+ "type": "rational",
532
+ "named": true
533
+ }
534
+ ]
535
+ },
536
+ "_statement": {
537
+ "type": "_statement",
538
+ "named": true,
539
+ "subtypes": [
540
+ {
541
+ "type": "_expression",
542
+ "named": true
543
+ },
544
+ {
545
+ "type": "alias",
546
+ "named": true
547
+ },
548
+ {
549
+ "type": "begin_block",
550
+ "named": true
551
+ },
552
+ {
553
+ "type": "end_block",
554
+ "named": true
555
+ },
556
+ {
557
+ "type": "if_modifier",
558
+ "named": true
559
+ },
560
+ {
561
+ "type": "rescue_modifier",
562
+ "named": true
563
+ },
564
+ {
565
+ "type": "undef",
566
+ "named": true
567
+ },
568
+ {
569
+ "type": "unless_modifier",
570
+ "named": true
571
+ },
572
+ {
573
+ "type": "until_modifier",
574
+ "named": true
575
+ },
576
+ {
577
+ "type": "while_modifier",
578
+ "named": true
579
+ }
580
+ ]
581
+ },
582
+ "_variable": {
583
+ "type": "_variable",
584
+ "named": true,
585
+ "subtypes": [
586
+ {
587
+ "type": "_nonlocal_variable",
588
+ "named": true
589
+ },
590
+ {
591
+ "type": "constant",
592
+ "named": true
593
+ },
594
+ {
595
+ "type": "identifier",
596
+ "named": true
597
+ },
598
+ {
599
+ "type": "self",
600
+ "named": true
601
+ },
602
+ {
603
+ "type": "super",
604
+ "named": true
605
+ }
606
+ ]
607
+ },
608
+ "alias": {
609
+ "type": "alias",
610
+ "named": true,
611
+ "fields": {
612
+ "alias": {
613
+ "multiple": false,
614
+ "required": true,
615
+ "types": [
616
+ {
617
+ "type": "_method_name",
618
+ "named": true
619
+ }
620
+ ]
621
+ },
622
+ "name": {
623
+ "multiple": false,
624
+ "required": true,
625
+ "types": [
626
+ {
627
+ "type": "_method_name",
628
+ "named": true
629
+ }
630
+ ]
631
+ }
632
+ }
633
+ },
634
+ "alternative_pattern": {
635
+ "type": "alternative_pattern",
636
+ "named": true,
637
+ "fields": {
638
+ "alternatives": {
639
+ "multiple": true,
640
+ "required": true,
641
+ "types": [
642
+ {
643
+ "type": "_pattern_expr_basic",
644
+ "named": true
645
+ }
646
+ ]
647
+ }
648
+ }
649
+ },
650
+ "argument_list": {
651
+ "type": "argument_list",
652
+ "named": true,
653
+ "fields": {},
654
+ "children": {
655
+ "multiple": true,
656
+ "required": false,
657
+ "types": [
658
+ {
659
+ "type": "_expression",
660
+ "named": true
661
+ },
662
+ {
663
+ "type": "block_argument",
664
+ "named": true
665
+ },
666
+ {
667
+ "type": "forward_argument",
668
+ "named": true
669
+ },
670
+ {
671
+ "type": "hash_splat_argument",
672
+ "named": true
673
+ },
674
+ {
675
+ "type": "pair",
676
+ "named": true
677
+ },
678
+ {
679
+ "type": "splat_argument",
680
+ "named": true
681
+ }
682
+ ]
683
+ }
684
+ },
685
+ "array": {
686
+ "type": "array",
687
+ "named": true,
688
+ "fields": {},
689
+ "children": {
690
+ "multiple": true,
691
+ "required": false,
692
+ "types": [
693
+ {
694
+ "type": "_expression",
695
+ "named": true
696
+ },
697
+ {
698
+ "type": "block_argument",
699
+ "named": true
700
+ },
701
+ {
702
+ "type": "forward_argument",
703
+ "named": true
704
+ },
705
+ {
706
+ "type": "hash_splat_argument",
707
+ "named": true
708
+ },
709
+ {
710
+ "type": "pair",
711
+ "named": true
712
+ },
713
+ {
714
+ "type": "splat_argument",
715
+ "named": true
716
+ }
717
+ ]
718
+ }
719
+ },
720
+ "array_pattern": {
721
+ "type": "array_pattern",
722
+ "named": true,
723
+ "fields": {
724
+ "class": {
725
+ "multiple": false,
726
+ "required": false,
727
+ "types": [
728
+ {
729
+ "type": "_pattern_constant",
730
+ "named": true
731
+ }
732
+ ]
733
+ }
734
+ },
735
+ "children": {
736
+ "multiple": true,
737
+ "required": false,
738
+ "types": [
739
+ {
740
+ "type": "_pattern_expr",
741
+ "named": true
742
+ },
743
+ {
744
+ "type": "splat_parameter",
745
+ "named": true
746
+ }
747
+ ]
748
+ }
749
+ },
750
+ "as_pattern": {
751
+ "type": "as_pattern",
752
+ "named": true,
753
+ "fields": {
754
+ "name": {
755
+ "multiple": false,
756
+ "required": true,
757
+ "types": [
758
+ {
759
+ "type": "identifier",
760
+ "named": true
761
+ }
762
+ ]
763
+ },
764
+ "value": {
765
+ "multiple": false,
766
+ "required": true,
767
+ "types": [
768
+ {
769
+ "type": "_pattern_expr",
770
+ "named": true
771
+ }
772
+ ]
773
+ }
774
+ }
775
+ },
776
+ "assignment": {
777
+ "type": "assignment",
778
+ "named": true,
779
+ "fields": {
780
+ "left": {
781
+ "multiple": false,
782
+ "required": true,
783
+ "types": [
784
+ {
785
+ "type": "_lhs",
786
+ "named": true
787
+ },
788
+ {
789
+ "type": "left_assignment_list",
790
+ "named": true
791
+ }
792
+ ]
793
+ },
794
+ "right": {
795
+ "multiple": false,
796
+ "required": true,
797
+ "types": [
798
+ {
799
+ "type": "_expression",
800
+ "named": true
801
+ },
802
+ {
803
+ "type": "rescue_modifier",
804
+ "named": true
805
+ },
806
+ {
807
+ "type": "right_assignment_list",
808
+ "named": true
809
+ },
810
+ {
811
+ "type": "splat_argument",
812
+ "named": true
813
+ }
814
+ ]
815
+ }
816
+ }
817
+ },
818
+ "bare_string": {
819
+ "type": "bare_string",
820
+ "named": true,
821
+ "fields": {},
822
+ "children": {
823
+ "multiple": true,
824
+ "required": true,
825
+ "types": [
826
+ {
827
+ "type": "escape_sequence",
828
+ "named": true
829
+ },
830
+ {
831
+ "type": "interpolation",
832
+ "named": true
833
+ },
834
+ {
835
+ "type": "string_content",
836
+ "named": true
837
+ }
838
+ ]
839
+ }
840
+ },
841
+ "bare_symbol": {
842
+ "type": "bare_symbol",
843
+ "named": true,
844
+ "fields": {},
845
+ "children": {
846
+ "multiple": true,
847
+ "required": true,
848
+ "types": [
849
+ {
850
+ "type": "escape_sequence",
851
+ "named": true
852
+ },
853
+ {
854
+ "type": "interpolation",
855
+ "named": true
856
+ },
857
+ {
858
+ "type": "string_content",
859
+ "named": true
860
+ }
861
+ ]
862
+ }
863
+ },
864
+ "begin": {
865
+ "type": "begin",
866
+ "named": true,
867
+ "fields": {},
868
+ "children": {
869
+ "multiple": true,
870
+ "required": false,
871
+ "types": [
872
+ {
873
+ "type": "_statement",
874
+ "named": true
875
+ },
876
+ {
877
+ "type": "else",
878
+ "named": true
879
+ },
880
+ {
881
+ "type": "empty_statement",
882
+ "named": true
883
+ },
884
+ {
885
+ "type": "ensure",
886
+ "named": true
887
+ },
888
+ {
889
+ "type": "rescue",
890
+ "named": true
891
+ }
892
+ ]
893
+ }
894
+ },
895
+ "begin_block": {
896
+ "type": "begin_block",
897
+ "named": true,
898
+ "fields": {},
899
+ "children": {
900
+ "multiple": true,
901
+ "required": false,
902
+ "types": [
903
+ {
904
+ "type": "_statement",
905
+ "named": true
906
+ },
907
+ {
908
+ "type": "empty_statement",
909
+ "named": true
910
+ }
911
+ ]
912
+ }
913
+ },
914
+ "binary": {
915
+ "type": "binary",
916
+ "named": true,
917
+ "fields": {
918
+ "left": {
919
+ "multiple": false,
920
+ "required": true,
921
+ "types": [
922
+ {
923
+ "type": "_expression",
924
+ "named": true
925
+ },
926
+ {
927
+ "type": "_simple_numeric",
928
+ "named": true
929
+ }
930
+ ]
931
+ },
932
+ "operator": {
933
+ "multiple": false,
934
+ "required": true,
935
+ "types": []
936
+ },
937
+ "right": {
938
+ "multiple": false,
939
+ "required": true,
940
+ "types": [
941
+ {
942
+ "type": "_expression",
943
+ "named": true
944
+ }
945
+ ]
946
+ }
947
+ }
948
+ },
949
+ "block": {
950
+ "type": "block",
951
+ "named": true,
952
+ "fields": {
953
+ "body": {
954
+ "multiple": false,
955
+ "required": false,
956
+ "types": [
957
+ {
958
+ "type": "block_body",
959
+ "named": true
960
+ }
961
+ ]
962
+ },
963
+ "parameters": {
964
+ "multiple": false,
965
+ "required": false,
966
+ "types": [
967
+ {
968
+ "type": "block_parameters",
969
+ "named": true
970
+ }
971
+ ]
972
+ }
973
+ }
974
+ },
975
+ "block_argument": {
976
+ "type": "block_argument",
977
+ "named": true,
978
+ "fields": {},
979
+ "children": {
980
+ "multiple": false,
981
+ "required": false,
982
+ "types": [
983
+ {
984
+ "type": "_arg",
985
+ "named": true
986
+ }
987
+ ]
988
+ }
989
+ },
990
+ "block_body": {
991
+ "type": "block_body",
992
+ "named": true,
993
+ "fields": {},
994
+ "children": {
995
+ "multiple": true,
996
+ "required": true,
997
+ "types": [
998
+ {
999
+ "type": "_statement",
1000
+ "named": true
1001
+ },
1002
+ {
1003
+ "type": "empty_statement",
1004
+ "named": true
1005
+ }
1006
+ ]
1007
+ }
1008
+ },
1009
+ "block_parameter": {
1010
+ "type": "block_parameter",
1011
+ "named": true,
1012
+ "fields": {
1013
+ "name": {
1014
+ "multiple": false,
1015
+ "required": false,
1016
+ "types": [
1017
+ {
1018
+ "type": "identifier",
1019
+ "named": true
1020
+ }
1021
+ ]
1022
+ }
1023
+ }
1024
+ },
1025
+ "block_parameters": {
1026
+ "type": "block_parameters",
1027
+ "named": true,
1028
+ "fields": {
1029
+ "locals": {
1030
+ "multiple": true,
1031
+ "required": false,
1032
+ "types": [
1033
+ {
1034
+ "type": "identifier",
1035
+ "named": true
1036
+ }
1037
+ ]
1038
+ }
1039
+ },
1040
+ "children": {
1041
+ "multiple": true,
1042
+ "required": false,
1043
+ "types": [
1044
+ {
1045
+ "type": "block_parameter",
1046
+ "named": true
1047
+ },
1048
+ {
1049
+ "type": "destructured_parameter",
1050
+ "named": true
1051
+ },
1052
+ {
1053
+ "type": "forward_parameter",
1054
+ "named": true
1055
+ },
1056
+ {
1057
+ "type": "hash_splat_nil",
1058
+ "named": true
1059
+ },
1060
+ {
1061
+ "type": "hash_splat_parameter",
1062
+ "named": true
1063
+ },
1064
+ {
1065
+ "type": "identifier",
1066
+ "named": true
1067
+ },
1068
+ {
1069
+ "type": "keyword_parameter",
1070
+ "named": true
1071
+ },
1072
+ {
1073
+ "type": "optional_parameter",
1074
+ "named": true
1075
+ },
1076
+ {
1077
+ "type": "splat_parameter",
1078
+ "named": true
1079
+ }
1080
+ ]
1081
+ }
1082
+ },
1083
+ "body_statement": {
1084
+ "type": "body_statement",
1085
+ "named": true,
1086
+ "fields": {},
1087
+ "children": {
1088
+ "multiple": true,
1089
+ "required": true,
1090
+ "types": [
1091
+ {
1092
+ "type": "_statement",
1093
+ "named": true
1094
+ },
1095
+ {
1096
+ "type": "else",
1097
+ "named": true
1098
+ },
1099
+ {
1100
+ "type": "empty_statement",
1101
+ "named": true
1102
+ },
1103
+ {
1104
+ "type": "ensure",
1105
+ "named": true
1106
+ },
1107
+ {
1108
+ "type": "rescue",
1109
+ "named": true
1110
+ }
1111
+ ]
1112
+ }
1113
+ },
1114
+ "break": {
1115
+ "type": "break",
1116
+ "named": true,
1117
+ "fields": {},
1118
+ "children": {
1119
+ "multiple": false,
1120
+ "required": false,
1121
+ "types": [
1122
+ {
1123
+ "type": "argument_list",
1124
+ "named": true
1125
+ }
1126
+ ]
1127
+ }
1128
+ },
1129
+ "call": {
1130
+ "type": "call",
1131
+ "named": true,
1132
+ "fields": {
1133
+ "arguments": {
1134
+ "multiple": false,
1135
+ "required": false,
1136
+ "types": [
1137
+ {
1138
+ "type": "argument_list",
1139
+ "named": true
1140
+ }
1141
+ ]
1142
+ },
1143
+ "block": {
1144
+ "multiple": false,
1145
+ "required": false,
1146
+ "types": [
1147
+ {
1148
+ "type": "block",
1149
+ "named": true
1150
+ },
1151
+ {
1152
+ "type": "do_block",
1153
+ "named": true
1154
+ }
1155
+ ]
1156
+ },
1157
+ "method": {
1158
+ "multiple": false,
1159
+ "required": false,
1160
+ "types": [
1161
+ {
1162
+ "type": "_variable",
1163
+ "named": true
1164
+ },
1165
+ {
1166
+ "type": "operator",
1167
+ "named": true
1168
+ }
1169
+ ]
1170
+ },
1171
+ "operator": {
1172
+ "multiple": false,
1173
+ "required": false,
1174
+ "types": [
1175
+ {
1176
+ "type": "_call_operator",
1177
+ "named": true
1178
+ }
1179
+ ]
1180
+ },
1181
+ "receiver": {
1182
+ "multiple": false,
1183
+ "required": false,
1184
+ "types": [
1185
+ {
1186
+ "type": "_primary",
1187
+ "named": true
1188
+ }
1189
+ ]
1190
+ }
1191
+ }
1192
+ },
1193
+ "case": {
1194
+ "type": "case",
1195
+ "named": true,
1196
+ "fields": {
1197
+ "value": {
1198
+ "multiple": false,
1199
+ "required": false,
1200
+ "types": [
1201
+ {
1202
+ "type": "_statement",
1203
+ "named": true
1204
+ }
1205
+ ]
1206
+ }
1207
+ },
1208
+ "children": {
1209
+ "multiple": true,
1210
+ "required": false,
1211
+ "types": [
1212
+ {
1213
+ "type": "else",
1214
+ "named": true
1215
+ },
1216
+ {
1217
+ "type": "when",
1218
+ "named": true
1219
+ }
1220
+ ]
1221
+ }
1222
+ },
1223
+ "case_match": {
1224
+ "type": "case_match",
1225
+ "named": true,
1226
+ "fields": {
1227
+ "clauses": {
1228
+ "multiple": true,
1229
+ "required": true,
1230
+ "types": [
1231
+ {
1232
+ "type": "in_clause",
1233
+ "named": true
1234
+ }
1235
+ ]
1236
+ },
1237
+ "else": {
1238
+ "multiple": false,
1239
+ "required": false,
1240
+ "types": [
1241
+ {
1242
+ "type": "else",
1243
+ "named": true
1244
+ }
1245
+ ]
1246
+ },
1247
+ "value": {
1248
+ "multiple": false,
1249
+ "required": true,
1250
+ "types": [
1251
+ {
1252
+ "type": "_statement",
1253
+ "named": true
1254
+ }
1255
+ ]
1256
+ }
1257
+ }
1258
+ },
1259
+ "chained_string": {
1260
+ "type": "chained_string",
1261
+ "named": true,
1262
+ "fields": {},
1263
+ "children": {
1264
+ "multiple": true,
1265
+ "required": true,
1266
+ "types": [
1267
+ {
1268
+ "type": "string",
1269
+ "named": true
1270
+ }
1271
+ ]
1272
+ }
1273
+ },
1274
+ "class": {
1275
+ "type": "class",
1276
+ "named": true,
1277
+ "fields": {
1278
+ "body": {
1279
+ "multiple": false,
1280
+ "required": false,
1281
+ "types": [
1282
+ {
1283
+ "type": "body_statement",
1284
+ "named": true
1285
+ }
1286
+ ]
1287
+ },
1288
+ "name": {
1289
+ "multiple": false,
1290
+ "required": true,
1291
+ "types": [
1292
+ {
1293
+ "type": "constant",
1294
+ "named": true
1295
+ },
1296
+ {
1297
+ "type": "scope_resolution",
1298
+ "named": true
1299
+ }
1300
+ ]
1301
+ },
1302
+ "superclass": {
1303
+ "multiple": false,
1304
+ "required": false,
1305
+ "types": [
1306
+ {
1307
+ "type": "superclass",
1308
+ "named": true
1309
+ }
1310
+ ]
1311
+ }
1312
+ }
1313
+ },
1314
+ "complex": {
1315
+ "type": "complex",
1316
+ "named": true,
1317
+ "fields": {},
1318
+ "children": {
1319
+ "multiple": false,
1320
+ "required": true,
1321
+ "types": [
1322
+ {
1323
+ "type": "float",
1324
+ "named": true
1325
+ },
1326
+ {
1327
+ "type": "integer",
1328
+ "named": true
1329
+ },
1330
+ {
1331
+ "type": "rational",
1332
+ "named": true
1333
+ }
1334
+ ]
1335
+ }
1336
+ },
1337
+ "conditional": {
1338
+ "type": "conditional",
1339
+ "named": true,
1340
+ "fields": {
1341
+ "alternative": {
1342
+ "multiple": false,
1343
+ "required": true,
1344
+ "types": [
1345
+ {
1346
+ "type": "_arg",
1347
+ "named": true
1348
+ }
1349
+ ]
1350
+ },
1351
+ "condition": {
1352
+ "multiple": false,
1353
+ "required": true,
1354
+ "types": [
1355
+ {
1356
+ "type": "_arg",
1357
+ "named": true
1358
+ }
1359
+ ]
1360
+ },
1361
+ "consequence": {
1362
+ "multiple": false,
1363
+ "required": true,
1364
+ "types": [
1365
+ {
1366
+ "type": "_arg",
1367
+ "named": true
1368
+ }
1369
+ ]
1370
+ }
1371
+ }
1372
+ },
1373
+ "constant": {
1374
+ "type": "constant",
1375
+ "named": true,
1376
+ "fields": {}
1377
+ },
1378
+ "delimited_symbol": {
1379
+ "type": "delimited_symbol",
1380
+ "named": true,
1381
+ "fields": {},
1382
+ "children": {
1383
+ "multiple": true,
1384
+ "required": false,
1385
+ "types": [
1386
+ {
1387
+ "type": "escape_sequence",
1388
+ "named": true
1389
+ },
1390
+ {
1391
+ "type": "interpolation",
1392
+ "named": true
1393
+ },
1394
+ {
1395
+ "type": "string_content",
1396
+ "named": true
1397
+ }
1398
+ ]
1399
+ }
1400
+ },
1401
+ "destructured_left_assignment": {
1402
+ "type": "destructured_left_assignment",
1403
+ "named": true,
1404
+ "fields": {},
1405
+ "children": {
1406
+ "multiple": true,
1407
+ "required": true,
1408
+ "types": [
1409
+ {
1410
+ "type": "_lhs",
1411
+ "named": true
1412
+ },
1413
+ {
1414
+ "type": "destructured_left_assignment",
1415
+ "named": true
1416
+ },
1417
+ {
1418
+ "type": "rest_assignment",
1419
+ "named": true
1420
+ }
1421
+ ]
1422
+ }
1423
+ },
1424
+ "destructured_parameter": {
1425
+ "type": "destructured_parameter",
1426
+ "named": true,
1427
+ "fields": {},
1428
+ "children": {
1429
+ "multiple": true,
1430
+ "required": false,
1431
+ "types": [
1432
+ {
1433
+ "type": "block_parameter",
1434
+ "named": true
1435
+ },
1436
+ {
1437
+ "type": "destructured_parameter",
1438
+ "named": true
1439
+ },
1440
+ {
1441
+ "type": "forward_parameter",
1442
+ "named": true
1443
+ },
1444
+ {
1445
+ "type": "hash_splat_nil",
1446
+ "named": true
1447
+ },
1448
+ {
1449
+ "type": "hash_splat_parameter",
1450
+ "named": true
1451
+ },
1452
+ {
1453
+ "type": "identifier",
1454
+ "named": true
1455
+ },
1456
+ {
1457
+ "type": "keyword_parameter",
1458
+ "named": true
1459
+ },
1460
+ {
1461
+ "type": "optional_parameter",
1462
+ "named": true
1463
+ },
1464
+ {
1465
+ "type": "splat_parameter",
1466
+ "named": true
1467
+ }
1468
+ ]
1469
+ }
1470
+ },
1471
+ "do": {
1472
+ "type": "do",
1473
+ "named": true,
1474
+ "fields": {},
1475
+ "children": {
1476
+ "multiple": true,
1477
+ "required": false,
1478
+ "types": [
1479
+ {
1480
+ "type": "_statement",
1481
+ "named": true
1482
+ },
1483
+ {
1484
+ "type": "empty_statement",
1485
+ "named": true
1486
+ }
1487
+ ]
1488
+ }
1489
+ },
1490
+ "do_block": {
1491
+ "type": "do_block",
1492
+ "named": true,
1493
+ "fields": {
1494
+ "body": {
1495
+ "multiple": false,
1496
+ "required": false,
1497
+ "types": [
1498
+ {
1499
+ "type": "body_statement",
1500
+ "named": true
1501
+ }
1502
+ ]
1503
+ },
1504
+ "parameters": {
1505
+ "multiple": false,
1506
+ "required": false,
1507
+ "types": [
1508
+ {
1509
+ "type": "block_parameters",
1510
+ "named": true
1511
+ }
1512
+ ]
1513
+ }
1514
+ }
1515
+ },
1516
+ "element_reference": {
1517
+ "type": "element_reference",
1518
+ "named": true,
1519
+ "fields": {
1520
+ "block": {
1521
+ "multiple": false,
1522
+ "required": false,
1523
+ "types": [
1524
+ {
1525
+ "type": "block",
1526
+ "named": true
1527
+ },
1528
+ {
1529
+ "type": "do_block",
1530
+ "named": true
1531
+ }
1532
+ ]
1533
+ },
1534
+ "object": {
1535
+ "multiple": false,
1536
+ "required": true,
1537
+ "types": [
1538
+ {
1539
+ "type": "_primary",
1540
+ "named": true
1541
+ }
1542
+ ]
1543
+ }
1544
+ },
1545
+ "children": {
1546
+ "multiple": true,
1547
+ "required": false,
1548
+ "types": [
1549
+ {
1550
+ "type": "_expression",
1551
+ "named": true
1552
+ },
1553
+ {
1554
+ "type": "block_argument",
1555
+ "named": true
1556
+ },
1557
+ {
1558
+ "type": "forward_argument",
1559
+ "named": true
1560
+ },
1561
+ {
1562
+ "type": "hash_splat_argument",
1563
+ "named": true
1564
+ },
1565
+ {
1566
+ "type": "pair",
1567
+ "named": true
1568
+ },
1569
+ {
1570
+ "type": "splat_argument",
1571
+ "named": true
1572
+ }
1573
+ ]
1574
+ }
1575
+ },
1576
+ "else": {
1577
+ "type": "else",
1578
+ "named": true,
1579
+ "fields": {},
1580
+ "children": {
1581
+ "multiple": true,
1582
+ "required": false,
1583
+ "types": [
1584
+ {
1585
+ "type": "_statement",
1586
+ "named": true
1587
+ },
1588
+ {
1589
+ "type": "empty_statement",
1590
+ "named": true
1591
+ }
1592
+ ]
1593
+ }
1594
+ },
1595
+ "elsif": {
1596
+ "type": "elsif",
1597
+ "named": true,
1598
+ "fields": {
1599
+ "alternative": {
1600
+ "multiple": false,
1601
+ "required": false,
1602
+ "types": [
1603
+ {
1604
+ "type": "else",
1605
+ "named": true
1606
+ },
1607
+ {
1608
+ "type": "elsif",
1609
+ "named": true
1610
+ }
1611
+ ]
1612
+ },
1613
+ "condition": {
1614
+ "multiple": false,
1615
+ "required": true,
1616
+ "types": [
1617
+ {
1618
+ "type": "_statement",
1619
+ "named": true
1620
+ }
1621
+ ]
1622
+ },
1623
+ "consequence": {
1624
+ "multiple": false,
1625
+ "required": false,
1626
+ "types": [
1627
+ {
1628
+ "type": "then",
1629
+ "named": true
1630
+ }
1631
+ ]
1632
+ }
1633
+ }
1634
+ },
1635
+ "empty_statement": {
1636
+ "type": "empty_statement",
1637
+ "named": true,
1638
+ "fields": {}
1639
+ },
1640
+ "end_block": {
1641
+ "type": "end_block",
1642
+ "named": true,
1643
+ "fields": {},
1644
+ "children": {
1645
+ "multiple": true,
1646
+ "required": false,
1647
+ "types": [
1648
+ {
1649
+ "type": "_statement",
1650
+ "named": true
1651
+ },
1652
+ {
1653
+ "type": "empty_statement",
1654
+ "named": true
1655
+ }
1656
+ ]
1657
+ }
1658
+ },
1659
+ "ensure": {
1660
+ "type": "ensure",
1661
+ "named": true,
1662
+ "fields": {},
1663
+ "children": {
1664
+ "multiple": true,
1665
+ "required": false,
1666
+ "types": [
1667
+ {
1668
+ "type": "_statement",
1669
+ "named": true
1670
+ },
1671
+ {
1672
+ "type": "empty_statement",
1673
+ "named": true
1674
+ }
1675
+ ]
1676
+ }
1677
+ },
1678
+ "exception_variable": {
1679
+ "type": "exception_variable",
1680
+ "named": true,
1681
+ "fields": {},
1682
+ "children": {
1683
+ "multiple": false,
1684
+ "required": true,
1685
+ "types": [
1686
+ {
1687
+ "type": "_lhs",
1688
+ "named": true
1689
+ }
1690
+ ]
1691
+ }
1692
+ },
1693
+ "exceptions": {
1694
+ "type": "exceptions",
1695
+ "named": true,
1696
+ "fields": {},
1697
+ "children": {
1698
+ "multiple": true,
1699
+ "required": true,
1700
+ "types": [
1701
+ {
1702
+ "type": "_arg",
1703
+ "named": true
1704
+ },
1705
+ {
1706
+ "type": "splat_argument",
1707
+ "named": true
1708
+ }
1709
+ ]
1710
+ }
1711
+ },
1712
+ "expression_reference_pattern": {
1713
+ "type": "expression_reference_pattern",
1714
+ "named": true,
1715
+ "fields": {
1716
+ "value": {
1717
+ "multiple": false,
1718
+ "required": true,
1719
+ "types": [
1720
+ {
1721
+ "type": "_expression",
1722
+ "named": true
1723
+ }
1724
+ ]
1725
+ }
1726
+ }
1727
+ },
1728
+ "find_pattern": {
1729
+ "type": "find_pattern",
1730
+ "named": true,
1731
+ "fields": {
1732
+ "class": {
1733
+ "multiple": false,
1734
+ "required": false,
1735
+ "types": [
1736
+ {
1737
+ "type": "_pattern_constant",
1738
+ "named": true
1739
+ }
1740
+ ]
1741
+ }
1742
+ },
1743
+ "children": {
1744
+ "multiple": true,
1745
+ "required": true,
1746
+ "types": [
1747
+ {
1748
+ "type": "_pattern_expr",
1749
+ "named": true
1750
+ },
1751
+ {
1752
+ "type": "splat_parameter",
1753
+ "named": true
1754
+ }
1755
+ ]
1756
+ }
1757
+ },
1758
+ "for": {
1759
+ "type": "for",
1760
+ "named": true,
1761
+ "fields": {
1762
+ "body": {
1763
+ "multiple": false,
1764
+ "required": true,
1765
+ "types": [
1766
+ {
1767
+ "type": "do",
1768
+ "named": true
1769
+ }
1770
+ ]
1771
+ },
1772
+ "pattern": {
1773
+ "multiple": false,
1774
+ "required": true,
1775
+ "types": [
1776
+ {
1777
+ "type": "_lhs",
1778
+ "named": true
1779
+ },
1780
+ {
1781
+ "type": "left_assignment_list",
1782
+ "named": true
1783
+ }
1784
+ ]
1785
+ },
1786
+ "value": {
1787
+ "multiple": false,
1788
+ "required": true,
1789
+ "types": [
1790
+ {
1791
+ "type": "in",
1792
+ "named": true
1793
+ }
1794
+ ]
1795
+ }
1796
+ }
1797
+ },
1798
+ "forward_argument": {
1799
+ "type": "forward_argument",
1800
+ "named": true,
1801
+ "fields": {}
1802
+ },
1803
+ "forward_parameter": {
1804
+ "type": "forward_parameter",
1805
+ "named": true,
1806
+ "fields": {}
1807
+ },
1808
+ "hash": {
1809
+ "type": "hash",
1810
+ "named": true,
1811
+ "fields": {},
1812
+ "children": {
1813
+ "multiple": true,
1814
+ "required": false,
1815
+ "types": [
1816
+ {
1817
+ "type": "hash_splat_argument",
1818
+ "named": true
1819
+ },
1820
+ {
1821
+ "type": "pair",
1822
+ "named": true
1823
+ }
1824
+ ]
1825
+ }
1826
+ },
1827
+ "hash_key_symbol": {
1828
+ "type": "hash_key_symbol",
1829
+ "named": true,
1830
+ "fields": {}
1831
+ },
1832
+ "hash_pattern": {
1833
+ "type": "hash_pattern",
1834
+ "named": true,
1835
+ "fields": {
1836
+ "class": {
1837
+ "multiple": false,
1838
+ "required": false,
1839
+ "types": [
1840
+ {
1841
+ "type": "_pattern_constant",
1842
+ "named": true
1843
+ }
1844
+ ]
1845
+ }
1846
+ },
1847
+ "children": {
1848
+ "multiple": true,
1849
+ "required": false,
1850
+ "types": [
1851
+ {
1852
+ "type": "hash_splat_nil",
1853
+ "named": true
1854
+ },
1855
+ {
1856
+ "type": "hash_splat_parameter",
1857
+ "named": true
1858
+ },
1859
+ {
1860
+ "type": "keyword_pattern",
1861
+ "named": true
1862
+ }
1863
+ ]
1864
+ }
1865
+ },
1866
+ "hash_splat_argument": {
1867
+ "type": "hash_splat_argument",
1868
+ "named": true,
1869
+ "fields": {},
1870
+ "children": {
1871
+ "multiple": false,
1872
+ "required": false,
1873
+ "types": [
1874
+ {
1875
+ "type": "_arg",
1876
+ "named": true
1877
+ }
1878
+ ]
1879
+ }
1880
+ },
1881
+ "hash_splat_nil": {
1882
+ "type": "hash_splat_nil",
1883
+ "named": true,
1884
+ "fields": {}
1885
+ },
1886
+ "hash_splat_parameter": {
1887
+ "type": "hash_splat_parameter",
1888
+ "named": true,
1889
+ "fields": {
1890
+ "name": {
1891
+ "multiple": false,
1892
+ "required": false,
1893
+ "types": [
1894
+ {
1895
+ "type": "identifier",
1896
+ "named": true
1897
+ }
1898
+ ]
1899
+ }
1900
+ }
1901
+ },
1902
+ "heredoc_body": {
1903
+ "type": "heredoc_body",
1904
+ "named": true,
1905
+ "fields": {},
1906
+ "children": {
1907
+ "multiple": true,
1908
+ "required": true,
1909
+ "types": [
1910
+ {
1911
+ "type": "escape_sequence",
1912
+ "named": true
1913
+ },
1914
+ {
1915
+ "type": "heredoc_content",
1916
+ "named": true
1917
+ },
1918
+ {
1919
+ "type": "heredoc_end",
1920
+ "named": true
1921
+ },
1922
+ {
1923
+ "type": "interpolation",
1924
+ "named": true
1925
+ }
1926
+ ]
1927
+ }
1928
+ },
1929
+ "identifier": {
1930
+ "type": "identifier",
1931
+ "named": true,
1932
+ "fields": {}
1933
+ },
1934
+ "if": {
1935
+ "type": "if",
1936
+ "named": true,
1937
+ "fields": {
1938
+ "alternative": {
1939
+ "multiple": false,
1940
+ "required": false,
1941
+ "types": [
1942
+ {
1943
+ "type": "else",
1944
+ "named": true
1945
+ },
1946
+ {
1947
+ "type": "elsif",
1948
+ "named": true
1949
+ }
1950
+ ]
1951
+ },
1952
+ "condition": {
1953
+ "multiple": false,
1954
+ "required": true,
1955
+ "types": [
1956
+ {
1957
+ "type": "_statement",
1958
+ "named": true
1959
+ }
1960
+ ]
1961
+ },
1962
+ "consequence": {
1963
+ "multiple": false,
1964
+ "required": false,
1965
+ "types": [
1966
+ {
1967
+ "type": "then",
1968
+ "named": true
1969
+ }
1970
+ ]
1971
+ }
1972
+ }
1973
+ },
1974
+ "if_guard": {
1975
+ "type": "if_guard",
1976
+ "named": true,
1977
+ "fields": {
1978
+ "condition": {
1979
+ "multiple": false,
1980
+ "required": true,
1981
+ "types": [
1982
+ {
1983
+ "type": "_expression",
1984
+ "named": true
1985
+ }
1986
+ ]
1987
+ }
1988
+ }
1989
+ },
1990
+ "if_modifier": {
1991
+ "type": "if_modifier",
1992
+ "named": true,
1993
+ "fields": {
1994
+ "body": {
1995
+ "multiple": false,
1996
+ "required": true,
1997
+ "types": [
1998
+ {
1999
+ "type": "_statement",
2000
+ "named": true
2001
+ }
2002
+ ]
2003
+ },
2004
+ "condition": {
2005
+ "multiple": false,
2006
+ "required": true,
2007
+ "types": [
2008
+ {
2009
+ "type": "_expression",
2010
+ "named": true
2011
+ }
2012
+ ]
2013
+ }
2014
+ }
2015
+ },
2016
+ "in": {
2017
+ "type": "in",
2018
+ "named": true,
2019
+ "fields": {},
2020
+ "children": {
2021
+ "multiple": false,
2022
+ "required": true,
2023
+ "types": [
2024
+ {
2025
+ "type": "_arg",
2026
+ "named": true
2027
+ }
2028
+ ]
2029
+ }
2030
+ },
2031
+ "in_clause": {
2032
+ "type": "in_clause",
2033
+ "named": true,
2034
+ "fields": {
2035
+ "body": {
2036
+ "multiple": false,
2037
+ "required": false,
2038
+ "types": [
2039
+ {
2040
+ "type": "then",
2041
+ "named": true
2042
+ }
2043
+ ]
2044
+ },
2045
+ "guard": {
2046
+ "multiple": false,
2047
+ "required": false,
2048
+ "types": [
2049
+ {
2050
+ "type": "if_guard",
2051
+ "named": true
2052
+ },
2053
+ {
2054
+ "type": "unless_guard",
2055
+ "named": true
2056
+ }
2057
+ ]
2058
+ },
2059
+ "pattern": {
2060
+ "multiple": false,
2061
+ "required": true,
2062
+ "types": [
2063
+ {
2064
+ "type": "_pattern_top_expr_body",
2065
+ "named": true
2066
+ }
2067
+ ]
2068
+ }
2069
+ }
2070
+ },
2071
+ "interpolation": {
2072
+ "type": "interpolation",
2073
+ "named": true,
2074
+ "fields": {},
2075
+ "children": {
2076
+ "multiple": true,
2077
+ "required": false,
2078
+ "types": [
2079
+ {
2080
+ "type": "_nonlocal_variable",
2081
+ "named": true
2082
+ },
2083
+ {
2084
+ "type": "_statement",
2085
+ "named": true
2086
+ },
2087
+ {
2088
+ "type": "empty_statement",
2089
+ "named": true
2090
+ }
2091
+ ]
2092
+ }
2093
+ },
2094
+ "keyword_parameter": {
2095
+ "type": "keyword_parameter",
2096
+ "named": true,
2097
+ "fields": {
2098
+ "name": {
2099
+ "multiple": false,
2100
+ "required": true,
2101
+ "types": [
2102
+ {
2103
+ "type": "identifier",
2104
+ "named": true
2105
+ }
2106
+ ]
2107
+ },
2108
+ "value": {
2109
+ "multiple": false,
2110
+ "required": false,
2111
+ "types": [
2112
+ {
2113
+ "type": "_arg",
2114
+ "named": true
2115
+ }
2116
+ ]
2117
+ }
2118
+ }
2119
+ },
2120
+ "keyword_pattern": {
2121
+ "type": "keyword_pattern",
2122
+ "named": true,
2123
+ "fields": {
2124
+ "key": {
2125
+ "multiple": false,
2126
+ "required": true,
2127
+ "types": [
2128
+ {
2129
+ "type": "hash_key_symbol",
2130
+ "named": true
2131
+ },
2132
+ {
2133
+ "type": "string",
2134
+ "named": true
2135
+ }
2136
+ ]
2137
+ },
2138
+ "value": {
2139
+ "multiple": false,
2140
+ "required": false,
2141
+ "types": [
2142
+ {
2143
+ "type": "_pattern_expr",
2144
+ "named": true
2145
+ }
2146
+ ]
2147
+ }
2148
+ }
2149
+ },
2150
+ "lambda": {
2151
+ "type": "lambda",
2152
+ "named": true,
2153
+ "fields": {
2154
+ "body": {
2155
+ "multiple": false,
2156
+ "required": true,
2157
+ "types": [
2158
+ {
2159
+ "type": "block",
2160
+ "named": true
2161
+ },
2162
+ {
2163
+ "type": "do_block",
2164
+ "named": true
2165
+ }
2166
+ ]
2167
+ },
2168
+ "parameters": {
2169
+ "multiple": false,
2170
+ "required": false,
2171
+ "types": [
2172
+ {
2173
+ "type": "lambda_parameters",
2174
+ "named": true
2175
+ }
2176
+ ]
2177
+ }
2178
+ }
2179
+ },
2180
+ "lambda_parameters": {
2181
+ "type": "lambda_parameters",
2182
+ "named": true,
2183
+ "fields": {},
2184
+ "children": {
2185
+ "multiple": true,
2186
+ "required": false,
2187
+ "types": [
2188
+ {
2189
+ "type": "block_parameter",
2190
+ "named": true
2191
+ },
2192
+ {
2193
+ "type": "destructured_parameter",
2194
+ "named": true
2195
+ },
2196
+ {
2197
+ "type": "forward_parameter",
2198
+ "named": true
2199
+ },
2200
+ {
2201
+ "type": "hash_splat_nil",
2202
+ "named": true
2203
+ },
2204
+ {
2205
+ "type": "hash_splat_parameter",
2206
+ "named": true
2207
+ },
2208
+ {
2209
+ "type": "identifier",
2210
+ "named": true
2211
+ },
2212
+ {
2213
+ "type": "keyword_parameter",
2214
+ "named": true
2215
+ },
2216
+ {
2217
+ "type": "optional_parameter",
2218
+ "named": true
2219
+ },
2220
+ {
2221
+ "type": "splat_parameter",
2222
+ "named": true
2223
+ }
2224
+ ]
2225
+ }
2226
+ },
2227
+ "left_assignment_list": {
2228
+ "type": "left_assignment_list",
2229
+ "named": true,
2230
+ "fields": {},
2231
+ "children": {
2232
+ "multiple": true,
2233
+ "required": true,
2234
+ "types": [
2235
+ {
2236
+ "type": "_lhs",
2237
+ "named": true
2238
+ },
2239
+ {
2240
+ "type": "destructured_left_assignment",
2241
+ "named": true
2242
+ },
2243
+ {
2244
+ "type": "rest_assignment",
2245
+ "named": true
2246
+ }
2247
+ ]
2248
+ }
2249
+ },
2250
+ "match_pattern": {
2251
+ "type": "match_pattern",
2252
+ "named": true,
2253
+ "fields": {
2254
+ "pattern": {
2255
+ "multiple": false,
2256
+ "required": true,
2257
+ "types": [
2258
+ {
2259
+ "type": "_pattern_top_expr_body",
2260
+ "named": true
2261
+ }
2262
+ ]
2263
+ },
2264
+ "value": {
2265
+ "multiple": false,
2266
+ "required": true,
2267
+ "types": [
2268
+ {
2269
+ "type": "_arg",
2270
+ "named": true
2271
+ }
2272
+ ]
2273
+ }
2274
+ }
2275
+ },
2276
+ "method": {
2277
+ "type": "method",
2278
+ "named": true,
2279
+ "fields": {
2280
+ "body": {
2281
+ "multiple": false,
2282
+ "required": false,
2283
+ "types": [
2284
+ {
2285
+ "type": "_arg",
2286
+ "named": true
2287
+ },
2288
+ {
2289
+ "type": "body_statement",
2290
+ "named": true
2291
+ },
2292
+ {
2293
+ "type": "rescue_modifier",
2294
+ "named": true
2295
+ }
2296
+ ]
2297
+ },
2298
+ "name": {
2299
+ "multiple": false,
2300
+ "required": true,
2301
+ "types": [
2302
+ {
2303
+ "type": "_method_name",
2304
+ "named": true
2305
+ }
2306
+ ]
2307
+ },
2308
+ "parameters": {
2309
+ "multiple": false,
2310
+ "required": false,
2311
+ "types": [
2312
+ {
2313
+ "type": "method_parameters",
2314
+ "named": true
2315
+ }
2316
+ ]
2317
+ }
2318
+ }
2319
+ },
2320
+ "method_parameters": {
2321
+ "type": "method_parameters",
2322
+ "named": true,
2323
+ "fields": {},
2324
+ "children": {
2325
+ "multiple": true,
2326
+ "required": false,
2327
+ "types": [
2328
+ {
2329
+ "type": "block_parameter",
2330
+ "named": true
2331
+ },
2332
+ {
2333
+ "type": "destructured_parameter",
2334
+ "named": true
2335
+ },
2336
+ {
2337
+ "type": "forward_parameter",
2338
+ "named": true
2339
+ },
2340
+ {
2341
+ "type": "hash_splat_nil",
2342
+ "named": true
2343
+ },
2344
+ {
2345
+ "type": "hash_splat_parameter",
2346
+ "named": true
2347
+ },
2348
+ {
2349
+ "type": "identifier",
2350
+ "named": true
2351
+ },
2352
+ {
2353
+ "type": "keyword_parameter",
2354
+ "named": true
2355
+ },
2356
+ {
2357
+ "type": "optional_parameter",
2358
+ "named": true
2359
+ },
2360
+ {
2361
+ "type": "splat_parameter",
2362
+ "named": true
2363
+ }
2364
+ ]
2365
+ }
2366
+ },
2367
+ "module": {
2368
+ "type": "module",
2369
+ "named": true,
2370
+ "fields": {
2371
+ "body": {
2372
+ "multiple": false,
2373
+ "required": false,
2374
+ "types": [
2375
+ {
2376
+ "type": "body_statement",
2377
+ "named": true
2378
+ }
2379
+ ]
2380
+ },
2381
+ "name": {
2382
+ "multiple": false,
2383
+ "required": true,
2384
+ "types": [
2385
+ {
2386
+ "type": "constant",
2387
+ "named": true
2388
+ },
2389
+ {
2390
+ "type": "scope_resolution",
2391
+ "named": true
2392
+ }
2393
+ ]
2394
+ }
2395
+ }
2396
+ },
2397
+ "next": {
2398
+ "type": "next",
2399
+ "named": true,
2400
+ "fields": {},
2401
+ "children": {
2402
+ "multiple": false,
2403
+ "required": false,
2404
+ "types": [
2405
+ {
2406
+ "type": "argument_list",
2407
+ "named": true
2408
+ }
2409
+ ]
2410
+ }
2411
+ },
2412
+ "nil": {
2413
+ "type": "nil",
2414
+ "named": true,
2415
+ "fields": {}
2416
+ },
2417
+ "operator": {
2418
+ "type": "operator",
2419
+ "named": true,
2420
+ "fields": {}
2421
+ },
2422
+ "operator_assignment": {
2423
+ "type": "operator_assignment",
2424
+ "named": true,
2425
+ "fields": {
2426
+ "left": {
2427
+ "multiple": false,
2428
+ "required": true,
2429
+ "types": [
2430
+ {
2431
+ "type": "_lhs",
2432
+ "named": true
2433
+ }
2434
+ ]
2435
+ },
2436
+ "operator": {
2437
+ "multiple": false,
2438
+ "required": true,
2439
+ "types": []
2440
+ },
2441
+ "right": {
2442
+ "multiple": false,
2443
+ "required": true,
2444
+ "types": [
2445
+ {
2446
+ "type": "_expression",
2447
+ "named": true
2448
+ },
2449
+ {
2450
+ "type": "rescue_modifier",
2451
+ "named": true
2452
+ }
2453
+ ]
2454
+ }
2455
+ }
2456
+ },
2457
+ "optional_parameter": {
2458
+ "type": "optional_parameter",
2459
+ "named": true,
2460
+ "fields": {
2461
+ "name": {
2462
+ "multiple": false,
2463
+ "required": true,
2464
+ "types": [
2465
+ {
2466
+ "type": "identifier",
2467
+ "named": true
2468
+ }
2469
+ ]
2470
+ },
2471
+ "value": {
2472
+ "multiple": false,
2473
+ "required": true,
2474
+ "types": [
2475
+ {
2476
+ "type": "_arg",
2477
+ "named": true
2478
+ }
2479
+ ]
2480
+ }
2481
+ }
2482
+ },
2483
+ "pair": {
2484
+ "type": "pair",
2485
+ "named": true,
2486
+ "fields": {
2487
+ "key": {
2488
+ "multiple": false,
2489
+ "required": true,
2490
+ "types": [
2491
+ {
2492
+ "type": "_arg",
2493
+ "named": true
2494
+ },
2495
+ {
2496
+ "type": "hash_key_symbol",
2497
+ "named": true
2498
+ },
2499
+ {
2500
+ "type": "string",
2501
+ "named": true
2502
+ }
2503
+ ]
2504
+ },
2505
+ "value": {
2506
+ "multiple": false,
2507
+ "required": false,
2508
+ "types": [
2509
+ {
2510
+ "type": "_arg",
2511
+ "named": true
2512
+ }
2513
+ ]
2514
+ }
2515
+ }
2516
+ },
2517
+ "parenthesized_pattern": {
2518
+ "type": "parenthesized_pattern",
2519
+ "named": true,
2520
+ "fields": {},
2521
+ "children": {
2522
+ "multiple": false,
2523
+ "required": true,
2524
+ "types": [
2525
+ {
2526
+ "type": "_pattern_expr",
2527
+ "named": true
2528
+ }
2529
+ ]
2530
+ }
2531
+ },
2532
+ "parenthesized_statements": {
2533
+ "type": "parenthesized_statements",
2534
+ "named": true,
2535
+ "fields": {},
2536
+ "children": {
2537
+ "multiple": true,
2538
+ "required": false,
2539
+ "types": [
2540
+ {
2541
+ "type": "_statement",
2542
+ "named": true
2543
+ },
2544
+ {
2545
+ "type": "empty_statement",
2546
+ "named": true
2547
+ }
2548
+ ]
2549
+ }
2550
+ },
2551
+ "pattern": {
2552
+ "type": "pattern",
2553
+ "named": true,
2554
+ "fields": {},
2555
+ "children": {
2556
+ "multiple": false,
2557
+ "required": true,
2558
+ "types": [
2559
+ {
2560
+ "type": "_arg",
2561
+ "named": true
2562
+ },
2563
+ {
2564
+ "type": "splat_argument",
2565
+ "named": true
2566
+ }
2567
+ ]
2568
+ }
2569
+ },
2570
+ "program": {
2571
+ "type": "program",
2572
+ "named": true,
2573
+ "fields": {},
2574
+ "children": {
2575
+ "multiple": true,
2576
+ "required": false,
2577
+ "types": [
2578
+ {
2579
+ "type": "_statement",
2580
+ "named": true
2581
+ },
2582
+ {
2583
+ "type": "empty_statement",
2584
+ "named": true
2585
+ },
2586
+ {
2587
+ "type": "uninterpreted",
2588
+ "named": true
2589
+ }
2590
+ ]
2591
+ }
2592
+ },
2593
+ "range": {
2594
+ "type": "range",
2595
+ "named": true,
2596
+ "fields": {
2597
+ "begin": {
2598
+ "multiple": false,
2599
+ "required": false,
2600
+ "types": [
2601
+ {
2602
+ "type": "_arg",
2603
+ "named": true
2604
+ },
2605
+ {
2606
+ "type": "_pattern_primitive",
2607
+ "named": true
2608
+ }
2609
+ ]
2610
+ },
2611
+ "end": {
2612
+ "multiple": false,
2613
+ "required": false,
2614
+ "types": [
2615
+ {
2616
+ "type": "_arg",
2617
+ "named": true
2618
+ },
2619
+ {
2620
+ "type": "_pattern_primitive",
2621
+ "named": true
2622
+ }
2623
+ ]
2624
+ },
2625
+ "operator": {
2626
+ "multiple": false,
2627
+ "required": true,
2628
+ "types": []
2629
+ }
2630
+ }
2631
+ },
2632
+ "rational": {
2633
+ "type": "rational",
2634
+ "named": true,
2635
+ "fields": {},
2636
+ "children": {
2637
+ "multiple": false,
2638
+ "required": true,
2639
+ "types": [
2640
+ {
2641
+ "type": "float",
2642
+ "named": true
2643
+ },
2644
+ {
2645
+ "type": "integer",
2646
+ "named": true
2647
+ }
2648
+ ]
2649
+ }
2650
+ },
2651
+ "redo": {
2652
+ "type": "redo",
2653
+ "named": true,
2654
+ "fields": {},
2655
+ "children": {
2656
+ "multiple": false,
2657
+ "required": false,
2658
+ "types": [
2659
+ {
2660
+ "type": "argument_list",
2661
+ "named": true
2662
+ }
2663
+ ]
2664
+ }
2665
+ },
2666
+ "regex": {
2667
+ "type": "regex",
2668
+ "named": true,
2669
+ "fields": {},
2670
+ "children": {
2671
+ "multiple": true,
2672
+ "required": false,
2673
+ "types": [
2674
+ {
2675
+ "type": "escape_sequence",
2676
+ "named": true
2677
+ },
2678
+ {
2679
+ "type": "interpolation",
2680
+ "named": true
2681
+ },
2682
+ {
2683
+ "type": "string_content",
2684
+ "named": true
2685
+ }
2686
+ ]
2687
+ }
2688
+ },
2689
+ "rescue": {
2690
+ "type": "rescue",
2691
+ "named": true,
2692
+ "fields": {
2693
+ "body": {
2694
+ "multiple": false,
2695
+ "required": false,
2696
+ "types": [
2697
+ {
2698
+ "type": "then",
2699
+ "named": true
2700
+ }
2701
+ ]
2702
+ },
2703
+ "exceptions": {
2704
+ "multiple": false,
2705
+ "required": false,
2706
+ "types": [
2707
+ {
2708
+ "type": "exceptions",
2709
+ "named": true
2710
+ }
2711
+ ]
2712
+ },
2713
+ "variable": {
2714
+ "multiple": false,
2715
+ "required": false,
2716
+ "types": [
2717
+ {
2718
+ "type": "exception_variable",
2719
+ "named": true
2720
+ }
2721
+ ]
2722
+ }
2723
+ }
2724
+ },
2725
+ "rescue_modifier": {
2726
+ "type": "rescue_modifier",
2727
+ "named": true,
2728
+ "fields": {
2729
+ "body": {
2730
+ "multiple": false,
2731
+ "required": true,
2732
+ "types": [
2733
+ {
2734
+ "type": "_arg",
2735
+ "named": true
2736
+ },
2737
+ {
2738
+ "type": "_statement",
2739
+ "named": true
2740
+ }
2741
+ ]
2742
+ },
2743
+ "handler": {
2744
+ "multiple": false,
2745
+ "required": true,
2746
+ "types": [
2747
+ {
2748
+ "type": "_expression",
2749
+ "named": true
2750
+ }
2751
+ ]
2752
+ }
2753
+ }
2754
+ },
2755
+ "rest_assignment": {
2756
+ "type": "rest_assignment",
2757
+ "named": true,
2758
+ "fields": {},
2759
+ "children": {
2760
+ "multiple": false,
2761
+ "required": false,
2762
+ "types": [
2763
+ {
2764
+ "type": "_lhs",
2765
+ "named": true
2766
+ }
2767
+ ]
2768
+ }
2769
+ },
2770
+ "retry": {
2771
+ "type": "retry",
2772
+ "named": true,
2773
+ "fields": {},
2774
+ "children": {
2775
+ "multiple": false,
2776
+ "required": false,
2777
+ "types": [
2778
+ {
2779
+ "type": "argument_list",
2780
+ "named": true
2781
+ }
2782
+ ]
2783
+ }
2784
+ },
2785
+ "return": {
2786
+ "type": "return",
2787
+ "named": true,
2788
+ "fields": {},
2789
+ "children": {
2790
+ "multiple": false,
2791
+ "required": false,
2792
+ "types": [
2793
+ {
2794
+ "type": "argument_list",
2795
+ "named": true
2796
+ }
2797
+ ]
2798
+ }
2799
+ },
2800
+ "right_assignment_list": {
2801
+ "type": "right_assignment_list",
2802
+ "named": true,
2803
+ "fields": {},
2804
+ "children": {
2805
+ "multiple": true,
2806
+ "required": true,
2807
+ "types": [
2808
+ {
2809
+ "type": "_arg",
2810
+ "named": true
2811
+ },
2812
+ {
2813
+ "type": "splat_argument",
2814
+ "named": true
2815
+ }
2816
+ ]
2817
+ }
2818
+ },
2819
+ "scope_resolution": {
2820
+ "type": "scope_resolution",
2821
+ "named": true,
2822
+ "fields": {
2823
+ "name": {
2824
+ "multiple": false,
2825
+ "required": true,
2826
+ "types": [
2827
+ {
2828
+ "type": "constant",
2829
+ "named": true
2830
+ }
2831
+ ]
2832
+ },
2833
+ "scope": {
2834
+ "multiple": false,
2835
+ "required": false,
2836
+ "types": [
2837
+ {
2838
+ "type": "_pattern_constant",
2839
+ "named": true
2840
+ },
2841
+ {
2842
+ "type": "_primary",
2843
+ "named": true
2844
+ }
2845
+ ]
2846
+ }
2847
+ }
2848
+ },
2849
+ "setter": {
2850
+ "type": "setter",
2851
+ "named": true,
2852
+ "fields": {
2853
+ "name": {
2854
+ "multiple": false,
2855
+ "required": true,
2856
+ "types": [
2857
+ {
2858
+ "type": "identifier",
2859
+ "named": true
2860
+ }
2861
+ ]
2862
+ }
2863
+ }
2864
+ },
2865
+ "singleton_class": {
2866
+ "type": "singleton_class",
2867
+ "named": true,
2868
+ "fields": {
2869
+ "body": {
2870
+ "multiple": false,
2871
+ "required": false,
2872
+ "types": [
2873
+ {
2874
+ "type": "body_statement",
2875
+ "named": true
2876
+ }
2877
+ ]
2878
+ },
2879
+ "value": {
2880
+ "multiple": false,
2881
+ "required": true,
2882
+ "types": [
2883
+ {
2884
+ "type": "_arg",
2885
+ "named": true
2886
+ }
2887
+ ]
2888
+ }
2889
+ }
2890
+ },
2891
+ "singleton_method": {
2892
+ "type": "singleton_method",
2893
+ "named": true,
2894
+ "fields": {
2895
+ "body": {
2896
+ "multiple": false,
2897
+ "required": false,
2898
+ "types": [
2899
+ {
2900
+ "type": "_arg",
2901
+ "named": true
2902
+ },
2903
+ {
2904
+ "type": "body_statement",
2905
+ "named": true
2906
+ },
2907
+ {
2908
+ "type": "rescue_modifier",
2909
+ "named": true
2910
+ }
2911
+ ]
2912
+ },
2913
+ "name": {
2914
+ "multiple": false,
2915
+ "required": true,
2916
+ "types": [
2917
+ {
2918
+ "type": "_method_name",
2919
+ "named": true
2920
+ }
2921
+ ]
2922
+ },
2923
+ "object": {
2924
+ "multiple": false,
2925
+ "required": true,
2926
+ "types": [
2927
+ {
2928
+ "type": "_arg",
2929
+ "named": true
2930
+ },
2931
+ {
2932
+ "type": "_variable",
2933
+ "named": true
2934
+ }
2935
+ ]
2936
+ },
2937
+ "parameters": {
2938
+ "multiple": false,
2939
+ "required": false,
2940
+ "types": [
2941
+ {
2942
+ "type": "method_parameters",
2943
+ "named": true
2944
+ }
2945
+ ]
2946
+ }
2947
+ }
2948
+ },
2949
+ "splat_argument": {
2950
+ "type": "splat_argument",
2951
+ "named": true,
2952
+ "fields": {},
2953
+ "children": {
2954
+ "multiple": false,
2955
+ "required": false,
2956
+ "types": [
2957
+ {
2958
+ "type": "_arg",
2959
+ "named": true
2960
+ }
2961
+ ]
2962
+ }
2963
+ },
2964
+ "splat_parameter": {
2965
+ "type": "splat_parameter",
2966
+ "named": true,
2967
+ "fields": {
2968
+ "name": {
2969
+ "multiple": false,
2970
+ "required": false,
2971
+ "types": [
2972
+ {
2973
+ "type": "identifier",
2974
+ "named": true
2975
+ }
2976
+ ]
2977
+ }
2978
+ }
2979
+ },
2980
+ "string": {
2981
+ "type": "string",
2982
+ "named": true,
2983
+ "fields": {},
2984
+ "children": {
2985
+ "multiple": true,
2986
+ "required": false,
2987
+ "types": [
2988
+ {
2989
+ "type": "escape_sequence",
2990
+ "named": true
2991
+ },
2992
+ {
2993
+ "type": "interpolation",
2994
+ "named": true
2995
+ },
2996
+ {
2997
+ "type": "string_content",
2998
+ "named": true
2999
+ }
3000
+ ]
3001
+ }
3002
+ },
3003
+ "string_array": {
3004
+ "type": "string_array",
3005
+ "named": true,
3006
+ "fields": {},
3007
+ "children": {
3008
+ "multiple": true,
3009
+ "required": false,
3010
+ "types": [
3011
+ {
3012
+ "type": "bare_string",
3013
+ "named": true
3014
+ }
3015
+ ]
3016
+ }
3017
+ },
3018
+ "subshell": {
3019
+ "type": "subshell",
3020
+ "named": true,
3021
+ "fields": {},
3022
+ "children": {
3023
+ "multiple": true,
3024
+ "required": false,
3025
+ "types": [
3026
+ {
3027
+ "type": "escape_sequence",
3028
+ "named": true
3029
+ },
3030
+ {
3031
+ "type": "interpolation",
3032
+ "named": true
3033
+ },
3034
+ {
3035
+ "type": "string_content",
3036
+ "named": true
3037
+ }
3038
+ ]
3039
+ }
3040
+ },
3041
+ "superclass": {
3042
+ "type": "superclass",
3043
+ "named": true,
3044
+ "fields": {},
3045
+ "children": {
3046
+ "multiple": false,
3047
+ "required": true,
3048
+ "types": [
3049
+ {
3050
+ "type": "_expression",
3051
+ "named": true
3052
+ }
3053
+ ]
3054
+ }
3055
+ },
3056
+ "symbol_array": {
3057
+ "type": "symbol_array",
3058
+ "named": true,
3059
+ "fields": {},
3060
+ "children": {
3061
+ "multiple": true,
3062
+ "required": false,
3063
+ "types": [
3064
+ {
3065
+ "type": "bare_symbol",
3066
+ "named": true
3067
+ }
3068
+ ]
3069
+ }
3070
+ },
3071
+ "test_pattern": {
3072
+ "type": "test_pattern",
3073
+ "named": true,
3074
+ "fields": {
3075
+ "pattern": {
3076
+ "multiple": false,
3077
+ "required": true,
3078
+ "types": [
3079
+ {
3080
+ "type": "_pattern_top_expr_body",
3081
+ "named": true
3082
+ }
3083
+ ]
3084
+ },
3085
+ "value": {
3086
+ "multiple": false,
3087
+ "required": true,
3088
+ "types": [
3089
+ {
3090
+ "type": "_arg",
3091
+ "named": true
3092
+ }
3093
+ ]
3094
+ }
3095
+ }
3096
+ },
3097
+ "then": {
3098
+ "type": "then",
3099
+ "named": true,
3100
+ "fields": {},
3101
+ "children": {
3102
+ "multiple": true,
3103
+ "required": false,
3104
+ "types": [
3105
+ {
3106
+ "type": "_statement",
3107
+ "named": true
3108
+ },
3109
+ {
3110
+ "type": "empty_statement",
3111
+ "named": true
3112
+ }
3113
+ ]
3114
+ }
3115
+ },
3116
+ "unary": {
3117
+ "type": "unary",
3118
+ "named": true,
3119
+ "fields": {
3120
+ "operand": {
3121
+ "multiple": false,
3122
+ "required": true,
3123
+ "types": [
3124
+ {
3125
+ "type": "_expression",
3126
+ "named": true
3127
+ },
3128
+ {
3129
+ "type": "_simple_numeric",
3130
+ "named": true
3131
+ },
3132
+ {
3133
+ "type": "parenthesized_statements",
3134
+ "named": true
3135
+ }
3136
+ ]
3137
+ },
3138
+ "operator": {
3139
+ "multiple": false,
3140
+ "required": true,
3141
+ "types": []
3142
+ }
3143
+ }
3144
+ },
3145
+ "undef": {
3146
+ "type": "undef",
3147
+ "named": true,
3148
+ "fields": {},
3149
+ "children": {
3150
+ "multiple": true,
3151
+ "required": true,
3152
+ "types": [
3153
+ {
3154
+ "type": "_method_name",
3155
+ "named": true
3156
+ }
3157
+ ]
3158
+ }
3159
+ },
3160
+ "unless": {
3161
+ "type": "unless",
3162
+ "named": true,
3163
+ "fields": {
3164
+ "alternative": {
3165
+ "multiple": false,
3166
+ "required": false,
3167
+ "types": [
3168
+ {
3169
+ "type": "else",
3170
+ "named": true
3171
+ },
3172
+ {
3173
+ "type": "elsif",
3174
+ "named": true
3175
+ }
3176
+ ]
3177
+ },
3178
+ "condition": {
3179
+ "multiple": false,
3180
+ "required": true,
3181
+ "types": [
3182
+ {
3183
+ "type": "_statement",
3184
+ "named": true
3185
+ }
3186
+ ]
3187
+ },
3188
+ "consequence": {
3189
+ "multiple": false,
3190
+ "required": false,
3191
+ "types": [
3192
+ {
3193
+ "type": "then",
3194
+ "named": true
3195
+ }
3196
+ ]
3197
+ }
3198
+ }
3199
+ },
3200
+ "unless_guard": {
3201
+ "type": "unless_guard",
3202
+ "named": true,
3203
+ "fields": {
3204
+ "condition": {
3205
+ "multiple": false,
3206
+ "required": true,
3207
+ "types": [
3208
+ {
3209
+ "type": "_expression",
3210
+ "named": true
3211
+ }
3212
+ ]
3213
+ }
3214
+ }
3215
+ },
3216
+ "unless_modifier": {
3217
+ "type": "unless_modifier",
3218
+ "named": true,
3219
+ "fields": {
3220
+ "body": {
3221
+ "multiple": false,
3222
+ "required": true,
3223
+ "types": [
3224
+ {
3225
+ "type": "_statement",
3226
+ "named": true
3227
+ }
3228
+ ]
3229
+ },
3230
+ "condition": {
3231
+ "multiple": false,
3232
+ "required": true,
3233
+ "types": [
3234
+ {
3235
+ "type": "_expression",
3236
+ "named": true
3237
+ }
3238
+ ]
3239
+ }
3240
+ }
3241
+ },
3242
+ "until": {
3243
+ "type": "until",
3244
+ "named": true,
3245
+ "fields": {
3246
+ "body": {
3247
+ "multiple": false,
3248
+ "required": true,
3249
+ "types": [
3250
+ {
3251
+ "type": "do",
3252
+ "named": true
3253
+ }
3254
+ ]
3255
+ },
3256
+ "condition": {
3257
+ "multiple": false,
3258
+ "required": true,
3259
+ "types": [
3260
+ {
3261
+ "type": "_statement",
3262
+ "named": true
3263
+ }
3264
+ ]
3265
+ }
3266
+ }
3267
+ },
3268
+ "until_modifier": {
3269
+ "type": "until_modifier",
3270
+ "named": true,
3271
+ "fields": {
3272
+ "body": {
3273
+ "multiple": false,
3274
+ "required": true,
3275
+ "types": [
3276
+ {
3277
+ "type": "_statement",
3278
+ "named": true
3279
+ }
3280
+ ]
3281
+ },
3282
+ "condition": {
3283
+ "multiple": false,
3284
+ "required": true,
3285
+ "types": [
3286
+ {
3287
+ "type": "_expression",
3288
+ "named": true
3289
+ }
3290
+ ]
3291
+ }
3292
+ }
3293
+ },
3294
+ "variable_reference_pattern": {
3295
+ "type": "variable_reference_pattern",
3296
+ "named": true,
3297
+ "fields": {
3298
+ "name": {
3299
+ "multiple": false,
3300
+ "required": true,
3301
+ "types": [
3302
+ {
3303
+ "type": "_nonlocal_variable",
3304
+ "named": true
3305
+ },
3306
+ {
3307
+ "type": "identifier",
3308
+ "named": true
3309
+ }
3310
+ ]
3311
+ }
3312
+ }
3313
+ },
3314
+ "when": {
3315
+ "type": "when",
3316
+ "named": true,
3317
+ "fields": {
3318
+ "body": {
3319
+ "multiple": false,
3320
+ "required": false,
3321
+ "types": [
3322
+ {
3323
+ "type": "then",
3324
+ "named": true
3325
+ }
3326
+ ]
3327
+ },
3328
+ "pattern": {
3329
+ "multiple": true,
3330
+ "required": true,
3331
+ "types": [
3332
+ {
3333
+ "type": "pattern",
3334
+ "named": true
3335
+ }
3336
+ ]
3337
+ }
3338
+ }
3339
+ },
3340
+ "while": {
3341
+ "type": "while",
3342
+ "named": true,
3343
+ "fields": {
3344
+ "body": {
3345
+ "multiple": false,
3346
+ "required": true,
3347
+ "types": [
3348
+ {
3349
+ "type": "do",
3350
+ "named": true
3351
+ }
3352
+ ]
3353
+ },
3354
+ "condition": {
3355
+ "multiple": false,
3356
+ "required": true,
3357
+ "types": [
3358
+ {
3359
+ "type": "_statement",
3360
+ "named": true
3361
+ }
3362
+ ]
3363
+ }
3364
+ }
3365
+ },
3366
+ "while_modifier": {
3367
+ "type": "while_modifier",
3368
+ "named": true,
3369
+ "fields": {
3370
+ "body": {
3371
+ "multiple": false,
3372
+ "required": true,
3373
+ "types": [
3374
+ {
3375
+ "type": "_statement",
3376
+ "named": true
3377
+ }
3378
+ ]
3379
+ },
3380
+ "condition": {
3381
+ "multiple": false,
3382
+ "required": true,
3383
+ "types": [
3384
+ {
3385
+ "type": "_expression",
3386
+ "named": true
3387
+ }
3388
+ ]
3389
+ }
3390
+ }
3391
+ },
3392
+ "yield": {
3393
+ "type": "yield",
3394
+ "named": true,
3395
+ "fields": {},
3396
+ "children": {
3397
+ "multiple": false,
3398
+ "required": false,
3399
+ "types": [
3400
+ {
3401
+ "type": "argument_list",
3402
+ "named": true
3403
+ }
3404
+ ]
3405
+ }
3406
+ },
3407
+ "character": {
3408
+ "type": "character",
3409
+ "named": true
3410
+ },
3411
+ "class_variable": {
3412
+ "type": "class_variable",
3413
+ "named": true
3414
+ },
3415
+ "comment": {
3416
+ "type": "comment",
3417
+ "named": true
3418
+ },
3419
+ "encoding": {
3420
+ "type": "encoding",
3421
+ "named": true
3422
+ },
3423
+ "escape_sequence": {
3424
+ "type": "escape_sequence",
3425
+ "named": true
3426
+ },
3427
+ "false": {
3428
+ "type": "false",
3429
+ "named": true
3430
+ },
3431
+ "file": {
3432
+ "type": "file",
3433
+ "named": true
3434
+ },
3435
+ "float": {
3436
+ "type": "float",
3437
+ "named": true
3438
+ },
3439
+ "global_variable": {
3440
+ "type": "global_variable",
3441
+ "named": true
3442
+ },
3443
+ "heredoc_beginning": {
3444
+ "type": "heredoc_beginning",
3445
+ "named": true
3446
+ },
3447
+ "heredoc_content": {
3448
+ "type": "heredoc_content",
3449
+ "named": true
3450
+ },
3451
+ "heredoc_end": {
3452
+ "type": "heredoc_end",
3453
+ "named": true
3454
+ },
3455
+ "instance_variable": {
3456
+ "type": "instance_variable",
3457
+ "named": true
3458
+ },
3459
+ "integer": {
3460
+ "type": "integer",
3461
+ "named": true
3462
+ },
3463
+ "line": {
3464
+ "type": "line",
3465
+ "named": true
3466
+ },
3467
+ "self": {
3468
+ "type": "self",
3469
+ "named": true
3470
+ },
3471
+ "simple_symbol": {
3472
+ "type": "simple_symbol",
3473
+ "named": true
3474
+ },
3475
+ "string_content": {
3476
+ "type": "string_content",
3477
+ "named": true
3478
+ },
3479
+ "super": {
3480
+ "type": "super",
3481
+ "named": true
3482
+ },
3483
+ "true": {
3484
+ "type": "true",
3485
+ "named": true
3486
+ },
3487
+ "uninterpreted": {
3488
+ "type": "uninterpreted",
3489
+ "named": true
3490
+ }
3491
+ };
3492
+ export default RubyTypes;