@willbooster/tree-sitter-go 0.0.0-placeholder.0 → 1.0.0

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