meta-language 1.0.0

A self-describing links-network core for lossless language representation
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
{
  "generatedBy": "js/scripts/build-concept-records.mjs",
  "source": "parity/naming/canonical-concepts.json",
  "concepts": [
    {"id":"grammar.rule","phrase":"rule","role":"concept","definition":"A named grammar production that binds a non-terminal to an expression.","constraints":["Only the native Make grammar defines this construct.","A rule binds exactly one nonterminal name to one grammar expression.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"bnf","name":"::="},{"source":"ebnf","name":"="},{"source":"abnf","name":"="},{"source":"peg","name":"="},{"source":"meta-language","name":"rule"},{"source":"English grammar surface","name":"rule"},{"source":"Russian grammar surface","name":"правило"}],"formerNames":[]},
    {"id":"grammar.sequence","phrase":"sequence","role":"concept","definition":"An ordered concatenation of grammar expressions.","constraints":["A sequence matches its expressions in order, each after the previous one.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"bnf","name":"a b"},{"source":"ebnf","name":"a , b"},{"source":"peg","name":"a b"},{"source":"gbnf","name":"a b"},{"source":"meta-language","name":"sequence"},{"source":"English grammar surface","name":"sequence"},{"source":"Russian grammar surface","name":"последовательность"}],"formerNames":["grammar::expr::sequence"]},
    {"id":"grammar.ordered-choice","phrase":"ordered choice","role":"concept","definition":"A prioritized grammar alternative where earlier matches win.","constraints":["The first alternative that matches wins; later alternatives are not tried.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"peg","name":"/"},{"source":"pest","name":"|"},{"source":"meta-language","name":"ordered choice"},{"source":"English grammar surface","name":"ordered choice"},{"source":"Russian grammar surface","name":"упорядоченный выбор"}],"formerNames":[]},
    {"id":"grammar.unordered-choice","phrase":"unordered choice","role":"concept","definition":"A grammar alternative whose branches are not semantically prioritized.","constraints":["Every alternative is a possible match; none is preferred.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"bnf","name":"|"},{"source":"ebnf","name":"|"},{"source":"abnf","name":"/"},{"source":"antlr","name":"|"},{"source":"lark","name":"|"},{"source":"meta-language","name":"unordered choice"},{"source":"English grammar surface","name":"choice"},{"source":"Russian grammar surface","name":"выбор"}],"formerNames":[]},
    {"id":"grammar.choice","phrase":"choice","role":"concept","definition":"A grammar alternative among expressions, ordered or unordered.","constraints":["A choice is either an ordered choice or an unordered choice.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"meta-language","name":"choice"}],"formerNames":["grammar::expr::choice"]},
    {"id":"grammar.counted-repetition","phrase":"counted repetition","role":"concept","definition":"A counted repetition with explicit minimum and optional maximum bounds.","constraints":["The minimum count is at most the maximum count when a maximum is given.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"ebnf","name":"{ }"},{"source":"abnf","name":"m*n"},{"source":"gbnf","name":"{m,n}"},{"source":"meta-language","name":"counted repetition"},{"source":"English grammar surface","name":"repetition"},{"source":"Russian grammar surface","name":"повторение"}],"formerNames":["grammar.repetition","repeat-range","grammar::expr::repeat"]},
    {"id":"grammar.zero-or-more-repetition","phrase":"zero or more repetition","role":"concept","definition":"A repetition that accepts zero or more occurrences.","constraints":["Only the native Regex grammar defines this construct.","The repetition also accepts no occurrence at all.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"peg","name":"*"},{"source":"ebnf","name":"{ }"},{"source":"antlr","name":"*"},{"source":"lark","name":"*"},{"source":"gbnf","name":"*"},{"source":"English grammar surface","name":"zero or more"},{"source":"Russian grammar surface","name":"ноль или более"},{"source":"native:regex","name":"zero_or_more"}],"formerNames":["grammar.zero-or-more","zero-or-more","grammar::expr::zero-or-more"]},
    {"id":"grammar.one-or-more-repetition","phrase":"one or more repetition","role":"concept","definition":"A repetition that accepts one or more occurrences.","constraints":["Only the native Regex grammar defines this construct.","The repetition requires at least one occurrence.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"peg","name":"+"},{"source":"antlr","name":"+"},{"source":"lark","name":"+"},{"source":"gbnf","name":"+"},{"source":"meta-language","name":"one or more repetition"},{"source":"English grammar surface","name":"one or more"},{"source":"Russian grammar surface","name":"один или более"},{"source":"native:regex","name":"one_or_more"}],"formerNames":["grammar.one-or-more","one-or-more","grammar::expr::one-or-more"]},
    {"id":"grammar.optional-expression","phrase":"optional expression","role":"concept","definition":"An expression that may be present or absent.","constraints":["Only the native Regex grammar defines this construct.","The expression accepts zero or one occurrence of its inner expression.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"English grammar surface","name":"optional"},{"source":"Russian grammar surface","name":"необязательный"},{"source":"peg","name":"e?"},{"source":"ebnf","name":"[ e ]"},{"source":"meta-language","name":"optional expression"},{"source":"native:regex","name":"optional"}],"formerNames":["grammar.optional","optional","grammar::expr::optional"]},
    {"id":"grammar.terminal","phrase":"terminal","role":"concept","definition":"A literal terminal token matched directly in the input.","constraints":["The literal text is matched exactly, letter case included.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"bnf","name":"\"lit\""},{"source":"ebnf","name":"\"lit\""},{"source":"abnf","name":"%i\"lit\""},{"source":"peg","name":"\"lit\""},{"source":"lark","name":"\"lit\""},{"source":"tree-sitter","name":"token"},{"source":"English grammar surface","name":"terminal"},{"source":"Russian grammar surface","name":"терминал"}],"formerNames":["grammar::expr::terminal"]},
    {"id":"grammar.case-insensitive-terminal","phrase":"case insensitive terminal","role":"concept","definition":"A literal terminal token matched in the input without regard to letter case.","constraints":["The literal text is matched with letter case ignored.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"abnf","name":"\"lit\""},{"source":"lark","name":"\"lit\"i"},{"source":"meta-language","name":"case-insensitive terminal"}],"formerNames":["grammar::expr::terminal-insensitive"]},
    {"id":"grammar.nonterminal","phrase":"nonterminal","role":"concept","definition":"A reference to another named grammar rule.","constraints":["The referenced rule is defined in the same grammar.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"bnf","name":"<name>"},{"source":"ebnf","name":"name"},{"source":"peg","name":"name"},{"source":"antlr","name":"name"},{"source":"lark","name":"name"},{"source":"meta-language","name":"nonterminal"},{"source":"English grammar surface","name":"non-terminal"},{"source":"Russian grammar surface","name":"нетерминал"}],"formerNames":["grammar.non-terminal","non-terminal","grammar::expr::non-terminal"]},
    {"id":"grammar.character-class","phrase":"character class","role":"concept","definition":"A set of characters accepted at one input position.","constraints":["Only the native Regex grammar defines this construct.","A character class lists characters and character ranges, and may be negated.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"English grammar surface","name":"character class"},{"source":"Russian grammar surface","name":"класс символов"},{"source":"peg","name":"[a-z]"},{"source":"gbnf","name":"[a-z]"},{"source":"meta-language","name":"character class"},{"source":"native:regex","name":"character_class"}],"formerNames":["grammar.char-class","char-class","grammar::expr::char-class"]},
    {"id":"grammar.character-range","phrase":"character range","role":"concept","definition":"An inclusive range between two character endpoints.","constraints":["The first endpoint is not greater than the second endpoint.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"abnf","name":"%x30-39"},{"source":"lark","name":"\"a\"..\"z\""},{"source":"meta-language","name":"'a'..='z'"},{"source":"English grammar surface","name":"character range"},{"source":"Russian grammar surface","name":"диапазон символов"}],"formerNames":["grammar.char-range","char-range","grammar::expr::char-range"]},
    {"id":"grammar.any-character","phrase":"any character","role":"concept","definition":"A wildcard grammar expression that accepts any single character.","constraints":["Only the native Regex grammar defines this construct.","The expression consumes exactly one character and fails at the end of input.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"peg","name":"."},{"source":"lark","name":"."},{"source":"gbnf","name":"."},{"source":"meta-language","name":"any character"},{"source":"English grammar surface","name":"any character"},{"source":"Russian grammar surface","name":"любой символ"},{"source":"native:regex","name":"any_character"}],"formerNames":["grammar.any-char","any-char","grammar::expr::any-char"]},
    {"id":"grammar.positive-predicate","phrase":"positive predicate","role":"concept","definition":"A positive lookahead predicate that tests an expression without consuming input.","constraints":["The predicate consumes no input whether it succeeds or fails.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"peg","name":"&e"},{"source":"meta-language","name":"positive predicate"},{"source":"English grammar surface","name":"positive predicate"},{"source":"Russian grammar surface","name":"положительный предикат"}],"formerNames":["and-predicate","grammar::expr::and"]},
    {"id":"grammar.negative-predicate","phrase":"negative predicate","role":"concept","definition":"A negative lookahead predicate that rejects when an expression would match.","constraints":["The predicate consumes no input whether it succeeds or fails.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"peg","name":"!e"},{"source":"meta-language","name":"negative predicate"},{"source":"English grammar surface","name":"negative predicate"},{"source":"Russian grammar surface","name":"отрицательный предикат"}],"formerNames":["not-predicate","grammar::expr::not"]},
    {"id":"grammar.capture","phrase":"capture","role":"concept","definition":"A labelled or anonymous capture of a grammar subexpression.","constraints":["A labelled capture carries its label as a readable name.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"meta-language","name":"name:e"},{"source":"antlr","name":"label=e"},{"source":"lark","name":"name:e"},{"source":"English grammar surface","name":"capture"},{"source":"Russian grammar surface","name":"захват"}],"formerNames":["grammar::expr::capture"]},
    {"id":"grammar.feature-union-form","phrase":"feature union form","role":"concept","definition":"A grammar expression written with one of the feature union forms of docs/grammar/feature-union.md, such as a precedence, predicate, mode, byte class, macro expansion, embedded language or error recovery form.","constraints":["The form keeps its own head and fields; the native executor gives it its meaning.","A grammar expression of this kind is one variant of the grammar expression tree.","The link codec carries the form as its native listing spelling."],"sourceAliases":[{"source":"meta-language","name":"feature form"}],"formerNames":[]},
    {"id":"grammar.empty-expression","phrase":"empty expression","role":"concept","definition":"A grammar expression that accepts the empty string.","constraints":["The expression always succeeds and consumes no input.","A grammar expression of this kind is one variant of the grammar expression tree.","Importers and emitters of every grammar format map it to the same concept."],"sourceAliases":[{"source":"bnf","name":"empty alternative"},{"source":"ebnf","name":"empty alternative"},{"source":"meta-language","name":"empty expression"},{"source":"English grammar surface","name":"empty"},{"source":"Russian grammar surface","name":"пусто"}],"formerNames":["grammar.empty","empty","grammar::expr::empty"]},
    {"id":"grammar.atomic-rule","phrase":"atomic rule","role":"concept","definition":"A grammar rule whose expression matches without implicit whitespace between its parts.","constraints":["An atomic rule is a rule kind; its expression is an ordinary grammar expression.","Grammar formats without atomic rules keep the kind as a fidelity note."],"sourceAliases":[{"source":"pest","name":"@{ }"}],"formerNames":["rule-kind-atomic"]},
    {"id":"grammar.silent-rule","phrase":"silent rule","role":"concept","definition":"A grammar rule that matches without producing a parse tree node of its own.","constraints":["A silent rule is a rule kind; its expression is an ordinary grammar expression.","Grammar formats without silent rules keep the kind as a fidelity note."],"sourceAliases":[{"source":"pest","name":"_{ }"},{"source":"tree-sitter","name":"_name"}],"formerNames":["rule-kind-silent"]},
    {"id":"grammar.token-rule","phrase":"token rule","role":"concept","definition":"A grammar rule whose whole match is reported as one lexical token.","constraints":["A token rule is a rule kind; its expression is an ordinary grammar expression.","Grammar formats without token rules keep the kind as a fidelity note."],"sourceAliases":[{"source":"tree-sitter","name":"token(e)"},{"source":"antlr","name":"LexerRule"}],"formerNames":["rule-kind-token"]},
    {"id":"grammar.lexical-precedence","phrase":"lexical precedence","role":"concept","definition":"A priority that decides which token the lexer produces when several token rules match the same input.","constraints":["Lexical precedence orders token rules; it never decides between parse alternatives.","It stays distinct from syntactic precedence even where both are spelled alike, as prec inside and outside token in tree-sitter.","Grammar formats without lexical precedence keep it as a fidelity note."],"sourceAliases":[{"source":"tree-sitter","name":"token(prec(n, e))"},{"source":"lark","name":"TERMINAL.n"},{"source":"antlr","name":"lexer rule order"},{"source":"meta-language","name":"lexical precedence"}],"formerNames":[]},
    {"id":"grammar.syntactic-precedence","phrase":"syntactic precedence","role":"concept","definition":"A priority and associativity that decide between parse alternatives when a grammar is ambiguous.","constraints":["Syntactic precedence resolves conflicts between parse alternatives; it never decides which token the lexer produces.","It stays distinct from lexical precedence even where both are spelled alike, as prec inside and outside token in tree-sitter.","Grammar formats without syntactic precedence keep it as a fidelity note."],"sourceAliases":[{"source":"tree-sitter","name":"prec(n, e)"},{"source":"tree-sitter","name":"prec.left(n, e)"},{"source":"tree-sitter","name":"prec.right(n, e)"},{"source":"lark","name":"rule.n"},{"source":"bison","name":"%left"},{"source":"bison","name":"%right"},{"source":"bison","name":"%nonassoc"},{"source":"meta-language","name":"syntactic precedence"}],"formerNames":[]},
    {"id":"grammar.grammar","phrase":"grammar","role":"concept","definition":"A named set of grammar rules with a start rule.","constraints":["Every nonterminal a rule references names a rule of the grammar.","The grammar round-trips through links without losing a rule."],"sourceAliases":[{"source":"antlr","name":"grammar Name;"},{"source":"meta-language","name":"grammar"}],"formerNames":[]},
    {"id":"grammar.character-class-item.character","phrase":"character","role":"concept","definition":"A single character listed in a character class.","constraints":["The item matches exactly the listed character."],"sourceAliases":[{"source":"Rust","name":"CharClassItem::Char"}],"formerNames":["grammar::char-class-item::char"],"represents":"grammar.value.character"},
    {"id":"grammar.character-class-item.character-range","phrase":"character range","role":"concept","definition":"A character range listed in a character class.","constraints":["The item matches every character between its two endpoints inclusive."],"sourceAliases":[{"source":"Rust","name":"CharClassItem::Range"}],"formerNames":["grammar::char-class-item::range"],"represents":"grammar.character-range"},
    {"id":"grammar.value.absent-value","phrase":"absent value","role":"concept","definition":"A grammar field value that is absent.","constraints":["An absent value carries no inner value.","A grammar link stores the value under this tag so the grammar reads back unchanged."],"sourceAliases":[{"source":"Rust","name":"None"},{"source":"JavaScript","name":"null"}],"formerNames":["grammar::value::none"]},
    {"id":"grammar.value.present-value","phrase":"present value","role":"concept","definition":"A grammar field value that is present and carries an inner value.","constraints":["A present value carries exactly one inner value.","A grammar link stores the value under this tag so the grammar reads back unchanged."],"sourceAliases":[{"source":"Rust","name":"Some"}],"formerNames":["grammar::value::some"]},
    {"id":"grammar.value.string","phrase":"string","role":"concept","definition":"A text value stored in a grammar link.","constraints":["The text is stored as written, escapes resolved.","A grammar link stores the value under this tag so the grammar reads back unchanged."],"sourceAliases":[{"source":"Rust","name":"String"}],"formerNames":[],"represents":"grammar.string"},
    {"id":"grammar.value.character","phrase":"character","role":"concept","definition":"A single Unicode scalar value stored in a grammar link.","constraints":["The value is exactly one Unicode scalar value.","A grammar link stores the value under this tag so the grammar reads back unchanged."],"sourceAliases":[{"source":"Rust","name":"char"}],"formerNames":["grammar::value::char"]},
    {"id":"grammar.value.boolean-value","phrase":"boolean value","role":"concept","definition":"A truth value stored in a grammar link.","constraints":["The value is true or false.","A grammar link stores the value under this tag so the grammar reads back unchanged."],"sourceAliases":[{"source":"Rust","name":"bool"}],"formerNames":["grammar::value::bool"],"represents":"grammar.boolean-value"},
    {"id":"grammar.value.natural-number","phrase":"natural number","role":"concept","definition":"A non-negative whole number stored in a grammar link.","constraints":["The value is zero or a positive whole number.","A grammar link stores the value under this tag so the grammar reads back unchanged."],"sourceAliases":[{"source":"Rust","name":"usize"}],"formerNames":["grammar::value::usize"]},
    {"id":"grammar.value.rule-kind","phrase":"rule kind","role":"concept","definition":"The kind of a grammar rule: normal, atomic, silent or token.","constraints":["The value is one of the rule kinds meta-language records.","A grammar link stores the value under this tag so the grammar reads back unchanged."],"sourceAliases":[{"source":"Rust","name":"RuleKind"}],"formerNames":[]},
    {"id":"grammar.value.format","phrase":"format","role":"concept","definition":"The grammar notation a grammar is imported from or emitted as.","constraints":["The value is one of the grammar formats meta-language imports or emits.","A grammar link stores the value under this tag so the grammar reads back unchanged."],"sourceAliases":[{"source":"Rust","name":"GrammarFormat"}],"formerNames":[]},
    {"id":"grammar.expression","phrase":"expression","role":"concept","definition":"A rule for a complete expression of a grammar.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"expression"},{"source":"Russian grammar surface","name":"выражение"},{"source":"native:c","name":"expression"},{"source":"native:go","name":"expression"},{"source":"native:java","name":"expression"},{"source":"native:javascript","name":"expression"},{"source":"native:lean","name":"expression"},{"source":"native:rust","name":"expression"},{"source":"native:solidity","name":"expression"},{"source":"native:tsx","name":"expression"},{"source":"native:typescript","name":"expression"}],"formerNames":[]},
    {"id":"grammar.term","phrase":"term","role":"concept","definition":"A rule for an operand of addition or subtraction in an expression grammar.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"term"},{"source":"Russian grammar surface","name":"слагаемое"},{"source":"native:regex","name":"term"},{"source":"native:rocq","name":"term"}],"formerNames":[]},
    {"id":"grammar.factor","phrase":"factor","role":"concept","definition":"A rule for an operand of multiplication or division in an expression grammar.","constraints":["Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"factor"},{"source":"Russian grammar surface","name":"множитель"}],"formerNames":[]},
    {"id":"grammar.number","phrase":"number","role":"concept","definition":"A rule for a numeric literal.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"number"},{"source":"Russian grammar surface","name":"число"},{"source":"native:javascript","name":"number"},{"source":"native:json","name":"number"},{"source":"native:json5","name":"number"},{"source":"native:lean","name":"number"},{"source":"native:racket","name":"number"},{"source":"native:rocq","name":"number"},{"source":"native:scheme","name":"number"},{"source":"native:solidity","name":"number"},{"source":"native:tsx","name":"number"},{"source":"native:typescript","name":"number"}],"formerNames":[]},
    {"id":"grammar.digit","phrase":"digit","role":"concept","definition":"A rule for one decimal digit.","constraints":["Only the native Rocq grammar defines this construct.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"digit"},{"source":"Russian grammar surface","name":"цифра"},{"source":"native:rocq","name":"digit"}],"formerNames":[]},
    {"id":"grammar.letter","phrase":"letter","role":"concept","definition":"A rule for one alphabetic letter.","constraints":["Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"letter"},{"source":"Russian grammar surface","name":"буква"}],"formerNames":[]},
    {"id":"grammar.identifier","phrase":"identifier","role":"concept","definition":"A rule for a name made of letters, digits and underscores that starts with a letter.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"identifier"},{"source":"Russian grammar surface","name":"идентификатор"},{"source":"native:c","name":"identifier"},{"source":"native:go","name":"identifier"},{"source":"native:java","name":"identifier"},{"source":"native:javascript","name":"identifier"},{"source":"native:lean","name":"identifier"},{"source":"native:proto","name":"identifier"},{"source":"native:rocq","name":"identifier"},{"source":"native:rust","name":"identifier"},{"source":"native:solidity","name":"identifier"},{"source":"native:tsx","name":"identifier"},{"source":"native:typescript","name":"identifier"}],"formerNames":[]},
    {"id":"grammar.statement","phrase":"statement","role":"concept","definition":"A rule for one statement of a program grammar.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"statement"},{"source":"Russian grammar surface","name":"оператор"},{"source":"native:c","name":"statement"},{"source":"native:go","name":"statement"},{"source":"native:java","name":"statement"},{"source":"native:javascript","name":"statement"},{"source":"native:rust","name":"statement"},{"source":"native:solidity","name":"statement"},{"source":"native:tsx","name":"statement"},{"source":"native:typescript","name":"statement"}],"formerNames":[]},
    {"id":"grammar.item","phrase":"item","role":"concept","definition":"A rule for one element of a list.","constraints":["Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"item"},{"source":"Russian grammar surface","name":"элемент"}],"formerNames":[]},
    {"id":"grammar.list","phrase":"list","role":"concept","definition":"A rule for a delimited sequence of items.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"list"},{"source":"Russian grammar surface","name":"список"},{"source":"native:graphql","name":"list_value"},{"source":"native:json","name":"array"},{"source":"native:json5","name":"array"},{"source":"native:lean","name":"list"},{"source":"native:make","name":"list"},{"source":"native:racket","name":"vector"},{"source":"native:scheme","name":"vector"}],"formerNames":[]},
    {"id":"grammar.value","phrase":"value","role":"concept","definition":"A rule for any value of a data grammar.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"value"},{"source":"Russian grammar surface","name":"значение"},{"source":"native:graphql","name":"value"},{"source":"native:json","name":"value"},{"source":"native:json5","name":"value"}],"formerNames":[]},
    {"id":"grammar.name","phrase":"name","role":"concept","definition":"A rule for the key of an object member.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"name"},{"source":"Russian grammar surface","name":"имя"},{"source":"native:graphql","name":"name"},{"source":"native:java","name":"name"},{"source":"native:lean","name":"name"},{"source":"native:make","name":"name"},{"source":"native:rocq","name":"name"}],"formerNames":[]},
    {"id":"grammar.object","phrase":"object","role":"concept","definition":"A rule for a delimited set of named members.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"object"},{"source":"Russian grammar surface","name":"объект"},{"source":"native:graphql","name":"object_value"},{"source":"native:javascript","name":"object"},{"source":"native:json","name":"object"},{"source":"native:json5","name":"object"},{"source":"native:tsx","name":"object"},{"source":"native:typescript","name":"object"}],"formerNames":[]},
    {"id":"grammar.member","phrase":"member","role":"concept","definition":"A rule for one name and value pair of an object.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"member"},{"source":"Russian grammar surface","name":"член"},{"source":"native:graphql","name":"object_field"},{"source":"native:json","name":"pair"},{"source":"native:json5","name":"member"}],"formerNames":[]},
    {"id":"grammar.string","phrase":"string","role":"concept","definition":"A rule for a quoted text literal.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"string"},{"source":"Russian grammar surface","name":"строка"},{"source":"native:c","name":"string"},{"source":"native:csv","name":"quoted"},{"source":"native:graphql","name":"string_value"},{"source":"native:javascript","name":"string"},{"source":"native:json","name":"string"},{"source":"native:json5","name":"string"},{"source":"native:lean","name":"string"},{"source":"native:make","name":"string"},{"source":"native:proto","name":"string"},{"source":"native:racket","name":"string"},{"source":"native:rocq","name":"string"},{"source":"native:scheme","name":"string"},{"source":"native:solidity","name":"string"},{"source":"native:tsx","name":"string"},{"source":"native:typescript","name":"string"}],"formerNames":[]},
    {"id":"grammar.boolean-value","phrase":"boolean value","role":"concept","definition":"A rule for the literals true and false.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"boolean"},{"source":"Russian grammar surface","name":"логическое"},{"source":"native:csv","name":"boolean"},{"source":"native:graphql","name":"boolean_value"},{"source":"native:lean","name":"boolean"},{"source":"native:proto","name":"boolean"},{"source":"native:racket","name":"boolean"},{"source":"native:scheme","name":"boolean"}],"formerNames":["grammar.boolean"]},
    {"id":"grammar.null","phrase":"null","role":"concept","definition":"A rule for the literal that denotes no value.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Grammar inference and the grammar surface translation use this concept to name rules.","The English and Russian grammar surfaces translate the rule name through this concept."],"sourceAliases":[{"source":"English grammar surface","name":"null"},{"source":"Russian grammar surface","name":"нуль"},{"source":"native:c","name":"null"},{"source":"native:go","name":"nil"},{"source":"native:graphql","name":"null_value"},{"source":"native:javascript","name":"null"},{"source":"native:json","name":"null"},{"source":"native:json5","name":"null"},{"source":"native:tsx","name":"null"},{"source":"native:typescript","name":"null"}],"formerNames":[]},
    {"id":"grammar.atmosphere","phrase":"atmosphere","role":"concept","definition":"A rule for the white space and comments between data, which the reader skips.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"atmosphere"},{"source":"native:scheme","name":"atmosphere"}],"formerNames":[]},
    {"id":"grammar.block-comment","phrase":"block comment","role":"concept","definition":"A rule for a comment between an opening and a closing delimiter that may nest.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:java","name":"block_comment"},{"source":"native:racket","name":"block_comment"},{"source":"native:rust","name":"block_comment"},{"source":"native:scheme","name":"block_comment"}],"formerNames":[]},
    {"id":"grammar.character-literal","phrase":"character literal","role":"concept","definition":"A rule for a literal that denotes a single character.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:c","name":"character_literal"},{"source":"native:java","name":"character_literal"},{"source":"native:lean","name":"character"},{"source":"native:racket","name":"character"},{"source":"native:rust","name":"character_literal"},{"source":"native:scheme","name":"character"}],"formerNames":[]},
    {"id":"grammar.comment","phrase":"comment","role":"concept","definition":"A rule for a comment, text the reader skips as no part of the data.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:c","name":"comment"},{"source":"native:diff","name":"comment"},{"source":"native:go","name":"comment"},{"source":"native:graphql","name":"comment"},{"source":"native:ini","name":"comment"},{"source":"native:javascript","name":"comment"},{"source":"native:json","name":"comment"},{"source":"native:json5","name":"comment"},{"source":"native:lean","name":"comment"},{"source":"native:make","name":"comment"},{"source":"native:proto","name":"comment"},{"source":"native:racket","name":"comment"},{"source":"native:rocq","name":"comment"},{"source":"native:rust","name":"comment"},{"source":"native:scheme","name":"comment"},{"source":"native:solidity","name":"comment"},{"source":"native:tsx","name":"comment"},{"source":"native:typescript","name":"comment"}],"formerNames":[]},
    {"id":"grammar.csv.floating-point-number","phrase":"floating point number","role":"concept","definition":"A rule for a CSV field that holds a number with a fractional part or an exponent.","constraints":["Only the native CSV grammar defines this construct."],"sourceAliases":[{"source":"native:csv","name":"float"}],"formerNames":[]},
    {"id":"grammar.csv.integer","phrase":"integer","role":"concept","definition":"A rule for a CSV field that holds a whole number.","constraints":["Only the native CSV grammar defines this construct."],"sourceAliases":[{"source":"native:csv","name":"number"}],"formerNames":[]},
    {"id":"grammar.csv.unquoted-text","phrase":"unquoted text","role":"concept","definition":"A rule for a CSV field of plain text without quotation marks.","constraints":["Only the native CSV grammar defines this construct."],"sourceAliases":[{"source":"native:csv","name":"text"}],"formerNames":[]},
    {"id":"grammar.datum","phrase":"datum","role":"concept","definition":"A rule for one external representation of a value that the reader reads as data.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"datum"},{"source":"native:scheme","name":"datum"}],"formerNames":[]},
    {"id":"grammar.diff.added-line","phrase":"added line","role":"concept","definition":"A rule for a line the change adds, marked with a plus sign.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"addition"}],"formerNames":[]},
    {"id":"grammar.diff.binary-file-change","phrase":"binary file change","role":"concept","definition":"A rule for the line that reports two binary files differ.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"binary_change"}],"formerNames":[]},
    {"id":"grammar.diff.change","phrase":"change","role":"concept","definition":"A rule for one added, deleted or context line of a hunk.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"change"}],"formerNames":[]},
    {"id":"grammar.diff.change-sequence","phrase":"change sequence","role":"concept","definition":"A rule for the consecutive changed and context lines of one hunk.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"changes"}],"formerNames":[]},
    {"id":"grammar.diff.commit-hash","phrase":"commit hash","role":"concept","definition":"A rule for an abbreviated or full hexadecimal object hash.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"commit"}],"formerNames":[]},
    {"id":"grammar.diff.context-line","phrase":"context line","role":"concept","definition":"A rule for an unchanged line shown around the changes of a hunk.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"context"}],"formerNames":[]},
    {"id":"grammar.diff.deleted-line","phrase":"deleted line","role":"concept","definition":"A rule for a line the change deletes, marked with a minus sign.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"deletion"}],"formerNames":[]},
    {"id":"grammar.diff.difference-command","phrase":"difference command","role":"concept","definition":"A rule for the diff command line that opens a file difference.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"command"}],"formerNames":[]},
    {"id":"grammar.diff.file-change","phrase":"file change","role":"concept","definition":"A rule for a header line that creates, deletes, renames or copies a file or changes its mode.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"file_change"}],"formerNames":[]},
    {"id":"grammar.diff.file-difference","phrase":"file difference","role":"concept","definition":"A rule for the difference of one file: its diff command, header lines and hunks.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"block"}],"formerNames":[]},
    {"id":"grammar.diff.file-header","phrase":"file header","role":"concept","definition":"A rule for one extended header line of a file difference block.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"header"}],"formerNames":[]},
    {"id":"grammar.diff.file-mode","phrase":"file mode","role":"concept","definition":"A rule for the octal permission mode of a file.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"mode"}],"formerNames":[]},
    {"id":"grammar.diff.file-name","phrase":"file name","role":"concept","definition":"A rule for the path of a file a patch line names.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"filename"}],"formerNames":[]},
    {"id":"grammar.diff.hunk","phrase":"hunk","role":"concept","definition":"A rule for one hunk: its hunk header and the changed lines it covers.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"hunk"}],"formerNames":[]},
    {"id":"grammar.diff.hunk-header","phrase":"hunk header","role":"concept","definition":"A rule for the double-at line that gives the line ranges of a hunk.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"location"}],"formerNames":[]},
    {"id":"grammar.diff.hunk-sequence","phrase":"hunk sequence","role":"concept","definition":"A rule for the consecutive hunks of one file difference.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"hunks"}],"formerNames":[]},
    {"id":"grammar.diff.index-line","phrase":"index line","role":"concept","definition":"A rule for the index line with the object hashes of both file versions.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"index"}],"formerNames":[]},
    {"id":"grammar.diff.line-range","phrase":"line range","role":"concept","definition":"A rule for the start line and line count of one side of a hunk.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"line_range"}],"formerNames":[]},
    {"id":"grammar.diff.new-file-line","phrase":"new file line","role":"concept","definition":"A rule for the three-plus line that names the changed file.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"new_file"}],"formerNames":[]},
    {"id":"grammar.diff.old-file-line","phrase":"old file line","role":"concept","definition":"A rule for the three-minus line that names the original file.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"old_file"}],"formerNames":[]},
    {"id":"grammar.diff.patch-line","phrase":"patch line","role":"concept","definition":"A rule for one line of a patch outside a file difference block.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"line"}],"formerNames":[]},
    {"id":"grammar.diff.similarity-index","phrase":"similarity index","role":"concept","definition":"A rule for the line that gives how similar a renamed or copied file is.","constraints":["Only the native diff grammar defines this construct."],"sourceAliases":[{"source":"native:diff","name":"similarity"}],"formerNames":[]},
    {"id":"grammar.document","phrase":"document","role":"concept","definition":"A rule for the whole text of a data or document format.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:csv","name":"document"},{"source":"native:diff","name":"source"},{"source":"native:graphql","name":"document"},{"source":"native:ini","name":"document"},{"source":"native:json","name":"document"},{"source":"native:json5","name":"file"}],"formerNames":[]},
    {"id":"grammar.escape-sequence","phrase":"escape sequence","role":"concept","definition":"A rule for a backslash sequence inside a string that stands for one character.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:c","name":"escape_sequence"},{"source":"native:go","name":"escape_sequence"},{"source":"native:java","name":"escape_sequence"},{"source":"native:javascript","name":"escape_sequence"},{"source":"native:lean","name":"escape_sequence"},{"source":"native:proto","name":"escape_sequence"},{"source":"native:racket","name":"escape_sequence"},{"source":"native:rust","name":"escape_sequence"},{"source":"native:scheme","name":"escape_sequence"},{"source":"native:solidity","name":"escape_sequence"},{"source":"native:tsx","name":"escape_sequence"},{"source":"native:typescript","name":"escape_sequence"}],"formerNames":[]},
    {"id":"grammar.false-value","phrase":"false value","role":"concept","definition":"A rule for the literal false alone.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:c","name":"false"},{"source":"native:go","name":"false"},{"source":"native:java","name":"false"},{"source":"native:javascript","name":"false"},{"source":"native:json","name":"false"},{"source":"native:json5","name":"false"},{"source":"native:proto","name":"false"},{"source":"native:solidity","name":"false"},{"source":"native:tsx","name":"false"},{"source":"native:typescript","name":"false"}],"formerNames":[]},
    {"id":"grammar.identifier-name","phrase":"identifier name","role":"concept","definition":"A rule for an ECMAScript identifier name used as an unquoted member name.","constraints":["Only the native JSON5 grammar defines this construct."],"sourceAliases":[{"source":"native:json5","name":"identifier"}],"formerNames":[]},
    {"id":"grammar.ini.section","phrase":"section","role":"concept","definition":"A rule for an INI section: its bracketed name and the settings under it.","constraints":["Only the native INI grammar defines this construct."],"sourceAliases":[{"source":"native:ini","name":"section"}],"formerNames":[]},
    {"id":"grammar.ini.section-name","phrase":"section name","role":"concept","definition":"A rule for the bracketed name that opens an INI section.","constraints":["Only the native INI grammar defines this construct."],"sourceAliases":[{"source":"native:ini","name":"section_name"}],"formerNames":[]},
    {"id":"grammar.ini.setting","phrase":"setting","role":"concept","definition":"A rule for one key and value line of an INI file.","constraints":["Only the native INI grammar defines this construct."],"sourceAliases":[{"source":"native:ini","name":"setting"}],"formerNames":[]},
    {"id":"grammar.keyword","phrase":"keyword","role":"concept","definition":"A rule for a hash-colon keyword datum, which is never a variable.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"keyword"},{"source":"native:scheme","name":"keyword"}],"formerNames":[]},
    {"id":"grammar.linked-list","phrase":"linked list","role":"concept","definition":"A rule for a parenthesized list of pairs that may end in a dotted pair.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"list"},{"source":"native:scheme","name":"list"}],"formerNames":[]},
    {"id":"grammar.program","phrase":"program","role":"concept","definition":"A rule for the whole source text of a program.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:java","name":"program"},{"source":"native:javascript","name":"program"},{"source":"native:lean","name":"module"},{"source":"native:racket","name":"program"},{"source":"native:scheme","name":"program"},{"source":"native:tsx","name":"program"},{"source":"native:typescript","name":"program"}],"formerNames":[]},
    {"id":"grammar.program-element","phrase":"program element","role":"concept","definition":"A rule for one top-level element of a program: a datum or the atmosphere around it.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"program_element"},{"source":"native:scheme","name":"program_element"}],"formerNames":[]},
    {"id":"grammar.quasiquote","phrase":"quasiquote","role":"concept","definition":"A rule for a backquote before a datum, which reads as a quasiquote form.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"quasiquote"},{"source":"native:scheme","name":"quasiquote"}],"formerNames":[]},
    {"id":"grammar.quasisyntax","phrase":"quasisyntax","role":"concept","definition":"A rule for a hash-backquote before a datum, which reads as a quasisyntax form.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"quasisyntax"},{"source":"native:scheme","name":"quasisyntax"}],"formerNames":[]},
    {"id":"grammar.quote","phrase":"quote","role":"concept","definition":"A rule for an apostrophe before a datum, which reads as a quote form.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"quote"},{"source":"native:scheme","name":"quote"}],"formerNames":[]},
    {"id":"grammar.racket.box","phrase":"box","role":"concept","definition":"A rule for a hash-ampersand box around a datum.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"box"}],"formerNames":[]},
    {"id":"grammar.racket.byte-string","phrase":"byte string","role":"concept","definition":"A rule for a hash-quoted byte string literal.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"byte_string"}],"formerNames":[]},
    {"id":"grammar.racket.datum-comment","phrase":"datum comment","role":"concept","definition":"A rule for a hash-semicolon comment that skips the next datum.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"datum_comment"}],"formerNames":[]},
    {"id":"grammar.racket.graph-notation","phrase":"graph notation","role":"concept","definition":"A rule for a graph label or reference that shares or cycles a datum.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"graph"}],"formerNames":[]},
    {"id":"grammar.racket.hash-table","phrase":"hash table","role":"concept","definition":"A rule for a hash-hash literal of key and value pairs, keyed by equality.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"hash"}],"formerNames":[]},
    {"id":"grammar.racket.here-string","phrase":"here string","role":"concept","definition":"A rule for a here string, whose lines run up to a line equal to its terminator.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"here_string"}],"formerNames":[]},
    {"id":"grammar.racket.here-string-end","phrase":"here string end","role":"concept","definition":"A rule for the closing line of a here string, equal to its terminator.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"here_end"}],"formerNames":[]},
    {"id":"grammar.racket.here-string-line","phrase":"here string line","role":"concept","definition":"A rule for one line of a here string that is not its terminator.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"here_line"}],"formerNames":[]},
    {"id":"grammar.racket.here-string-line-break","phrase":"here string line break","role":"concept","definition":"A rule for a line break inside a here string.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"here_newline"}],"formerNames":[]},
    {"id":"grammar.racket.here-string-terminator","phrase":"here string terminator","role":"concept","definition":"A rule for the terminator text that opens a here string.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"here_terminator"}],"formerNames":[]},
    {"id":"grammar.racket.language-name","phrase":"language name","role":"concept","definition":"A rule for the module path a hash-lang line names.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"language_name"}],"formerNames":[]},
    {"id":"grammar.racket.pair-separator","phrase":"pair separator","role":"concept","definition":"A rule for the dot between the two parts of a pair.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"dot"}],"formerNames":[]},
    {"id":"grammar.racket.reader-extension","phrase":"reader extension","role":"concept","definition":"A rule for a hash-reader or hash-lang line that hands reading to another reader.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"extension"}],"formerNames":[]},
    {"id":"grammar.racket.regular-expression-literal","phrase":"regular expression literal","role":"concept","definition":"A rule for a hash-rx or hash-px regular expression literal.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"regular_expression"}],"formerNames":[]},
    {"id":"grammar.racket.structure-literal","phrase":"structure literal","role":"concept","definition":"A rule for a hash-s prefab structure literal.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"structure"}],"formerNames":[]},
    {"id":"grammar.racket.vector-length","phrase":"vector length","role":"concept","definition":"A rule for the decimal length prefix of a vector or flonum vector.","constraints":["Only the native Racket grammar defines this construct."],"sourceAliases":[{"source":"native:racket","name":"decimal"}],"formerNames":[]},
    {"id":"grammar.scheme.byte-vector","phrase":"byte vector","role":"concept","definition":"A rule for a bytevector literal, a hash-u8 list of bytes.","constraints":["Only the native Scheme grammar defines this construct."],"sourceAliases":[{"source":"native:scheme","name":"byte_vector"}],"formerNames":[]},
    {"id":"grammar.scheme.datum-label","phrase":"datum label","role":"concept","definition":"A rule for a datum labelled for later reference, as in hash-n-equals.","constraints":["Only the native Scheme grammar defines this construct."],"sourceAliases":[{"source":"native:scheme","name":"datum_label"}],"formerNames":[]},
    {"id":"grammar.scheme.datum-label-marker","phrase":"datum label marker","role":"concept","definition":"A rule for the hash-n-equals marker that labels a datum.","constraints":["Only the native Scheme grammar defines this construct."],"sourceAliases":[{"source":"native:scheme","name":"label"}],"formerNames":[]},
    {"id":"grammar.scheme.datum-reference","phrase":"datum reference","role":"concept","definition":"A rule for the hash-n-hash reference to a labelled datum.","constraints":["Only the native Scheme grammar defines this construct."],"sourceAliases":[{"source":"native:scheme","name":"datum_reference"}],"formerNames":[]},
    {"id":"grammar.scheme.reader-directive","phrase":"reader directive","role":"concept","definition":"A rule for a hash-bang directive such as fold-case that changes how the reader reads.","constraints":["Only the native Scheme grammar defines this construct."],"sourceAliases":[{"source":"native:scheme","name":"directive"}],"formerNames":[]},
    {"id":"grammar.symbol","phrase":"symbol","role":"concept","definition":"A rule for an identifier read as a symbol datum rather than as text.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"symbol"},{"source":"native:scheme","name":"symbol"}],"formerNames":[]},
    {"id":"grammar.syntax-quote","phrase":"syntax quote","role":"concept","definition":"A rule for a hash-apostrophe before a datum, which reads as a syntax form.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"syntax"},{"source":"native:scheme","name":"syntax"}],"formerNames":[]},
    {"id":"grammar.true-value","phrase":"true value","role":"concept","definition":"A rule for the literal true alone.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:c","name":"true"},{"source":"native:go","name":"true"},{"source":"native:java","name":"true"},{"source":"native:javascript","name":"true"},{"source":"native:json","name":"true"},{"source":"native:json5","name":"true"},{"source":"native:proto","name":"true"},{"source":"native:solidity","name":"true"},{"source":"native:tsx","name":"true"},{"source":"native:typescript","name":"true"}],"formerNames":[]},
    {"id":"grammar.unquote","phrase":"unquote","role":"concept","definition":"A rule for a comma before a datum, which reads as an unquote form.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"unquote"},{"source":"native:scheme","name":"unquote"}],"formerNames":[]},
    {"id":"grammar.unquote-splicing","phrase":"unquote splicing","role":"concept","definition":"A rule for a comma-at before a datum, which reads as an unquote-splicing form.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"unquote_splicing"},{"source":"native:scheme","name":"unquote_splicing"}],"formerNames":[]},
    {"id":"grammar.unsyntax","phrase":"unsyntax","role":"concept","definition":"A rule for a hash-comma before a datum, which reads as an unsyntax form.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"unsyntax"},{"source":"native:scheme","name":"unsyntax"}],"formerNames":[]},
    {"id":"grammar.unsyntax-splicing","phrase":"unsyntax splicing","role":"concept","definition":"A rule for a hash-comma-at before a datum, which reads as an unsyntax-splicing form.","constraints":["Native grammars share this concept only where the construct means the same in each language."],"sourceAliases":[{"source":"native:racket","name":"unsyntax_splicing"},{"source":"native:scheme","name":"unsyntax_splicing"}],"formerNames":[]},
    {"id":"function","phrase":"function","role":"concept","definition":"Reusable computation with parameters and a result boundary.","constraints":["The structural concept is independent of any one programming language.","Every language syntax that expresses it is a syntax alias of the concept."],"sourceAliases":[{"source":"Rust","name":"fn"},{"source":"Python","name":"def"},{"source":"JavaScript","name":"function"},{"source":"C","name":"function"},{"source":"C++","name":"function"},{"source":"C#","name":"method"},{"source":"Java","name":"method"},{"source":"Visual Basic","name":"Function"},{"source":"R","name":"function"},{"source":"sql-ansi","name":"CREATE FUNCTION"},{"source":"Delphi/Object Pascal","name":"function"}],"formerNames":[]},
    {"id":"binding","phrase":"binding","role":"concept","definition":"Association between a name and a value or computation.","constraints":["The structural concept is independent of any one programming language.","Every language syntax that expresses it is a syntax alias of the concept."],"sourceAliases":[{"source":"Rust","name":"let"},{"source":"Python","name":"="},{"source":"JavaScript","name":"let"},{"source":"C","name":"="},{"source":"C++","name":"="},{"source":"C#","name":"="},{"source":"Java","name":"="},{"source":"Visual Basic","name":"Dim"},{"source":"R","name":"<-"},{"source":"sql-ansi","name":"AS"},{"source":"Delphi/Object Pascal","name":":="}],"formerNames":[]},
    {"id":"application","phrase":"application","role":"concept","definition":"Application of a callable expression to arguments.","constraints":["The structural concept is independent of any one programming language.","Every language syntax that expresses it is a syntax alias of the concept."],"sourceAliases":[{"source":"Rust","name":"call(...)"},{"source":"Python","name":"call(...)"},{"source":"JavaScript","name":"call(...)"},{"source":"C","name":"call(...)"},{"source":"C++","name":"call(...)"},{"source":"C#","name":"call(...)"},{"source":"Java","name":"call(...)"},{"source":"Visual Basic","name":"Call"},{"source":"R","name":"call(...)"},{"source":"sql-ansi","name":"CALL"},{"source":"Delphi/Object Pascal","name":"call(...)"}],"formerNames":[]},
    {"id":"sequential-composition","phrase":"sequential composition","role":"concept","definition":"Ordered execution or evaluation of multiple operations.","constraints":["The structural concept is independent of any one programming language.","Every language syntax that expresses it is a syntax alias of the concept."],"sourceAliases":[{"source":"Rust","name":";"},{"source":"Python","name":"newline"},{"source":"JavaScript","name":";"},{"source":"C","name":";"},{"source":"C++","name":";"},{"source":"C#","name":";"},{"source":"Java","name":";"},{"source":"Visual Basic","name":"newline"},{"source":"R","name":";"},{"source":"sql-ansi","name":";"},{"source":"Delphi/Object Pascal","name":"begin ... end"}],"formerNames":["sequence"]},
    {"id":"branch","phrase":"branch","role":"concept","definition":"Conditional selection among alternative operations.","constraints":["The structural concept is independent of any one programming language.","Every language syntax that expresses it is a syntax alias of the concept."],"sourceAliases":[{"source":"Rust","name":"if"},{"source":"Python","name":"if"},{"source":"JavaScript","name":"if"},{"source":"C","name":"if"},{"source":"C++","name":"if"},{"source":"C#","name":"if"},{"source":"Java","name":"if"},{"source":"Visual Basic","name":"If"},{"source":"R","name":"if"},{"source":"sql-ansi","name":"CASE"},{"source":"Delphi/Object Pascal","name":"if"}],"formerNames":[]},
    {"id":"loop","phrase":"loop","role":"concept","definition":"Repeated execution or evaluation over a condition or iterable.","constraints":["The structural concept is independent of any one programming language.","Every language syntax that expresses it is a syntax alias of the concept."],"sourceAliases":[{"source":"Rust","name":"loop"},{"source":"Python","name":"for"},{"source":"JavaScript","name":"for"},{"source":"C","name":"for"},{"source":"C++","name":"for"},{"source":"C#","name":"for"},{"source":"Java","name":"for"},{"source":"Visual Basic","name":"For"},{"source":"R","name":"for"},{"source":"sql-ansi","name":"WHILE"},{"source":"Delphi/Object Pascal","name":"for"}],"formerNames":[]},
    {"id":"parameter","phrase":"parameter","role":"concept","definition":"Named input accepted by a function abstraction.","constraints":["Native grammars share this concept only where the construct means the same in each language.","The structural concept is independent of any one programming language.","Every language syntax that expresses it is a syntax alias of the concept."],"sourceAliases":[{"source":"Rust","name":"parameter"},{"source":"Python","name":"parameter"},{"source":"JavaScript","name":"parameter"},{"source":"C","name":"parameter"},{"source":"C++","name":"parameter"},{"source":"C#","name":"parameter"},{"source":"Java","name":"parameter"},{"source":"Visual Basic","name":"parameter"},{"source":"R","name":"parameter"},{"source":"sql-ansi","name":"parameter"},{"source":"Delphi/Object Pascal","name":"parameter"},{"source":"native:rust","name":"parameter"},{"source":"native:solidity","name":"parameter"}],"formerNames":[],"distinctFrom":[{"id":"argument","reason":"A parameter is the name a function declares; an argument is the value an application supplies for it."}]},
    {"id":"argument","phrase":"argument","role":"concept","definition":"Concrete input supplied to a function application.","constraints":["Native grammars share this concept only where the construct means the same in each language.","The structural concept is independent of any one programming language.","Every language syntax that expresses it is a syntax alias of the concept."],"sourceAliases":[{"source":"Rust","name":"argument"},{"source":"Python","name":"argument"},{"source":"JavaScript","name":"argument"},{"source":"C","name":"argument"},{"source":"C++","name":"argument"},{"source":"C#","name":"argument"},{"source":"Java","name":"argument"},{"source":"Visual Basic","name":"argument"},{"source":"R","name":"argument"},{"source":"sql-ansi","name":"argument"},{"source":"Delphi/Object Pascal","name":"argument"},{"source":"native:graphql","name":"argument"},{"source":"native:rocq","name":"argument"}],"formerNames":[],"distinctFrom":[{"id":"grammar.statement","reason":"An argument is a value supplied to a function application; a statement is a grammar rule for one step of a program."}]},
    {"id":"return","phrase":"return","role":"concept","definition":"Transfer of a function result to its caller.","constraints":["The structural concept is independent of any one programming language.","Every language syntax that expresses it is a syntax alias of the concept."],"sourceAliases":[{"source":"Rust","name":"return"},{"source":"Python","name":"return"},{"source":"JavaScript","name":"return"},{"source":"C","name":"return"},{"source":"C++","name":"return"},{"source":"C#","name":"return"},{"source":"Java","name":"return"},{"source":"Visual Basic","name":"Return"},{"source":"R","name":"return"},{"source":"sql-ansi","name":"RETURN"},{"source":"Delphi/Object Pascal","name":"Result"}],"formerNames":[]},
    {"id":"assignment","phrase":"assignment","role":"concept","definition":"Update that stores a value into a named location.","constraints":["The structural concept is independent of any one programming language.","Every language syntax that expresses it is a syntax alias of the concept."],"sourceAliases":[{"source":"Rust","name":"="},{"source":"Python","name":"="},{"source":"JavaScript","name":"="},{"source":"C","name":"="},{"source":"C++","name":"="},{"source":"C#","name":"="},{"source":"Java","name":"="},{"source":"Visual Basic","name":"="},{"source":"R","name":"<-"},{"source":"sql-ansi","name":"="},{"source":"Delphi/Object Pascal","name":":="}],"formerNames":[]},
    {"id":"statehood","phrase":"statehood","role":"concept","definition":"Statehood proposition connecting Hawaii (Q782) to U.S. state (Q35657).","constraints":["The worked example links the Wikidata items Q782 and Q35657 through the statehood proposition.","Every natural language syntax of the proposition is a syntax alias of the concept."],"sourceAliases":[{"source":"English","name":"Hawaii is a state."},{"source":"en","name":"Hawaii is a state."},{"source":"Russian","name":"Гавайи это штат."},{"source":"ru","name":"Гавайи это штат."}],"formerNames":[]},
    {"id":"ontology.external-identifier","phrase":"external identifier","role":"concept","definition":"An identifier that an external vocabulary such as Wikidata assigns to a concept.","constraints":["The link stores the identifier under the external-identifier: prefix and the vocabulary name.","Networks that use the former external-id: prefix still load."],"sourceAliases":[{"source":"Wikidata","name":"external-id"}],"formerNames":["external-id"]},
    {"id":"emphasis","phrase":"emphasis","role":"concept","definition":"Inline emphasis (italic) applied to a text fragment.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"*{}*"},{"source":"HTML","name":"<em>{}</em>"}],"formerNames":[]},
    {"id":"strong-emphasis","phrase":"strong emphasis","role":"concept","definition":"Inline strong importance (bold) applied to a text fragment.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"**{}**"},{"source":"HTML","name":"<strong>{}</strong>"}],"formerNames":["strong"]},
    {"id":"strikethrough","phrase":"strikethrough","role":"concept","definition":"Inline strikethrough (deleted) text fragment.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"~~{}~~"},{"source":"HTML","name":"<del>{}</del>"}],"formerNames":[]},
    {"id":"inline-code","phrase":"inline code","role":"concept","definition":"Inline monospaced code span.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"`{}`"},{"source":"HTML","name":"<code>{}</code>"}],"formerNames":[]},
    {"id":"hyperlink","phrase":"hyperlink","role":"concept","definition":"Inline hyperlink wrapping text and targeting a destination.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[],"formerNames":[]},
    {"id":"image","phrase":"image","role":"concept","definition":"Inline image with alternative text and a source reference.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[],"formerNames":[]},
    {"id":"line-break","phrase":"line break","role":"concept","definition":"Explicit inline line break inside a block.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"  \n"},{"source":"HTML","name":"<br />"}],"formerNames":[]},
    {"id":"heading","phrase":"heading","role":"concept","definition":"Section heading carrying a level from 1 (most significant) downward.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"{markers} {}"},{"source":"HTML","name":"<h{level}>{}</h{level}>"}],"formerNames":[]},
    {"id":"paragraph","phrase":"paragraph","role":"concept","definition":"Block of running text.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"{}"},{"source":"HTML","name":"<p>{}</p>"}],"formerNames":[]},
    {"id":"block-quote","phrase":"block quote","role":"concept","definition":"Quoted block set off from the surrounding text.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"> {}"},{"source":"HTML","name":"<blockquote>{}</blockquote>"}],"formerNames":["blockquote"]},
    {"id":"bullet-list","phrase":"bullet list","role":"concept","definition":"Unordered list container.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"{}"},{"source":"HTML","name":"<ul>{}</ul>"}],"formerNames":[]},
    {"id":"ordered-list","phrase":"ordered list","role":"concept","definition":"Ordered list container.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"{}"},{"source":"HTML","name":"<ol>{}</ol>"}],"formerNames":[]},
    {"id":"list-item","phrase":"list item","role":"concept","definition":"Single item within a list.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"- {}"},{"source":"HTML","name":"<li>{}</li>"}],"formerNames":[]},
    {"id":"code-block","phrase":"code block","role":"concept","definition":"Fenced block of preformatted code carrying an optional language.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"```{lang}\n{}\n```"},{"source":"HTML","name":"<pre><code class=\"language-{lang}\">{}</code></pre>"}],"formerNames":[]},
    {"id":"thematic-break","phrase":"thematic break","role":"concept","definition":"Thematic break (horizontal rule) between sections.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"---"},{"source":"HTML","name":"<hr />"}],"formerNames":[]},
    {"id":"table","phrase":"table","role":"concept","definition":"Tabular data container.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates."],"sourceAliases":[{"source":"Markdown","name":"{}"},{"source":"HTML","name":"<table>{}</table>"}],"formerNames":[]},
    {"id":"table-row","phrase":"table row","role":"concept","definition":"Row within a table.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates.","Only the native CSV grammar defines this construct."],"sourceAliases":[{"source":"Markdown","name":"{}"},{"source":"HTML","name":"<tr>{}</tr>"},{"source":"native:csv","name":"row"}],"formerNames":[]},
    {"id":"table-cell","phrase":"table cell","role":"concept","definition":"Cell within a table row.","constraints":["Every document format that supports the element maps it to this concept.","The formatting concept round-trips through Markdown and HTML templates.","Only the native CSV grammar defines this construct."],"sourceAliases":[{"source":"Markdown","name":"{}"},{"source":"HTML","name":"<td>{}</td>"},{"source":"native:csv","name":"field"}],"formerNames":[]},
    {"id":"program.modules-and-imports","phrase":"modules and imports","role":"concept","definition":"The modules a program defines and the modules it imports.","constraints":["Each language frontend reports evidence for this construct or states why it is unavailable."],"sourceAliases":[{"source":"JavaScript","name":"import"},{"source":"Rust","name":"use"},{"source":"Lean","name":"import"},{"source":"Rocq","name":"Require Import"}],"formerNames":[]},
    {"id":"program.scopes-and-bindings","phrase":"scopes and bindings","role":"concept","definition":"The scopes of a program and the names bound in each scope.","constraints":["Each language frontend reports evidence for this construct or states why it is unavailable."],"sourceAliases":[{"source":"JavaScript","name":"let"},{"source":"Rust","name":"let"},{"source":"Lean","name":"let"},{"source":"Rocq","name":"let"}],"formerNames":[]},
    {"id":"program.recursive-definitions","phrase":"recursive definitions","role":"concept","definition":"The definitions of a program that refer to themselves.","constraints":["Each language frontend reports evidence for this construct or states why it is unavailable."],"sourceAliases":[{"source":"Lean","name":"partial def"},{"source":"Rocq","name":"Fixpoint"}],"formerNames":[]},
    {"id":"program.types-and-universes","phrase":"types and universes","role":"concept","definition":"The types a program declares and the universes those types live in.","constraints":["Each language frontend reports evidence for this construct or states why it is unavailable."],"sourceAliases":[{"source":"Lean","name":"Type u"},{"source":"Rocq","name":"Type"},{"source":"Rust","name":"struct"}],"formerNames":[]},
    {"id":"program.effects","phrase":"effects","role":"concept","definition":"The side effects a program performs, such as input, output and mutation.","constraints":["Each language frontend reports evidence for this construct or states why it is unavailable."],"sourceAliases":[{"source":"Lean","name":"IO"},{"source":"JavaScript","name":"await"}],"formerNames":[]},
    {"id":"program.attributes","phrase":"attributes","role":"concept","definition":"The annotations attached to declarations of a program.","constraints":["Native grammars share this concept only where the construct means the same in each language.","Each language frontend reports evidence for this construct or states why it is unavailable."],"sourceAliases":[{"source":"Rust","name":"#[attribute]"},{"source":"Lean","name":"@[attribute]"},{"source":"native:c","name":"attribute"},{"source":"native:rocq","name":"attribute"},{"source":"native:rust","name":"attribute"}],"formerNames":[]},
    {"id":"program.macros-and-notation","phrase":"macros and notation","role":"concept","definition":"The macros and custom notation a program defines or uses.","constraints":["Each language frontend reports evidence for this construct or states why it is unavailable."],"sourceAliases":[{"source":"Rust","name":"macro_rules!"},{"source":"Lean","name":"notation"},{"source":"Rocq","name":"Notation"}],"formerNames":[]},
    {"id":"program.proof-terms-and-tactics","phrase":"proof terms and tactics","role":"concept","definition":"The proofs of a program, written as terms or as tactic scripts.","constraints":["Each language frontend reports evidence for this construct or states why it is unavailable."],"sourceAliases":[{"source":"Lean","name":"by"},{"source":"Rocq","name":"Proof."}],"formerNames":[]},
    {"id":"program.surface-expansion-elaboration-traces","phrase":"surface expansion elaboration traces","role":"concept","definition":"The record of how surface syntax was expanded and elaborated into core terms.","constraints":["Each language frontend reports evidence for this construct or states why it is unavailable.","The construct is unavailable when no expansion or elaboration trace was produced."],"sourceAliases":[],"formerNames":[]},
    {"id":"program.project-context-and-dependencies","phrase":"project context and dependencies","role":"concept","definition":"The project a program belongs to and the packages it depends on.","constraints":["Each language frontend reports evidence for this construct or states why it is unavailable."],"sourceAliases":[{"source":"JavaScript","name":"package.json"},{"source":"Rust","name":"Cargo.toml"},{"source":"Lean","name":"lakefile.lean"},{"source":"Rocq","name":"_CoqProject"}],"formerNames":[]},
    {"id":"operation.parse","phrase":"parse","role":"operation","definition":"Parse source text into a links network.","constraints":["Every supported programming interface style reaches this operation."],"sourceAliases":[],"formerNames":[]},
    {"id":"operation.query","phrase":"query","role":"operation","definition":"Query links in a network.","constraints":["Every supported programming interface style reaches this operation."],"sourceAliases":[],"formerNames":[]},
    {"id":"operation.transform","phrase":"transform","role":"operation","definition":"Transform query-selected links or source ranges.","constraints":["Every supported programming interface style reaches this operation."],"sourceAliases":[],"formerNames":[]},
    {"id":"operation.substitute","phrase":"substitute","role":"operation","definition":"Apply structural substitutions.","constraints":["Every supported programming interface style reaches this operation."],"sourceAliases":[],"formerNames":[]},
    {"id":"operation.serialize","phrase":"serialize","role":"operation","definition":"Serialize and load network data.","constraints":["Every supported programming interface style reaches this operation."],"sourceAliases":[],"formerNames":[]},
    {"id":"operation.snapshot","phrase":"snapshot","role":"operation","definition":"Capture immutable network versions.","constraints":["Every supported programming interface style reaches this operation."],"sourceAliases":[],"formerNames":[]},
    {"id":"operation.translate","phrase":"translate","role":"operation","definition":"Reconstruct through translation rules.","constraints":["Every supported programming interface style reaches this operation."],"sourceAliases":[],"formerNames":[],"distinctFrom":[{"id":"operation.transform","reason":"Translating reconstructs a network in another language through translation rules; transforming rewrites selected links or source ranges within one network."}]},
    {"id":"operation.verify","phrase":"verify","role":"operation","definition":"Verify parse and structural diagnostics.","constraints":["Every supported programming interface style reaches this operation."],"sourceAliases":[],"formerNames":[]},
    {"id":"translation.parse","phrase":"parse","role":"operation","definition":"Parse a corpus program into its links network before translation.","constraints":["Each translation corpus program records a digest for this stage."],"sourceAliases":[],"formerNames":[],"represents":"operation.parse"},
    {"id":"translation.check","phrase":"check","role":"operation","definition":"Check the parsed links network of a corpus program before emitting it.","constraints":["Each translation corpus program records a digest for this stage."],"sourceAliases":[],"formerNames":[]},
    {"id":"translation.emit","phrase":"emit","role":"operation","definition":"Emit a corpus program in each target language from its links network.","constraints":["Each translation corpus program records a digest for this stage.","Each target language has its own digest."],"sourceAliases":[],"formerNames":[]},
    {"id":"translation.decode-unicode-escape","phrase":"decode unicode escape","role":"operation","definition":"Decode one bounded UTF-16 Unicode escape into a scalar value or a precise refusal.","constraints":["The decoder accepts at most twelve code units.","JavaScript permits fixed escapes and surrogate pairs; Rust permits braced scalar escapes."],"sourceAliases":[{"source":"JavaScript frontend decisions","name":"decodeUnicodeEscape"},{"source":"Rust frontend decisions","name":"decode_unicode_escape"}],"formerNames":[]},
    {"id":"translation.accept-argument-count","phrase":"accept argument count","role":"operation","definition":"Determine whether every omitted argument has a parameter default.","constraints":["An extra argument is refused.","Every omitted parameter must have a default."],"sourceAliases":[{"source":"JavaScript frontend decisions","name":"acceptArgumentCount"},{"source":"Rust frontend decisions","name":"accept_argument_count"}],"formerNames":[]},
    {"id":"translation.find-default-parameter-reference","phrase":"find default parameter reference","role":"operation","definition":"Find the first earlier parameter referenced by a default expression.","constraints":["Nested delimiters keep commas inside the default expression.","A member name following a dot is not a parameter reference."],"sourceAliases":[{"source":"JavaScript frontend decisions","name":"findDefaultParameterReference"},{"source":"Rust frontend decisions","name":"find_default_parameter_reference"}],"formerNames":[]},
    {"id":"translation.unicode-escape","phrase":"unicode escape","role":"concept","definition":"The result of reading a Unicode escape: a scalar value, malformed syntax, or an unsupported scalar.","constraints":["Scalar results carry the decoded code point and consumed code units.","Refusals retain the escape length required for matching diagnostics."],"sourceAliases":[{"source":"JavaScript frontend decisions","name":"UnicodeEscape"},{"source":"Rust frontend decisions","name":"UnicodeEscape"}],"formerNames":[]},
    {"id":"grammar.translation-unit","phrase":"translation unit","role":"concept","definition":"A rule for a translation unit, the construct the upstream grammar names translation_unit.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"translation_unit"}],"formerNames":[]},
    {"id":"grammar.top-level-item","phrase":"top level item","role":"concept","definition":"A rule for a top level item, the construct the upstream grammar names _top_level_item.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"top_level_item"}],"formerNames":[]},
    {"id":"grammar.block-item","phrase":"block item","role":"concept","definition":"A rule for a block item, the construct the upstream grammar names _block_item.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"block_item"}],"formerNames":[]},
    {"id":"grammar.preprocessor-include-directive","phrase":"preprocessor include directive","role":"concept","definition":"A rule for a preprocessor include directive, the construct the upstream grammar names preproc_include.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_include"}],"formerNames":[]},
    {"id":"grammar.preprocessor-definition","phrase":"preprocessor definition","role":"concept","definition":"A rule for a preprocessor definition, the construct the upstream grammar names preproc_def.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_definition"}],"formerNames":[]},
    {"id":"grammar.preprocessor-function-definition","phrase":"preprocessor function definition","role":"concept","definition":"A rule for a preprocessor function definition, the construct the upstream grammar names preproc_function_def.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_function_definition"}],"formerNames":[]},
    {"id":"grammar.preprocessor-parameters","phrase":"preprocessor parameters","role":"concept","definition":"A rule for a preprocessor parameters, the construct the upstream grammar names preproc_params.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_parameters"}],"formerNames":[]},
    {"id":"grammar.preprocessor-call","phrase":"preprocessor call","role":"concept","definition":"A rule for a preprocessor call, the construct the upstream grammar names preproc_call.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_call"}],"formerNames":[]},
    {"id":"grammar.preprocessor-if-directive","phrase":"preprocessor if directive","role":"concept","definition":"A rule for a preprocessor if directive, the construct the upstream grammar names preproc_if.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_if"}],"formerNames":[]},
    {"id":"grammar.preprocessor-if-defined-directive","phrase":"preprocessor if defined directive","role":"concept","definition":"A rule for a preprocessor if defined directive, the construct the upstream grammar names preproc_ifdef.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_if_defined"}],"formerNames":[]},
    {"id":"grammar.preprocessor-else-branch","phrase":"preprocessor else branch","role":"concept","definition":"A rule for a preprocessor else branch, the construct the upstream grammar names preproc_else.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_else"}],"formerNames":[]},
    {"id":"grammar.preprocessor-else-if-branch","phrase":"preprocessor else if branch","role":"concept","definition":"A rule for a preprocessor else if branch, the construct the upstream grammar names preproc_elif.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_else_if"}],"formerNames":[]},
    {"id":"grammar.preprocessor-else-if-defined-branch","phrase":"preprocessor else if defined branch","role":"concept","definition":"A rule for a preprocessor else if defined branch, the construct the upstream grammar names preproc_elifdef.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_else_if_defined"}],"formerNames":[]},
    {"id":"grammar.preprocessor-if-in-field-declaration-list","phrase":"preprocessor if in field declaration list","role":"concept","definition":"A rule for a preprocessor if in field declaration list, the construct the upstream grammar names preproc_if_in_field_declaration_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_if_in_field_declaration_list"}],"formerNames":[]},
    {"id":"grammar.preprocessor-if-defined-in-field-declaration-list","phrase":"preprocessor if defined in field declaration list","role":"concept","definition":"A rule for a preprocessor if defined in field declaration list, the construct the upstream grammar names preproc_ifdef_in_field_declaration_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_if_defined_in_field_declaration_list"}],"formerNames":[]},
    {"id":"grammar.preprocessor-else-in-field-declaration-list","phrase":"preprocessor else in field declaration list","role":"concept","definition":"A rule for a preprocessor else in field declaration list, the construct the upstream grammar names preproc_else_in_field_declaration_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_else_in_field_declaration_list"}],"formerNames":[]},
    {"id":"grammar.preprocessor-else-if-in-field-declaration-list","phrase":"preprocessor else if in field declaration list","role":"concept","definition":"A rule for a preprocessor else if in field declaration list, the construct the upstream grammar names preproc_elif_in_field_declaration_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_else_if_in_field_declaration_list"}],"formerNames":[]},
    {"id":"grammar.preprocessor-else-if-defined-in-field-declaration-list","phrase":"preprocessor else if defined in field declaration list","role":"concept","definition":"A rule for a preprocessor else if defined in field declaration list, the construct the upstream grammar names preproc_elifdef_in_field_declaration_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_else_if_defined_in_field_declaration_list"}],"formerNames":[]},
    {"id":"grammar.preprocessor-if-in-enumerator-list","phrase":"preprocessor if in enumerator list","role":"concept","definition":"A rule for a preprocessor if in enumerator list, the construct the upstream grammar names preproc_if_in_enumerator_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_if_in_enumerator_list"}],"formerNames":[]},
    {"id":"grammar.preprocessor-if-defined-in-enumerator-list","phrase":"preprocessor if defined in enumerator list","role":"concept","definition":"A rule for a preprocessor if defined in enumerator list, the construct the upstream grammar names preproc_ifdef_in_enumerator_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_if_defined_in_enumerator_list"}],"formerNames":[]},
    {"id":"grammar.preprocessor-else-in-enumerator-list","phrase":"preprocessor else in enumerator list","role":"concept","definition":"A rule for a preprocessor else in enumerator list, the construct the upstream grammar names preproc_else_in_enumerator_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_else_in_enumerator_list"}],"formerNames":[]},
    {"id":"grammar.preprocessor-else-if-in-enumerator-list","phrase":"preprocessor else if in enumerator list","role":"concept","definition":"A rule for a preprocessor else if in enumerator list, the construct the upstream grammar names preproc_elif_in_enumerator_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_else_if_in_enumerator_list"}],"formerNames":[]},
    {"id":"grammar.preprocessor-else-if-defined-in-enumerator-list","phrase":"preprocessor else if defined in enumerator list","role":"concept","definition":"A rule for a preprocessor else if defined in enumerator list, the construct the upstream grammar names preproc_elifdef_in_enumerator_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_else_if_defined_in_enumerator_list"}],"formerNames":[]},
    {"id":"grammar.preprocessor-if-in-enumerator-list-no-comma","phrase":"preprocessor if in enumerator list no comma","role":"concept","definition":"A rule for a preprocessor if in enumerator list no comma, the construct the upstream grammar names preproc_if_in_enumerator_list_no_comma.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_if_in_enumerator_list_no_comma"}],"formerNames":[]},
    {"id":"grammar.preprocessor-if-defined-in-enumerator-list-no-comma","phrase":"preprocessor if defined in enumerator list no comma","role":"concept","definition":"A rule for a preprocessor if defined in enumerator list no comma, the construct the upstream grammar names preproc_ifdef_in_enumerator_list_no_comma.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_if_defined_in_enumerator_list_no_comma"}],"formerNames":[]},
    {"id":"grammar.preprocessor-else-in-enumerator-list-no-comma","phrase":"preprocessor else in enumerator list no comma","role":"concept","definition":"A rule for a preprocessor else in enumerator list no comma, the construct the upstream grammar names preproc_else_in_enumerator_list_no_comma.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_else_in_enumerator_list_no_comma"}],"formerNames":[]},
    {"id":"grammar.preprocessor-else-if-in-enumerator-list-no-comma","phrase":"preprocessor else if in enumerator list no comma","role":"concept","definition":"A rule for a preprocessor else if in enumerator list no comma, the construct the upstream grammar names preproc_elif_in_enumerator_list_no_comma.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_else_if_in_enumerator_list_no_comma"}],"formerNames":[]},
    {"id":"grammar.preprocessor-else-if-defined-in-enumerator-list-no-comma","phrase":"preprocessor else if defined in enumerator list no comma","role":"concept","definition":"A rule for a preprocessor else if defined in enumerator list no comma, the construct the upstream grammar names preproc_elifdef_in_enumerator_list_no_comma.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_else_if_defined_in_enumerator_list_no_comma"}],"formerNames":[]},
    {"id":"grammar.preprocessor-argument","phrase":"preprocessor argument","role":"concept","definition":"A rule for a preprocessor argument, the construct the upstream grammar names preproc_arg.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_argument"}],"formerNames":[],"distinctFrom":[{"id":"grammar.preprocessor-parameters","reason":"A preprocessor argument is the text after a directive or a macro name, while the preprocessor parameters are the names a function-like macro declares."}]},
    {"id":"grammar.preprocessor-directive","phrase":"preprocessor directive","role":"concept","definition":"A rule for a preprocessor directive, the construct the upstream grammar names preproc_directive.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_directive"}],"formerNames":[]},
    {"id":"grammar.preprocessor-expression","phrase":"preprocessor expression","role":"concept","definition":"A rule for a preprocessor expression, the construct the upstream grammar names _preproc_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_expression"}],"formerNames":[]},
    {"id":"grammar.preprocessor-parenthesized-expression","phrase":"preprocessor parenthesized expression","role":"concept","definition":"A rule for a preprocessor parenthesized expression, the construct the upstream grammar names preproc_parenthesized_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_parenthesized_expression"}],"formerNames":[]},
    {"id":"grammar.preprocessor-defined-operator","phrase":"preprocessor defined operator","role":"concept","definition":"A rule for a preprocessor defined operator, the construct the upstream grammar names preproc_defined.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_defined"}],"formerNames":[]},
    {"id":"grammar.preprocessor-unary-expression","phrase":"preprocessor unary expression","role":"concept","definition":"A rule for a preprocessor unary expression, the construct the upstream grammar names preproc_unary_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_unary_expression"}],"formerNames":[]},
    {"id":"grammar.preprocessor-call-expression","phrase":"preprocessor call expression","role":"concept","definition":"A rule for a preprocessor call expression, the construct the upstream grammar names preproc_call_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_call_expression"}],"formerNames":[]},
    {"id":"grammar.preprocessor-argument-list","phrase":"preprocessor argument list","role":"concept","definition":"A rule for a preprocessor argument list, the construct the upstream grammar names preproc_argument_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_argument_list"}],"formerNames":[]},
    {"id":"grammar.preprocessor-binary-expression","phrase":"preprocessor binary expression","role":"concept","definition":"A rule for a preprocessor binary expression, the construct the upstream grammar names preproc_binary_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"preprocessor_binary_expression"}],"formerNames":[]},
    {"id":"grammar.function-definition","phrase":"function definition","role":"concept","definition":"A rule for a function definition, the construct the upstream grammar names function_definition.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"function_definition"},{"source":"native:solidity","name":"function_definition"}],"formerNames":[]},
    {"id":"grammar.old-style-function-definition","phrase":"old style function definition","role":"concept","definition":"A rule for an old style function definition, the construct the upstream grammar names _old_style_function_definition.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"old_style_function_definition"}],"formerNames":[]},
    {"id":"grammar.declaration","phrase":"declaration","role":"concept","definition":"A rule for a declaration, the construct the upstream grammar names declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"declaration"},{"source":"native:go","name":"declaration"},{"source":"native:java","name":"declaration"},{"source":"native:javascript","name":"declaration"},{"source":"native:lean","name":"declaration"},{"source":"native:solidity","name":"declaration"},{"source":"native:tsx","name":"declaration"},{"source":"native:typescript","name":"declaration"}],"formerNames":[]},
    {"id":"grammar.type-definition","phrase":"type definition","role":"concept","definition":"A rule for a type definition, the construct the upstream grammar names type_definition.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"type_definition"},{"source":"native:graphql","name":"type_definition"}],"formerNames":[]},
    {"id":"grammar.type-definition-type","phrase":"type definition type","role":"concept","definition":"A rule for a type definition type, the construct the upstream grammar names _type_definition_type.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"type_definition_type"}],"formerNames":[]},
    {"id":"grammar.type-definition-declarator-list","phrase":"type definition declarator list","role":"concept","definition":"A rule for a type definition declarator list, the construct the upstream grammar names _type_definition_declarators.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"type_definition_declarator_list"}],"formerNames":[]},
    {"id":"grammar.declaration-modifiers","phrase":"declaration modifiers","role":"concept","definition":"A rule for a declaration modifiers, the construct the upstream grammar names _declaration_modifiers.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"declaration_modifiers"}],"formerNames":[]},
    {"id":"grammar.declaration-specifiers","phrase":"declaration specifiers","role":"concept","definition":"A rule for a declaration specifiers, the construct the upstream grammar names _declaration_specifiers.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"declaration_specifiers"}],"formerNames":[]},
    {"id":"grammar.linkage-specification","phrase":"linkage specification","role":"concept","definition":"A rule for a linkage specification, the construct the upstream grammar names linkage_specification.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"linkage_specification"}],"formerNames":[]},
    {"id":"grammar.attribute-specifier","phrase":"attribute specifier","role":"concept","definition":"A rule for an attribute specifier, the construct the upstream grammar names attribute_specifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"attribute_specifier"}],"formerNames":[]},
    {"id":"grammar.attribute-declaration","phrase":"attribute declaration","role":"concept","definition":"A rule for an attribute declaration, the construct the upstream grammar names attribute_declaration.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"attribute_declaration"}],"formerNames":[]},
    {"id":"grammar.microsoft-declaration-specifier-modifier","phrase":"microsoft declaration specifier modifier","role":"concept","definition":"A rule for a microsoft declaration specifier modifier, the construct the upstream grammar names ms_declspec_modifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"microsoft_declaration_specifier_modifier"}],"formerNames":[]},
    {"id":"grammar.microsoft-based-modifier","phrase":"microsoft based modifier","role":"concept","definition":"A rule for a microsoft based modifier, the construct the upstream grammar names ms_based_modifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"microsoft_based_modifier"}],"formerNames":[]},
    {"id":"grammar.microsoft-call-modifier","phrase":"microsoft call modifier","role":"concept","definition":"A rule for a microsoft call modifier, the construct the upstream grammar names ms_call_modifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"microsoft_call_modifier"}],"formerNames":[]},
    {"id":"grammar.microsoft-restrict-modifier","phrase":"microsoft restrict modifier","role":"concept","definition":"A rule for a microsoft restrict modifier, the construct the upstream grammar names ms_restrict_modifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"microsoft_restrict_modifier"}],"formerNames":[]},
    {"id":"grammar.microsoft-unsigned-pointer-modifier","phrase":"microsoft unsigned pointer modifier","role":"concept","definition":"A rule for a microsoft unsigned pointer modifier, the construct the upstream grammar names ms_unsigned_ptr_modifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"microsoft_unsigned_pointer_modifier"}],"formerNames":[]},
    {"id":"grammar.microsoft-signed-pointer-modifier","phrase":"microsoft signed pointer modifier","role":"concept","definition":"A rule for a microsoft signed pointer modifier, the construct the upstream grammar names ms_signed_ptr_modifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"microsoft_signed_pointer_modifier"}],"formerNames":[]},
    {"id":"grammar.microsoft-unaligned-pointer-modifier","phrase":"microsoft unaligned pointer modifier","role":"concept","definition":"A rule for a microsoft unaligned pointer modifier, the construct the upstream grammar names ms_unaligned_ptr_modifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"microsoft_unaligned_pointer_modifier"}],"formerNames":[]},
    {"id":"grammar.microsoft-pointer-modifier","phrase":"microsoft pointer modifier","role":"concept","definition":"A rule for a microsoft pointer modifier, the construct the upstream grammar names ms_pointer_modifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"microsoft_pointer_modifier"}],"formerNames":[]},
    {"id":"grammar.declaration-list","phrase":"declaration list","role":"concept","definition":"A rule for a declaration list, the construct the upstream grammar names declaration_list.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"declaration_list"},{"source":"native:rust","name":"declaration_list"}],"formerNames":[]},
    {"id":"grammar.declarator","phrase":"declarator","role":"concept","definition":"A rule for a declarator, the construct the upstream grammar names _declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"declarator"}],"formerNames":[]},
    {"id":"grammar.declaration-declarator","phrase":"declaration declarator","role":"concept","definition":"A rule for a declaration declarator, the construct the upstream grammar names _declaration_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"declaration_declarator"}],"formerNames":[]},
    {"id":"grammar.field-declarator","phrase":"field declarator","role":"concept","definition":"A rule for a field declarator, the construct the upstream grammar names _field_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"field_declarator"}],"formerNames":[]},
    {"id":"grammar.type-declarator","phrase":"type declarator","role":"concept","definition":"A rule for a type declarator, the construct the upstream grammar names _type_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"type_declarator"}],"formerNames":[]},
    {"id":"grammar.abstract-declarator","phrase":"abstract declarator","role":"concept","definition":"A rule for an abstract declarator, the construct the upstream grammar names _abstract_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"abstract_declarator"}],"formerNames":[]},
    {"id":"grammar.parenthesized-declarator","phrase":"parenthesized declarator","role":"concept","definition":"A rule for a parenthesized declarator, the construct the upstream grammar names parenthesized_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"parenthesized_declarator"}],"formerNames":[]},
    {"id":"grammar.parenthesized-field-declarator","phrase":"parenthesized field declarator","role":"concept","definition":"A rule for a parenthesized field declarator, the construct the upstream grammar names parenthesized_field_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"parenthesized_field_declarator"}],"formerNames":[]},
    {"id":"grammar.parenthesized-type-declarator","phrase":"parenthesized type declarator","role":"concept","definition":"A rule for a parenthesized type declarator, the construct the upstream grammar names parenthesized_type_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"parenthesized_type_declarator"}],"formerNames":[]},
    {"id":"grammar.abstract-parenthesized-declarator","phrase":"abstract parenthesized declarator","role":"concept","definition":"A rule for an abstract parenthesized declarator, the construct the upstream grammar names abstract_parenthesized_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"abstract_parenthesized_declarator"}],"formerNames":[]},
    {"id":"grammar.attributed-declarator","phrase":"attributed declarator","role":"concept","definition":"A rule for an attributed declarator, the construct the upstream grammar names attributed_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"attributed_declarator"}],"formerNames":[]},
    {"id":"grammar.attributed-field-declarator","phrase":"attributed field declarator","role":"concept","definition":"A rule for an attributed field declarator, the construct the upstream grammar names attributed_field_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"attributed_field_declarator"}],"formerNames":[]},
    {"id":"grammar.attributed-type-declarator","phrase":"attributed type declarator","role":"concept","definition":"A rule for an attributed type declarator, the construct the upstream grammar names attributed_type_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"attributed_type_declarator"}],"formerNames":[]},
    {"id":"grammar.pointer-declarator","phrase":"pointer declarator","role":"concept","definition":"A rule for a pointer declarator, the construct the upstream grammar names pointer_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"pointer_declarator"}],"formerNames":[]},
    {"id":"grammar.pointer-field-declarator","phrase":"pointer field declarator","role":"concept","definition":"A rule for a pointer field declarator, the construct the upstream grammar names pointer_field_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"pointer_field_declarator"}],"formerNames":[]},
    {"id":"grammar.pointer-type-declarator","phrase":"pointer type declarator","role":"concept","definition":"A rule for a pointer type declarator, the construct the upstream grammar names pointer_type_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"pointer_type_declarator"}],"formerNames":[]},
    {"id":"grammar.abstract-pointer-declarator","phrase":"abstract pointer declarator","role":"concept","definition":"A rule for an abstract pointer declarator, the construct the upstream grammar names abstract_pointer_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"abstract_pointer_declarator"}],"formerNames":[]},
    {"id":"grammar.function-declarator","phrase":"function declarator","role":"concept","definition":"A rule for a function declarator, the construct the upstream grammar names function_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"function_declarator"}],"formerNames":[]},
    {"id":"grammar.function-declaration-declarator","phrase":"function declaration declarator","role":"concept","definition":"A rule for a function declaration declarator, the construct the upstream grammar names _function_declaration_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"function_declaration_declarator"}],"formerNames":[]},
    {"id":"grammar.function-field-declarator","phrase":"function field declarator","role":"concept","definition":"A rule for a function field declarator, the construct the upstream grammar names function_field_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"function_field_declarator"}],"formerNames":[]},
    {"id":"grammar.function-type-declarator","phrase":"function type declarator","role":"concept","definition":"A rule for a function type declarator, the construct the upstream grammar names function_type_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"function_type_declarator"}],"formerNames":[]},
    {"id":"grammar.abstract-function-declarator","phrase":"abstract function declarator","role":"concept","definition":"A rule for an abstract function declarator, the construct the upstream grammar names abstract_function_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"abstract_function_declarator"}],"formerNames":[]},
    {"id":"grammar.old-style-function-declarator","phrase":"old style function declarator","role":"concept","definition":"A rule for an old style function declarator, the construct the upstream grammar names _old_style_function_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"old_style_function_declarator"}],"formerNames":[]},
    {"id":"grammar.array-declarator","phrase":"array declarator","role":"concept","definition":"A rule for an array declarator, the construct the upstream grammar names array_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"array_declarator"}],"formerNames":[]},
    {"id":"grammar.array-field-declarator","phrase":"array field declarator","role":"concept","definition":"A rule for an array field declarator, the construct the upstream grammar names array_field_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"array_field_declarator"}],"formerNames":[]},
    {"id":"grammar.array-type-declarator","phrase":"array type declarator","role":"concept","definition":"A rule for an array type declarator, the construct the upstream grammar names array_type_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"array_type_declarator"}],"formerNames":[]},
    {"id":"grammar.abstract-array-declarator","phrase":"abstract array declarator","role":"concept","definition":"A rule for an abstract array declarator, the construct the upstream grammar names abstract_array_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"abstract_array_declarator"}],"formerNames":[]},
    {"id":"grammar.initialized-declarator","phrase":"initialized declarator","role":"concept","definition":"A rule for an initialized declarator, the construct the upstream grammar names init_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"initialized_declarator"}],"formerNames":[]},
    {"id":"grammar.compound-statement","phrase":"compound statement","role":"concept","definition":"A rule for a compound statement, the construct the upstream grammar names compound_statement.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"compound_statement"}],"formerNames":[]},
    {"id":"grammar.storage-class-specifier","phrase":"storage class specifier","role":"concept","definition":"A rule for a storage class specifier, the construct the upstream grammar names storage_class_specifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"storage_class_specifier"}],"formerNames":[]},
    {"id":"grammar.type-qualifier","phrase":"type qualifier","role":"concept","definition":"A rule for a type qualifier, the construct the upstream grammar names type_qualifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"type_qualifier"}],"formerNames":[]},
    {"id":"grammar.align-as-qualifier","phrase":"align as qualifier","role":"concept","definition":"A rule for an align as qualifier, the construct the upstream grammar names alignas_qualifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"align_as_qualifier"}],"formerNames":[]},
    {"id":"grammar.type-specifier","phrase":"type specifier","role":"concept","definition":"A rule for a type specifier, the construct the upstream grammar names type_specifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"type_specifier"}],"formerNames":[]},
    {"id":"grammar.sized-type-specifier","phrase":"sized type specifier","role":"concept","definition":"A rule for a sized type specifier, the construct the upstream grammar names sized_type_specifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"sized_type_specifier"}],"formerNames":[]},
    {"id":"grammar.primitive-type","phrase":"primitive type","role":"concept","definition":"A rule for a primitive type, the construct the upstream grammar names primitive_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"primitive_type"},{"source":"native:solidity","name":"primitive_type"}],"formerNames":[]},
    {"id":"grammar.enumeration-specifier","phrase":"enumeration specifier","role":"concept","definition":"A rule for an enumeration specifier, the construct the upstream grammar names enum_specifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"enumeration_specifier"}],"formerNames":[]},
    {"id":"grammar.enumerator-list","phrase":"enumerator list","role":"concept","definition":"A rule for an enumerator list, the construct the upstream grammar names enumerator_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"enumerator_list"}],"formerNames":[]},
    {"id":"grammar.structure-specifier","phrase":"structure specifier","role":"concept","definition":"A rule for a structure specifier, the construct the upstream grammar names struct_specifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"structure_specifier"}],"formerNames":[]},
    {"id":"grammar.union-specifier","phrase":"union specifier","role":"concept","definition":"A rule for an union specifier, the construct the upstream grammar names union_specifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"union_specifier"}],"formerNames":[]},
    {"id":"grammar.field-declaration-list","phrase":"field declaration list","role":"concept","definition":"A rule for a field declaration list, the construct the upstream grammar names field_declaration_list.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"field_declaration_list"},{"source":"native:go","name":"field_declaration_list"},{"source":"native:rust","name":"field_declaration_list"}],"formerNames":[]},
    {"id":"grammar.field-declaration-list-item","phrase":"field declaration list item","role":"concept","definition":"A rule for a field declaration list item, the construct the upstream grammar names _field_declaration_list_item.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"field_declaration_list_item"}],"formerNames":[]},
    {"id":"grammar.field-declaration","phrase":"field declaration","role":"concept","definition":"A rule for a field declaration, the construct the upstream grammar names field_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"field_declaration"},{"source":"native:go","name":"field_declaration"},{"source":"native:java","name":"field_declaration"},{"source":"native:proto","name":"field"},{"source":"native:rust","name":"field_declaration"}],"formerNames":[]},
    {"id":"grammar.field-declaration-declarator","phrase":"field declaration declarator","role":"concept","definition":"A rule for a field declaration declarator, the construct the upstream grammar names _field_declaration_declarator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"field_declaration_declarator"}],"formerNames":[]},
    {"id":"grammar.bit-field-clause","phrase":"bit field clause","role":"concept","definition":"A rule for a bit field clause, the construct the upstream grammar names bitfield_clause.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"bit_field_clause"}],"formerNames":[]},
    {"id":"grammar.enumerator","phrase":"enumerator","role":"concept","definition":"A rule for an enumerator, the construct the upstream grammar names enumerator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"enumerator"}],"formerNames":[]},
    {"id":"grammar.variadic-parameter","phrase":"variadic parameter","role":"concept","definition":"A rule for a variadic parameter, the construct the upstream grammar names variadic_parameter.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"variadic_parameter"},{"source":"native:rust","name":"variadic_parameter"}],"formerNames":[]},
    {"id":"grammar.parameter-list","phrase":"parameter list","role":"concept","definition":"A rule for a parameter list, the construct the upstream grammar names parameter_list.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"parameter_list"},{"source":"native:go","name":"parameter_list"},{"source":"native:rust","name":"parameters"},{"source":"native:solidity","name":"parameter_list"}],"formerNames":[]},
    {"id":"grammar.old-style-parameter-list","phrase":"old style parameter list","role":"concept","definition":"A rule for an old style parameter list, the construct the upstream grammar names _old_style_parameter_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"old_style_parameter_list"}],"formerNames":[]},
    {"id":"grammar.parameter-declaration","phrase":"parameter declaration","role":"concept","definition":"A rule for a parameter declaration, the construct the upstream grammar names parameter_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"parameter_declaration"},{"source":"native:go","name":"parameter_declaration"}],"formerNames":[]},
    {"id":"grammar.attributed-statement","phrase":"attributed statement","role":"concept","definition":"A rule for an attributed statement, the construct the upstream grammar names attributed_statement.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"attributed_statement"}],"formerNames":[]},
    {"id":"grammar.non-case-statement","phrase":"non case statement","role":"concept","definition":"A rule for a non case statement, the construct the upstream grammar names _non_case_statement.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"non_case_statement"}],"formerNames":[]},
    {"id":"grammar.top-level-statement","phrase":"top level statement","role":"concept","definition":"A rule for a top level statement, the construct the upstream grammar names _top_level_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"top_level_statement"},{"source":"native:java","name":"top_level_statement"}],"formerNames":[]},
    {"id":"grammar.labeled-statement","phrase":"labeled statement","role":"concept","definition":"A rule for a labeled statement, the construct the upstream grammar names labeled_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"labeled_statement"},{"source":"native:go","name":"labeled_statement"},{"source":"native:java","name":"labeled_statement"},{"source":"native:javascript","name":"labeled_statement"},{"source":"native:tsx","name":"labeled_statement"},{"source":"native:typescript","name":"labeled_statement"}],"formerNames":[]},
    {"id":"grammar.top-level-expression-statement","phrase":"top level expression statement","role":"concept","definition":"A rule for a top level expression statement, the construct the upstream grammar names _top_level_expression_statement.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"top_level_expression_statement"}],"formerNames":[]},
    {"id":"grammar.expression-statement","phrase":"expression statement","role":"concept","definition":"A rule for an expression statement, the construct the upstream grammar names expression_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"expression_statement"},{"source":"native:go","name":"expression_statement"},{"source":"native:java","name":"expression_statement"},{"source":"native:javascript","name":"expression_statement"},{"source":"native:rust","name":"expression_statement"},{"source":"native:solidity","name":"expression_statement"},{"source":"native:tsx","name":"expression_statement"},{"source":"native:typescript","name":"expression_statement"}],"formerNames":[]},
    {"id":"grammar.if-statement","phrase":"if statement","role":"concept","definition":"A rule for an if statement, the construct the upstream grammar names if_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"if_statement"},{"source":"native:go","name":"if_statement"},{"source":"native:java","name":"if_statement"},{"source":"native:javascript","name":"if_statement"},{"source":"native:make","name":"conditional"},{"source":"native:solidity","name":"if_statement"},{"source":"native:tsx","name":"if_statement"},{"source":"native:typescript","name":"if_statement"}],"formerNames":[]},
    {"id":"grammar.else-clause","phrase":"else clause","role":"concept","definition":"A rule for an else clause, the construct the upstream grammar names else_clause.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"else_clause"},{"source":"native:javascript","name":"else_clause"},{"source":"native:make","name":"else_directive"},{"source":"native:rust","name":"else_clause"},{"source":"native:tsx","name":"else_clause"},{"source":"native:typescript","name":"else_clause"}],"formerNames":[]},
    {"id":"grammar.switch-statement","phrase":"switch statement","role":"concept","definition":"A rule for a switch statement, the construct the upstream grammar names switch_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"switch_statement"},{"source":"native:javascript","name":"switch_statement"},{"source":"native:tsx","name":"switch_statement"},{"source":"native:typescript","name":"switch_statement"}],"formerNames":[]},
    {"id":"grammar.case-statement","phrase":"case statement","role":"concept","definition":"A rule for a case statement, the construct the upstream grammar names case_statement.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"case_statement"}],"formerNames":[]},
    {"id":"grammar.while-statement","phrase":"while statement","role":"concept","definition":"A rule for a while statement, the construct the upstream grammar names while_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"while_statement"},{"source":"native:java","name":"while_statement"},{"source":"native:javascript","name":"while_statement"},{"source":"native:solidity","name":"while_statement"},{"source":"native:tsx","name":"while_statement"},{"source":"native:typescript","name":"while_statement"}],"formerNames":[]},
    {"id":"grammar.do-statement","phrase":"do statement","role":"concept","definition":"A rule for a do statement, the construct the upstream grammar names do_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"do_statement"},{"source":"native:java","name":"do_statement"},{"source":"native:javascript","name":"do_statement"},{"source":"native:tsx","name":"do_statement"},{"source":"native:typescript","name":"do_statement"}],"formerNames":[]},
    {"id":"grammar.for-statement","phrase":"for statement","role":"concept","definition":"A rule for a for statement, the construct the upstream grammar names for_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"for_statement"},{"source":"native:go","name":"for_statement"},{"source":"native:java","name":"for_statement"},{"source":"native:javascript","name":"for_statement"},{"source":"native:solidity","name":"for_statement"},{"source":"native:tsx","name":"for_statement"},{"source":"native:typescript","name":"for_statement"}],"formerNames":[]},
    {"id":"grammar.for-statement-body","phrase":"for statement body","role":"concept","definition":"A rule for a for statement body, the construct the upstream grammar names _for_statement_body.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"for_statement_body"}],"formerNames":[]},
    {"id":"grammar.return-statement","phrase":"return statement","role":"concept","definition":"A rule for a return statement, the construct the upstream grammar names return_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"return_statement"},{"source":"native:go","name":"return_statement"},{"source":"native:java","name":"return_statement"},{"source":"native:javascript","name":"return_statement"},{"source":"native:solidity","name":"return_statement"},{"source":"native:tsx","name":"return_statement"},{"source":"native:typescript","name":"return_statement"}],"formerNames":[]},
    {"id":"grammar.break-statement","phrase":"break statement","role":"concept","definition":"A rule for a break statement, the construct the upstream grammar names break_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"break_statement"},{"source":"native:go","name":"break_statement"},{"source":"native:java","name":"break_statement"},{"source":"native:javascript","name":"break_statement"},{"source":"native:solidity","name":"break_statement"},{"source":"native:tsx","name":"break_statement"},{"source":"native:typescript","name":"break_statement"}],"formerNames":[]},
    {"id":"grammar.continue-statement","phrase":"continue statement","role":"concept","definition":"A rule for a continue statement, the construct the upstream grammar names continue_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"continue_statement"},{"source":"native:go","name":"continue_statement"},{"source":"native:java","name":"continue_statement"},{"source":"native:javascript","name":"continue_statement"},{"source":"native:solidity","name":"continue_statement"},{"source":"native:tsx","name":"continue_statement"},{"source":"native:typescript","name":"continue_statement"}],"formerNames":[]},
    {"id":"grammar.go-to-statement","phrase":"go to statement","role":"concept","definition":"A rule for a go to statement, the construct the upstream grammar names goto_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"go_to_statement"},{"source":"native:go","name":"go_to_statement"}],"formerNames":[]},
    {"id":"grammar.structured-exception-handling-try-statement","phrase":"structured exception handling try statement","role":"concept","definition":"A rule for a structured exception handling try statement, the construct the upstream grammar names seh_try_statement.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"structured_exception_handling_try_statement"}],"formerNames":[]},
    {"id":"grammar.structured-exception-handling-except-clause","phrase":"structured exception handling except clause","role":"concept","definition":"A rule for a structured exception handling except clause, the construct the upstream grammar names seh_except_clause.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"structured_exception_handling_except_clause"}],"formerNames":[]},
    {"id":"grammar.structured-exception-handling-finally-clause","phrase":"structured exception handling finally clause","role":"concept","definition":"A rule for a structured exception handling finally clause, the construct the upstream grammar names seh_finally_clause.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"structured_exception_handling_finally_clause"}],"formerNames":[]},
    {"id":"grammar.structured-exception-handling-leave-statement","phrase":"structured exception handling leave statement","role":"concept","definition":"A rule for a structured exception handling leave statement, the construct the upstream grammar names seh_leave_statement.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"structured_exception_handling_leave_statement"}],"formerNames":[]},
    {"id":"grammar.expression-not-binary","phrase":"expression not binary","role":"concept","definition":"A rule for an expression not binary, the construct the upstream grammar names _expression_not_binary.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"expression_not_binary"}],"formerNames":[]},
    {"id":"grammar.comma-expression","phrase":"comma expression","role":"concept","definition":"A rule for a comma expression, the construct the upstream grammar names comma_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"comma_expression"}],"formerNames":[]},
    {"id":"grammar.conditional-expression","phrase":"conditional expression","role":"concept","definition":"A rule for a conditional expression, the construct the upstream grammar names conditional_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"conditional_expression"}],"formerNames":[]},
    {"id":"grammar.assignment-left-expression","phrase":"assignment left expression","role":"concept","definition":"A rule for an assignment left expression, the construct the upstream grammar names _assignment_left_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"assignment_left_expression"}],"formerNames":[]},
    {"id":"grammar.assignment-expression","phrase":"assignment expression","role":"concept","definition":"A rule for an assignment expression, the construct the upstream grammar names assignment_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"assignment_expression"},{"source":"native:java","name":"assignment_expression"},{"source":"native:javascript","name":"assignment_expression"},{"source":"native:rust","name":"assignment_expression"},{"source":"native:solidity","name":"assignment_expression"},{"source":"native:tsx","name":"assignment_expression"},{"source":"native:typescript","name":"assignment_expression"}],"formerNames":[]},
    {"id":"grammar.pointer-expression","phrase":"pointer expression","role":"concept","definition":"A rule for a pointer expression, the construct the upstream grammar names pointer_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"pointer_expression"}],"formerNames":[]},
    {"id":"grammar.unary-expression","phrase":"unary expression","role":"concept","definition":"A rule for an unary expression, the construct the upstream grammar names unary_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"unary_expression"},{"source":"native:go","name":"unary_expression"},{"source":"native:java","name":"unary_expression"},{"source":"native:javascript","name":"unary_expression"},{"source":"native:lean","name":"unary_expression"},{"source":"native:rust","name":"unary_expression"},{"source":"native:solidity","name":"unary_expression"},{"source":"native:tsx","name":"unary_expression"},{"source":"native:typescript","name":"unary_expression"}],"formerNames":[]},
    {"id":"grammar.binary-expression","phrase":"binary expression","role":"concept","definition":"A rule for a binary expression, the construct the upstream grammar names binary_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"binary_expression"},{"source":"native:go","name":"binary_expression"},{"source":"native:java","name":"binary_expression"},{"source":"native:javascript","name":"binary_expression"},{"source":"native:lean","name":"binary_expression"},{"source":"native:rust","name":"binary_expression"},{"source":"native:solidity","name":"binary_expression"},{"source":"native:tsx","name":"binary_expression"},{"source":"native:typescript","name":"binary_expression"}],"formerNames":[]},
    {"id":"grammar.update-expression","phrase":"update expression","role":"concept","definition":"A rule for an update expression, the construct the upstream grammar names update_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"update_expression"},{"source":"native:java","name":"update_expression"},{"source":"native:javascript","name":"update_expression"},{"source":"native:solidity","name":"update_expression"},{"source":"native:tsx","name":"update_expression"},{"source":"native:typescript","name":"update_expression"}],"formerNames":[]},
    {"id":"grammar.cast-expression","phrase":"cast expression","role":"concept","definition":"A rule for a cast expression, the construct the upstream grammar names cast_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"cast_expression"},{"source":"native:java","name":"cast_expression"}],"formerNames":[]},
    {"id":"grammar.type-descriptor","phrase":"type descriptor","role":"concept","definition":"A rule for a type descriptor, the construct the upstream grammar names type_descriptor.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"type_descriptor"}],"formerNames":[]},
    {"id":"grammar.size-of-expression","phrase":"size of expression","role":"concept","definition":"A rule for a size of expression, the construct the upstream grammar names sizeof_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"size_of_expression"}],"formerNames":[]},
    {"id":"grammar.alignment-of-expression","phrase":"alignment of expression","role":"concept","definition":"A rule for an alignment of expression, the construct the upstream grammar names alignof_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"alignment_of_expression"}],"formerNames":[]},
    {"id":"grammar.offset-of-expression","phrase":"offset of expression","role":"concept","definition":"A rule for an offset of expression, the construct the upstream grammar names offsetof_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"offset_of_expression"}],"formerNames":[]},
    {"id":"grammar.generic-expression","phrase":"generic expression","role":"concept","definition":"A rule for a generic expression, the construct the upstream grammar names generic_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"generic_expression"}],"formerNames":[]},
    {"id":"grammar.subscript-expression","phrase":"subscript expression","role":"concept","definition":"A rule for a subscript expression, the construct the upstream grammar names subscript_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"subscript_expression"},{"source":"native:javascript","name":"subscript_expression"},{"source":"native:tsx","name":"subscript_expression"},{"source":"native:typescript","name":"subscript_expression"}],"formerNames":[]},
    {"id":"grammar.call-expression","phrase":"call expression","role":"concept","definition":"A rule for a call expression, the construct the upstream grammar names call_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"call_expression"},{"source":"native:go","name":"call_expression"},{"source":"native:javascript","name":"call_expression"},{"source":"native:make","name":"function_call"},{"source":"native:rust","name":"call_expression"},{"source":"native:solidity","name":"call_expression"},{"source":"native:tsx","name":"call_expression"},{"source":"native:typescript","name":"call_expression"}],"formerNames":[]},
    {"id":"grammar.gnu-assembly-expression","phrase":"gnu assembly expression","role":"concept","definition":"A rule for a gnu assembly expression, the construct the upstream grammar names gnu_asm_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"gnu_assembly_expression"}],"formerNames":[]},
    {"id":"grammar.gnu-assembly-qualifier","phrase":"gnu assembly qualifier","role":"concept","definition":"A rule for a gnu assembly qualifier, the construct the upstream grammar names gnu_asm_qualifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"gnu_assembly_qualifier"}],"formerNames":[]},
    {"id":"grammar.gnu-assembly-output-operand-list","phrase":"gnu assembly output operand list","role":"concept","definition":"A rule for a gnu assembly output operand list, the construct the upstream grammar names gnu_asm_output_operand_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"gnu_assembly_output_operand_list"}],"formerNames":[]},
    {"id":"grammar.gnu-assembly-output-operand","phrase":"gnu assembly output operand","role":"concept","definition":"A rule for a gnu assembly output operand, the construct the upstream grammar names gnu_asm_output_operand.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"gnu_assembly_output_operand"}],"formerNames":[]},
    {"id":"grammar.gnu-assembly-input-operand-list","phrase":"gnu assembly input operand list","role":"concept","definition":"A rule for a gnu assembly input operand list, the construct the upstream grammar names gnu_asm_input_operand_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"gnu_assembly_input_operand_list"}],"formerNames":[]},
    {"id":"grammar.gnu-assembly-input-operand","phrase":"gnu assembly input operand","role":"concept","definition":"A rule for a gnu assembly input operand, the construct the upstream grammar names gnu_asm_input_operand.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"gnu_assembly_input_operand"}],"formerNames":[]},
    {"id":"grammar.gnu-assembly-clobber-list","phrase":"gnu assembly clobber list","role":"concept","definition":"A rule for a gnu assembly clobber list, the construct the upstream grammar names gnu_asm_clobber_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"gnu_assembly_clobber_list"}],"formerNames":[]},
    {"id":"grammar.gnu-assembly-go-to-list","phrase":"gnu assembly go to list","role":"concept","definition":"A rule for a gnu assembly go to list, the construct the upstream grammar names gnu_asm_goto_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"gnu_assembly_go_to_list"}],"formerNames":[]},
    {"id":"grammar.extension-expression","phrase":"extension expression","role":"concept","definition":"A rule for an extension expression, the construct the upstream grammar names extension_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"extension_expression"}],"formerNames":[]},
    {"id":"grammar.argument-list","phrase":"argument list","role":"concept","definition":"A rule for an argument list, the construct the upstream grammar names argument_list.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"argument_list"},{"source":"native:go","name":"argument_list"},{"source":"native:graphql","name":"arguments"},{"source":"native:java","name":"argument_list"},{"source":"native:javascript","name":"arguments"},{"source":"native:make","name":"arguments"},{"source":"native:rust","name":"arguments"},{"source":"native:tsx","name":"arguments"},{"source":"native:typescript","name":"arguments"}],"formerNames":[],"distinctFrom":[{"id":"grammar.parameter-list","reason":"An argument list gives the values a call passes, while a parameter list declares the names a function takes."}]},
    {"id":"grammar.field-expression","phrase":"field expression","role":"concept","definition":"A rule for a field expression, the construct the upstream grammar names field_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"field_expression"},{"source":"native:rust","name":"field_expression"}],"formerNames":[]},
    {"id":"grammar.compound-literal-expression","phrase":"compound literal expression","role":"concept","definition":"A rule for a compound literal expression, the construct the upstream grammar names compound_literal_expression.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"compound_literal_expression"}],"formerNames":[]},
    {"id":"grammar.parenthesized-expression","phrase":"parenthesized expression","role":"concept","definition":"A rule for a parenthesized expression, the construct the upstream grammar names parenthesized_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"parenthesized_expression"},{"source":"native:go","name":"parenthesized_expression"},{"source":"native:java","name":"parenthesized_expression"},{"source":"native:javascript","name":"parenthesized_expression"},{"source":"native:lean","name":"parenthesized"},{"source":"native:rust","name":"parenthesized_expression"},{"source":"native:solidity","name":"parenthesized_expression"},{"source":"native:tsx","name":"parenthesized_expression"},{"source":"native:typescript","name":"parenthesized_expression"}],"formerNames":[]},
    {"id":"grammar.initializer-list","phrase":"initializer list","role":"concept","definition":"A rule for an initializer list, the construct the upstream grammar names initializer_list.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"initializer_list"}],"formerNames":[]},
    {"id":"grammar.initializer-pair","phrase":"initializer pair","role":"concept","definition":"A rule for an initializer pair, the construct the upstream grammar names initializer_pair.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"initializer_pair"}],"formerNames":[]},
    {"id":"grammar.subscript-designator","phrase":"subscript designator","role":"concept","definition":"A rule for a subscript designator, the construct the upstream grammar names subscript_designator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"subscript_designator"}],"formerNames":[]},
    {"id":"grammar.subscript-range-designator","phrase":"subscript range designator","role":"concept","definition":"A rule for a subscript range designator, the construct the upstream grammar names subscript_range_designator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"subscript_range_designator"}],"formerNames":[]},
    {"id":"grammar.field-designator","phrase":"field designator","role":"concept","definition":"A rule for a field designator, the construct the upstream grammar names field_designator.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"field_designator"}],"formerNames":[]},
    {"id":"grammar.number-literal","phrase":"number literal","role":"concept","definition":"A rule for a number literal, the construct the upstream grammar names number_literal.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"number_literal"},{"source":"native:solidity","name":"number_literal"}],"formerNames":[]},
    {"id":"grammar.concatenated-string","phrase":"concatenated string","role":"concept","definition":"A rule for a concatenated string, the construct the upstream grammar names concatenated_string.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"concatenated_string"}],"formerNames":[]},
    {"id":"grammar.string-literal","phrase":"string literal","role":"concept","definition":"A rule for a string literal, the construct the upstream grammar names string_literal.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"string_literal"},{"source":"native:go","name":"string_literal"},{"source":"native:java","name":"string_literal"},{"source":"native:rust","name":"string_literal"},{"source":"native:solidity","name":"string_literal"}],"formerNames":[]},
    {"id":"grammar.system-library-string","phrase":"system library string","role":"concept","definition":"A rule for a system library string, the construct the upstream grammar names system_lib_string.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"system_library_string"}],"formerNames":[]},
    {"id":"grammar.type-identifier-alias","phrase":"type identifier alias","role":"concept","definition":"A rule for a type identifier alias, the construct the upstream grammar names _type_identifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"type_identifier_alias"},{"source":"native:go","name":"type_identifier_alias"},{"source":"native:rust","name":"type_identifier_alias"},{"source":"native:tsx","name":"type_identifier_alias"},{"source":"native:typescript","name":"type_identifier_alias"}],"formerNames":[]},
    {"id":"grammar.field-identifier-alias","phrase":"field identifier alias","role":"concept","definition":"A rule for a field identifier alias, the construct the upstream grammar names _field_identifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"field_identifier_alias"},{"source":"native:go","name":"field_identifier_alias"},{"source":"native:rust","name":"field_identifier_alias"}],"formerNames":[]},
    {"id":"grammar.statement-identifier-alias","phrase":"statement identifier alias","role":"concept","definition":"A rule for a statement identifier alias, the construct the upstream grammar names _statement_identifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"statement_identifier_alias"}],"formerNames":[]},
    {"id":"grammar.empty-declaration","phrase":"empty declaration","role":"concept","definition":"A rule for an empty declaration, the construct the upstream grammar names _empty_declaration.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"empty_declaration"}],"formerNames":[]},
    {"id":"grammar.macro-type-specifier","phrase":"macro type specifier","role":"concept","definition":"A rule for a macro type specifier, the construct the upstream grammar names macro_type_specifier.","constraints":["Only the native C grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"macro_type_specifier"}],"formerNames":[]},
    {"id":"grammar.word-characters","phrase":"word characters","role":"concept","definition":"A rule for a word characters, the construct the upstream grammar names word_characters.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:c","name":"word_characters"},{"source":"native:go","name":"word_characters"},{"source":"native:java","name":"word_characters"},{"source":"native:javascript","name":"word_characters"},{"source":"native:lean","name":"word_characters"},{"source":"native:make","name":"word_characters"},{"source":"native:rocq","name":"word_characters"},{"source":"native:rust","name":"word_characters"},{"source":"native:solidity","name":"word_characters"},{"source":"native:tsx","name":"word_characters"},{"source":"native:typescript","name":"word_characters"}],"formerNames":[]},
    {"id":"grammar.source-file","phrase":"source file","role":"concept","definition":"A rule for a source file, the construct the upstream grammar names source_file.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"source_file"},{"source":"native:graphql","name":"source_file"},{"source":"native:proto","name":"source_file"},{"source":"native:rocq","name":"source_file"},{"source":"native:rust","name":"source_file"},{"source":"native:solidity","name":"source_file"}],"formerNames":[]},
    {"id":"grammar.empty-statement","phrase":"empty statement","role":"concept","definition":"A rule for an empty statement, the construct the upstream grammar names empty_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"empty_statement"},{"source":"native:javascript","name":"empty_statement"},{"source":"native:proto","name":"empty_statement"},{"source":"native:rust","name":"empty_statement"},{"source":"native:tsx","name":"empty_statement"},{"source":"native:typescript","name":"empty_statement"}],"formerNames":[]},
    {"id":"grammar.declaration-statement","phrase":"declaration statement","role":"concept","definition":"A rule for a declaration statement, the construct the upstream grammar names _declaration_statement.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"declaration_statement"}],"formerNames":[]},
    {"id":"grammar.macro-definition","phrase":"macro definition","role":"concept","definition":"A rule for a macro definition, the construct the upstream grammar names macro_definition.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"macro_definition"}],"formerNames":[]},
    {"id":"grammar.macro-rule","phrase":"macro rule","role":"concept","definition":"A rule for a macro rule, the construct the upstream grammar names macro_rule.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"macro_rule"}],"formerNames":[]},
    {"id":"grammar.token-pattern","phrase":"token pattern","role":"concept","definition":"A rule for a token pattern, the construct the upstream grammar names _token_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"token_pattern"}],"formerNames":[],"distinctFrom":[{"id":"grammar.token-rule","reason":"A token pattern is the matcher of a macro rule, while a token rule is a grammar rule matched as one lexical token."}]},
    {"id":"grammar.token-tree-pattern","phrase":"token tree pattern","role":"concept","definition":"A rule for a token tree pattern, the construct the upstream grammar names token_tree_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"token_tree_pattern"}],"formerNames":[]},
    {"id":"grammar.token-binding-pattern","phrase":"token binding pattern","role":"concept","definition":"A rule for a token binding pattern, the construct the upstream grammar names token_binding_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"token_binding_pattern"}],"formerNames":[]},
    {"id":"grammar.token-repetition-pattern","phrase":"token repetition pattern","role":"concept","definition":"A rule for a token repetition pattern, the construct the upstream grammar names token_repetition_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"token_repetition_pattern"}],"formerNames":[]},
    {"id":"grammar.fragment-specifier","phrase":"fragment specifier","role":"concept","definition":"A rule for a fragment specifier, the construct the upstream grammar names fragment_specifier.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"fragment_specifier"}],"formerNames":[]},
    {"id":"grammar.tokens","phrase":"tokens","role":"concept","definition":"A rule for a tokens, the construct the upstream grammar names _tokens.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"tokens"}],"formerNames":[],"distinctFrom":[{"id":"grammar.item","reason":"Tokens are the token trees a macro rule expands to, while an item is one element of a list."}]},
    {"id":"grammar.token-tree","phrase":"token tree","role":"concept","definition":"A rule for a token tree, the construct the upstream grammar names token_tree.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"token_tree"}],"formerNames":[]},
    {"id":"grammar.token-repetition","phrase":"token repetition","role":"concept","definition":"A rule for a token repetition, the construct the upstream grammar names token_repetition.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"token_repetition"}],"formerNames":[]},
    {"id":"grammar.non-special-token","phrase":"non special token","role":"concept","definition":"A rule for a non special token, the construct the upstream grammar names _non_special_token.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"non_special_token"}],"formerNames":[]},
    {"id":"grammar.attribute-item","phrase":"attribute item","role":"concept","definition":"A rule for an attribute item, the construct the upstream grammar names attribute_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"attribute_item"}],"formerNames":[]},
    {"id":"grammar.inner-attribute-item","phrase":"inner attribute item","role":"concept","definition":"A rule for an inner attribute item, the construct the upstream grammar names inner_attribute_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"inner_attribute_item"}],"formerNames":[]},
    {"id":"grammar.module-item","phrase":"module item","role":"concept","definition":"A rule for a module item, the construct the upstream grammar names mod_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"module_item"}],"formerNames":[]},
    {"id":"grammar.foreign-module-item","phrase":"foreign module item","role":"concept","definition":"A rule for a foreign module item, the construct the upstream grammar names foreign_mod_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"foreign_module_item"}],"formerNames":[]},
    {"id":"grammar.structure-item","phrase":"structure item","role":"concept","definition":"A rule for a structure item, the construct the upstream grammar names struct_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"structure_item"}],"formerNames":[]},
    {"id":"grammar.union-item","phrase":"union item","role":"concept","definition":"A rule for an union item, the construct the upstream grammar names union_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"union_item"}],"formerNames":[]},
    {"id":"grammar.enumeration-item","phrase":"enumeration item","role":"concept","definition":"A rule for an enumeration item, the construct the upstream grammar names enum_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"enumeration_item"}],"formerNames":[]},
    {"id":"grammar.enumeration-variant-list","phrase":"enumeration variant list","role":"concept","definition":"A rule for an enumeration variant list, the construct the upstream grammar names enum_variant_list.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"enumeration_variant_list"}],"formerNames":[]},
    {"id":"grammar.enumeration-variant","phrase":"enumeration variant","role":"concept","definition":"A rule for an enumeration variant, the construct the upstream grammar names enum_variant.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"enumeration_variant"}],"formerNames":[]},
    {"id":"grammar.ordered-field-declaration-list","phrase":"ordered field declaration list","role":"concept","definition":"A rule for an ordered field declaration list, the construct the upstream grammar names ordered_field_declaration_list.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"ordered_field_declaration_list"}],"formerNames":[]},
    {"id":"grammar.extern-crate-declaration","phrase":"extern crate declaration","role":"concept","definition":"A rule for an extern crate declaration, the construct the upstream grammar names extern_crate_declaration.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"extern_crate_declaration"}],"formerNames":[]},
    {"id":"grammar.constant-item","phrase":"constant item","role":"concept","definition":"A rule for a constant item, the construct the upstream grammar names const_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"constant_item"}],"formerNames":[]},
    {"id":"grammar.static-item","phrase":"static item","role":"concept","definition":"A rule for a static item, the construct the upstream grammar names static_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"static_item"}],"formerNames":[]},
    {"id":"grammar.type-item","phrase":"type item","role":"concept","definition":"A rule for a type item, the construct the upstream grammar names type_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"type_item"}],"formerNames":[]},
    {"id":"grammar.function-item","phrase":"function item","role":"concept","definition":"A rule for a function item, the construct the upstream grammar names function_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"function_item"}],"formerNames":[]},
    {"id":"grammar.function-signature-item","phrase":"function signature item","role":"concept","definition":"A rule for a function signature item, the construct the upstream grammar names function_signature_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"function_signature_item"}],"formerNames":[]},
    {"id":"grammar.function-modifiers","phrase":"function modifiers","role":"concept","definition":"A rule for a function modifiers, the construct the upstream grammar names function_modifiers.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"function_modifiers"}],"formerNames":[]},
    {"id":"grammar.where-clause","phrase":"where clause","role":"concept","definition":"A rule for a where clause, the construct the upstream grammar names where_clause.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"where_clause"}],"formerNames":[]},
    {"id":"grammar.where-predicate","phrase":"where predicate","role":"concept","definition":"A rule for a where predicate, the construct the upstream grammar names where_predicate.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"where_predicate"}],"formerNames":[]},
    {"id":"grammar.implementation-item","phrase":"implementation item","role":"concept","definition":"A rule for an implementation item, the construct the upstream grammar names impl_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"implementation_item"}],"formerNames":[]},
    {"id":"grammar.trait-item","phrase":"trait item","role":"concept","definition":"A rule for a trait item, the construct the upstream grammar names trait_item.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"trait_item"}],"formerNames":[]},
    {"id":"grammar.associated-type","phrase":"associated type","role":"concept","definition":"A rule for an associated type, the construct the upstream grammar names associated_type.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"associated_type"}],"formerNames":[]},
    {"id":"grammar.trait-bounds","phrase":"trait bounds","role":"concept","definition":"A rule for a trait bounds, the construct the upstream grammar names trait_bounds.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"trait_bounds"}],"formerNames":[]},
    {"id":"grammar.higher-ranked-trait-bound","phrase":"higher ranked trait bound","role":"concept","definition":"A rule for a higher ranked trait bound, the construct the upstream grammar names higher_ranked_trait_bound.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"higher_ranked_trait_bound"}],"formerNames":[]},
    {"id":"grammar.removed-trait-bound","phrase":"removed trait bound","role":"concept","definition":"A rule for a removed trait bound, the construct the upstream grammar names removed_trait_bound.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"removed_trait_bound"}],"formerNames":[]},
    {"id":"grammar.type-parameter-list","phrase":"type parameter list","role":"concept","definition":"A rule for a type parameter list, the construct the upstream grammar names type_parameters.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_parameter_list"},{"source":"native:java","name":"type_parameters"},{"source":"native:rust","name":"type_parameters"},{"source":"native:tsx","name":"type_parameters"},{"source":"native:typescript","name":"type_parameters"}],"formerNames":[]},
    {"id":"grammar.constant-parameter","phrase":"constant parameter","role":"concept","definition":"A rule for a constant parameter, the construct the upstream grammar names const_parameter.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"constant_parameter"}],"formerNames":[]},
    {"id":"grammar.type-parameter","phrase":"type parameter","role":"concept","definition":"A rule for a type parameter, the construct the upstream grammar names type_parameter.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"type_parameter"},{"source":"native:rust","name":"type_parameter"},{"source":"native:tsx","name":"type_parameter"},{"source":"native:typescript","name":"type_parameter"}],"formerNames":[]},
    {"id":"grammar.lifetime-parameter","phrase":"lifetime parameter","role":"concept","definition":"A rule for a lifetime parameter, the construct the upstream grammar names lifetime_parameter.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"lifetime_parameter"}],"formerNames":[]},
    {"id":"grammar.let-declaration","phrase":"let declaration","role":"concept","definition":"A rule for a let declaration, the construct the upstream grammar names let_declaration.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"let_declaration"}],"formerNames":[]},
    {"id":"grammar.use-declaration","phrase":"use declaration","role":"concept","definition":"A rule for an use declaration, the construct the upstream grammar names use_declaration.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"use_declaration"}],"formerNames":[]},
    {"id":"grammar.use-clause","phrase":"use clause","role":"concept","definition":"A rule for an use clause, the construct the upstream grammar names _use_clause.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"use_clause"}],"formerNames":[]},
    {"id":"grammar.scoped-use-list","phrase":"scoped use list","role":"concept","definition":"A rule for a scoped use list, the construct the upstream grammar names scoped_use_list.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"scoped_use_list"}],"formerNames":[]},
    {"id":"grammar.use-list","phrase":"use list","role":"concept","definition":"A rule for an use list, the construct the upstream grammar names use_list.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"use_list"}],"formerNames":[]},
    {"id":"grammar.use-as-clause","phrase":"use as clause","role":"concept","definition":"A rule for an use as clause, the construct the upstream grammar names use_as_clause.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"use_as_clause"}],"formerNames":[]},
    {"id":"grammar.use-wildcard","phrase":"use wildcard","role":"concept","definition":"A rule for an use wildcard, the construct the upstream grammar names use_wildcard.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"use_wildcard"}],"formerNames":[]},
    {"id":"grammar.self-parameter","phrase":"self parameter","role":"concept","definition":"A rule for a self parameter, the construct the upstream grammar names self_parameter.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"self_parameter"}],"formerNames":[]},
    {"id":"grammar.extern-modifier","phrase":"extern modifier","role":"concept","definition":"A rule for an extern modifier, the construct the upstream grammar names extern_modifier.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"extern_modifier"}],"formerNames":[]},
    {"id":"grammar.visibility-modifier","phrase":"visibility modifier","role":"concept","definition":"A rule for a visibility modifier, the construct the upstream grammar names visibility_modifier.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"visibility_modifier"}],"formerNames":[]},
    {"id":"grammar.type","phrase":"type","role":"concept","definition":"A rule for a type, the construct the upstream grammar names _type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type"},{"source":"native:graphql","name":"type"},{"source":"native:java","name":"type"},{"source":"native:proto","name":"type"},{"source":"native:rocq","name":"type"},{"source":"native:rust","name":"type"},{"source":"native:tsx","name":"type"},{"source":"native:typescript","name":"type"}],"formerNames":[],"distinctFrom":[{"id":"grammar.value.character","reason":"A type classifies the values of an expression, while a character is one Unicode scalar value."}]},
    {"id":"grammar.bracketed-type","phrase":"bracketed type","role":"concept","definition":"A rule for a bracketed type, the construct the upstream grammar names bracketed_type.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"bracketed_type"}],"formerNames":[]},
    {"id":"grammar.qualified-type","phrase":"qualified type","role":"concept","definition":"A rule for a qualified type, the construct the upstream grammar names qualified_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"qualified_type"},{"source":"native:rust","name":"qualified_type"}],"formerNames":[]},
    {"id":"grammar.lifetime","phrase":"lifetime","role":"concept","definition":"A rule for a lifetime, the construct the upstream grammar names lifetime.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"lifetime"}],"formerNames":[]},
    {"id":"grammar.array-type","phrase":"array type","role":"concept","definition":"A rule for an array type, the construct the upstream grammar names array_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"array_type"},{"source":"native:java","name":"array_type"},{"source":"native:rust","name":"array_type"},{"source":"native:solidity","name":"array_type"},{"source":"native:tsx","name":"array_type"},{"source":"native:typescript","name":"array_type"}],"formerNames":[]},
    {"id":"grammar.for-lifetimes","phrase":"for lifetimes","role":"concept","definition":"A rule for a for lifetimes, the construct the upstream grammar names for_lifetimes.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"for_lifetimes"}],"formerNames":[]},
    {"id":"grammar.function-type","phrase":"function type","role":"concept","definition":"A rule for a function type, the construct the upstream grammar names function_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"function_type"},{"source":"native:rust","name":"function_type"},{"source":"native:solidity","name":"function_type"},{"source":"native:tsx","name":"function_type"},{"source":"native:typescript","name":"function_type"}],"formerNames":[]},
    {"id":"grammar.tuple-type","phrase":"tuple type","role":"concept","definition":"A rule for a tuple type, the construct the upstream grammar names tuple_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"tuple_type"},{"source":"native:tsx","name":"tuple_type"},{"source":"native:typescript","name":"tuple_type"}],"formerNames":[]},
    {"id":"grammar.unit-type","phrase":"unit type","role":"concept","definition":"A rule for an unit type, the construct the upstream grammar names unit_type.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"unit_type"}],"formerNames":[]},
    {"id":"grammar.generic-function","phrase":"generic function","role":"concept","definition":"A rule for a generic function, the construct the upstream grammar names generic_function.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"generic_function"}],"formerNames":[]},
    {"id":"grammar.generic-type","phrase":"generic type","role":"concept","definition":"A rule for a generic type, the construct the upstream grammar names generic_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"generic_type"},{"source":"native:java","name":"generic_type"},{"source":"native:rust","name":"generic_type"},{"source":"native:tsx","name":"generic_type"},{"source":"native:typescript","name":"generic_type"}],"formerNames":[]},
    {"id":"grammar.generic-type-with-turbofish","phrase":"generic type with turbofish","role":"concept","definition":"A rule for a generic type with turbofish, the construct the upstream grammar names generic_type_with_turbofish.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"generic_type_with_turbofish"}],"formerNames":[]},
    {"id":"grammar.bounded-type","phrase":"bounded type","role":"concept","definition":"A rule for a bounded type, the construct the upstream grammar names bounded_type.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"bounded_type"}],"formerNames":[]},
    {"id":"grammar.use-bounds","phrase":"use bounds","role":"concept","definition":"A rule for an use bounds, the construct the upstream grammar names use_bounds.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"use_bounds"}],"formerNames":[]},
    {"id":"grammar.type-argument-list","phrase":"type argument list","role":"concept","definition":"A rule for a type argument list, the construct the upstream grammar names type_arguments.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_arguments"},{"source":"native:java","name":"type_arguments"},{"source":"native:rust","name":"type_arguments"},{"source":"native:tsx","name":"type_arguments"},{"source":"native:typescript","name":"type_arguments"}],"formerNames":[],"distinctFrom":[{"id":"grammar.type-parameter-list","reason":"A type argument list gives the types a generic use supplies, while a type parameter list declares the names a generic item takes."}]},
    {"id":"grammar.type-binding","phrase":"type binding","role":"concept","definition":"A rule for a type binding, the construct the upstream grammar names type_binding.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"type_binding"}],"formerNames":[]},
    {"id":"grammar.reference-type","phrase":"reference type","role":"concept","definition":"A rule for a reference type, the construct the upstream grammar names reference_type.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"reference_type"}],"formerNames":[]},
    {"id":"grammar.pointer-type","phrase":"pointer type","role":"concept","definition":"A rule for a pointer type, the construct the upstream grammar names pointer_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"pointer_type"},{"source":"native:rust","name":"pointer_type"}],"formerNames":[]},
    {"id":"grammar.never-type","phrase":"never type","role":"concept","definition":"A rule for a never type, the construct the upstream grammar names never_type.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"never_type"}],"formerNames":[]},
    {"id":"grammar.abstract-type","phrase":"abstract type","role":"concept","definition":"A rule for an abstract type, the construct the upstream grammar names abstract_type.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"abstract_type"}],"formerNames":[]},
    {"id":"grammar.dynamic-type","phrase":"dynamic type","role":"concept","definition":"A rule for a dynamic type, the construct the upstream grammar names dynamic_type.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"dynamic_type"}],"formerNames":[]},
    {"id":"grammar.mutable-specifier","phrase":"mutable specifier","role":"concept","definition":"A rule for a mutable specifier, the construct the upstream grammar names mutable_specifier.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"mutable_specifier"}],"formerNames":[]},
    {"id":"grammar.expression-except-range","phrase":"expression except range","role":"concept","definition":"A rule for an expression except range, the construct the upstream grammar names _expression_except_range.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"expression_except_range"}],"formerNames":[]},
    {"id":"grammar.expression-ending-with-block","phrase":"expression ending with block","role":"concept","definition":"A rule for an expression ending with block, the construct the upstream grammar names _expression_ending_with_block.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"expression_ending_with_block"}],"formerNames":[]},
    {"id":"grammar.macro-invocation","phrase":"macro invocation","role":"concept","definition":"A rule for a macro invocation, the construct the upstream grammar names macro_invocation.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"macro_invocation"}],"formerNames":[]},
    {"id":"grammar.delimited-token-tree","phrase":"delimited token tree","role":"concept","definition":"A rule for a delimited token tree, the construct the upstream grammar names delim_token_tree.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"delimited_token_tree"}],"formerNames":[]},
    {"id":"grammar.delimited-tokens","phrase":"delimited tokens","role":"concept","definition":"A rule for a delimited tokens, the construct the upstream grammar names _delim_tokens.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"delimited_tokens"}],"formerNames":[]},
    {"id":"grammar.non-delimited-token","phrase":"non delimited token","role":"concept","definition":"A rule for a non delimited token, the construct the upstream grammar names _non_delim_token.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"non_delimited_token"}],"formerNames":[]},
    {"id":"grammar.scoped-identifier","phrase":"scoped identifier","role":"concept","definition":"A rule for a scoped identifier, the construct the upstream grammar names scoped_identifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"scoped_identifier"},{"source":"native:rust","name":"scoped_identifier"}],"formerNames":[]},
    {"id":"grammar.scoped-type-identifier-in-expression-position","phrase":"scoped type identifier in expression position","role":"concept","definition":"A rule for a scoped type identifier in expression position, the construct the upstream grammar names scoped_type_identifier_in_expression_position.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"scoped_type_identifier_in_expression_position"}],"formerNames":[]},
    {"id":"grammar.scoped-type-identifier","phrase":"scoped type identifier","role":"concept","definition":"A rule for a scoped type identifier, the construct the upstream grammar names scoped_type_identifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"scoped_type_identifier"},{"source":"native:rust","name":"scoped_type_identifier"}],"formerNames":[]},
    {"id":"grammar.range-expression","phrase":"range expression","role":"concept","definition":"A rule for a range expression, the construct the upstream grammar names range_expression.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"range_expression"}],"formerNames":[]},
    {"id":"grammar.try-expression","phrase":"try expression","role":"concept","definition":"A rule for a try expression, the construct the upstream grammar names try_expression.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"try_expression"}],"formerNames":[]},
    {"id":"grammar.reference-expression","phrase":"reference expression","role":"concept","definition":"A rule for a reference expression, the construct the upstream grammar names reference_expression.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"reference_expression"}],"formerNames":[],"distinctFrom":[{"id":"grammar.extension-expression","reason":"A reference expression borrows a place with & or &mut, while an extension expression marks a GNU C extension with __extension__."}]},
    {"id":"grammar.compound-assignment-expression","phrase":"compound assignment expression","role":"concept","definition":"A rule for a compound assignment expression, the construct the upstream grammar names compound_assignment_expr.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"compound_assignment_expression"}],"formerNames":[]},
    {"id":"grammar.type-cast-expression","phrase":"type cast expression","role":"concept","definition":"A rule for a type cast expression, the construct the upstream grammar names type_cast_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"type_cast_expression"},{"source":"native:solidity","name":"type_cast_expression"}],"formerNames":[]},
    {"id":"grammar.return-expression","phrase":"return expression","role":"concept","definition":"A rule for a return expression, the construct the upstream grammar names return_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"return"},{"source":"native:rust","name":"return_expression"}],"formerNames":[]},
    {"id":"grammar.yield-expression","phrase":"yield expression","role":"concept","definition":"A rule for a yield expression, the construct the upstream grammar names yield_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"yield_expression"},{"source":"native:rust","name":"yield_expression"},{"source":"native:tsx","name":"yield_expression"},{"source":"native:typescript","name":"yield_expression"}],"formerNames":[],"distinctFrom":[{"id":"grammar.return-expression","reason":"A yield expression hands one value out of a generator and resumes after it, while a return expression leaves the function."}]},
    {"id":"grammar.array-expression","phrase":"array expression","role":"concept","definition":"A rule for an array expression, the construct the upstream grammar names array_expression.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"array_expression"}],"formerNames":[]},
    {"id":"grammar.tuple-expression","phrase":"tuple expression","role":"concept","definition":"A rule for a tuple expression, the construct the upstream grammar names tuple_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tuple"},{"source":"native:rust","name":"tuple_expression"},{"source":"native:solidity","name":"tuple_expression"}],"formerNames":[]},
    {"id":"grammar.unit-expression","phrase":"unit expression","role":"concept","definition":"A rule for an unit expression, the construct the upstream grammar names unit_expression.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"unit_expression"}],"formerNames":[]},
    {"id":"grammar.structure-expression","phrase":"structure expression","role":"concept","definition":"A rule for a structure expression, the construct the upstream grammar names struct_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"structure_expression"},{"source":"native:solidity","name":"structure_expression"}],"formerNames":[]},
    {"id":"grammar.field-initializer-list","phrase":"field initializer list","role":"concept","definition":"A rule for a field initializer list, the construct the upstream grammar names field_initializer_list.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"field_initializer_list"}],"formerNames":[]},
    {"id":"grammar.shorthand-field-initializer","phrase":"shorthand field initializer","role":"concept","definition":"A rule for a shorthand field initializer, the construct the upstream grammar names shorthand_field_initializer.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"shorthand_field_initializer"}],"formerNames":[]},
    {"id":"grammar.field-initializer","phrase":"field initializer","role":"concept","definition":"A rule for a field initializer, the construct the upstream grammar names field_initializer.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"field_initializer"}],"formerNames":[]},
    {"id":"grammar.base-field-initializer","phrase":"base field initializer","role":"concept","definition":"A rule for a base field initializer, the construct the upstream grammar names base_field_initializer.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"base_field_initializer"}],"formerNames":[]},
    {"id":"grammar.if-expression","phrase":"if expression","role":"concept","definition":"A rule for an if expression, the construct the upstream grammar names if_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"if"},{"source":"native:rocq","name":"if_expression"},{"source":"native:rust","name":"if_expression"}],"formerNames":[]},
    {"id":"grammar.let-condition","phrase":"let condition","role":"concept","definition":"A rule for a let condition, the construct the upstream grammar names let_condition.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"let_condition"}],"formerNames":[]},
    {"id":"grammar.let-chain-alias","phrase":"let chain alias","role":"concept","definition":"A rule for a let chain alias, the construct the upstream grammar names _let_chain.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"let_chain_alias"}],"formerNames":[]},
    {"id":"grammar.condition","phrase":"condition","role":"concept","definition":"A rule for a condition, the construct the upstream grammar names _condition.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"condition"}],"formerNames":[],"distinctFrom":[{"id":"grammar.term","reason":"A condition is the expression an if or while expression tests, while a term is an operand of addition or subtraction."}]},
    {"id":"grammar.match-expression","phrase":"match expression","role":"concept","definition":"A rule for a match expression, the construct the upstream grammar names match_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"match"},{"source":"native:rocq","name":"match_expression"},{"source":"native:rust","name":"match_expression"}],"formerNames":[]},
    {"id":"grammar.match-block","phrase":"match block","role":"concept","definition":"A rule for a match block, the construct the upstream grammar names match_block.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"match_block"}],"formerNames":[]},
    {"id":"grammar.match-arm","phrase":"match arm","role":"concept","definition":"A rule for a match arm, the construct the upstream grammar names match_arm.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"match_arm"},{"source":"native:rust","name":"match_arm"}],"formerNames":[]},
    {"id":"grammar.last-match-arm","phrase":"last match arm","role":"concept","definition":"A rule for a last match arm, the construct the upstream grammar names last_match_arm.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"last_match_arm"}],"formerNames":[]},
    {"id":"grammar.match-pattern","phrase":"match pattern","role":"concept","definition":"A rule for a match pattern, the construct the upstream grammar names match_pattern.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"match_pattern"},{"source":"native:rust","name":"match_pattern"}],"formerNames":[]},
    {"id":"grammar.while-expression","phrase":"while expression","role":"concept","definition":"A rule for a while expression, the construct the upstream grammar names while_expression.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"while_expression"}],"formerNames":[]},
    {"id":"grammar.loop-expression","phrase":"loop expression","role":"concept","definition":"A rule for a loop expression, the construct the upstream grammar names loop_expression.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"loop_expression"}],"formerNames":[]},
    {"id":"grammar.for-expression","phrase":"for expression","role":"concept","definition":"A rule for a for expression, the construct the upstream grammar names for_expression.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"for_expression"}],"formerNames":[]},
    {"id":"grammar.constant-block","phrase":"constant block","role":"concept","definition":"A rule for a constant block, the construct the upstream grammar names const_block.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"constant_block"}],"formerNames":[]},
    {"id":"grammar.closure-expression","phrase":"closure expression","role":"concept","definition":"A rule for a closure expression, the construct the upstream grammar names closure_expression.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"closure_expression"}],"formerNames":[]},
    {"id":"grammar.closure-parameters","phrase":"closure parameters","role":"concept","definition":"A rule for a closure parameters, the construct the upstream grammar names closure_parameters.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"closure_parameters"}],"formerNames":[]},
    {"id":"grammar.label","phrase":"label","role":"concept","definition":"A rule for a label, the construct the upstream grammar names label.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"label"}],"formerNames":[]},
    {"id":"grammar.break-expression","phrase":"break expression","role":"concept","definition":"A rule for a break expression, the construct the upstream grammar names break_expression.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"break_expression"}],"formerNames":[]},
    {"id":"grammar.continue-expression","phrase":"continue expression","role":"concept","definition":"A rule for a continue expression, the construct the upstream grammar names continue_expression.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"continue_expression"}],"formerNames":[]},
    {"id":"grammar.index-expression","phrase":"index expression","role":"concept","definition":"A rule for an index expression, the construct the upstream grammar names index_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"index_expression"},{"source":"native:rust","name":"index_expression"}],"formerNames":[]},
    {"id":"grammar.await-expression","phrase":"await expression","role":"concept","definition":"A rule for an await expression, the construct the upstream grammar names await_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"await_expression"},{"source":"native:rust","name":"await_expression"},{"source":"native:tsx","name":"await_expression"},{"source":"native:typescript","name":"await_expression"}],"formerNames":[]},
    {"id":"grammar.unsafe-block","phrase":"unsafe block","role":"concept","definition":"A rule for an unsafe block, the construct the upstream grammar names unsafe_block.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"unsafe_block"}],"formerNames":[]},
    {"id":"grammar.asynchronous-block","phrase":"asynchronous block","role":"concept","definition":"A rule for an asynchronous block, the construct the upstream grammar names async_block.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"asynchronous_block"}],"formerNames":[]},
    {"id":"grammar.generator-block","phrase":"generator block","role":"concept","definition":"A rule for a generator block, the construct the upstream grammar names gen_block.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"generator_block"}],"formerNames":[]},
    {"id":"grammar.try-block","phrase":"try block","role":"concept","definition":"A rule for a try block, the construct the upstream grammar names try_block.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"try_block"}],"formerNames":[]},
    {"id":"grammar.block","phrase":"block","role":"concept","definition":"A rule for a block, the construct the upstream grammar names block.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"block"},{"source":"native:java","name":"block"},{"source":"native:rust","name":"block"}],"formerNames":[]},
    {"id":"grammar.pattern","phrase":"pattern","role":"concept","definition":"A rule for a pattern, the construct the upstream grammar names _pattern.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"pattern"},{"source":"native:javascript","name":"pattern"},{"source":"native:lean","name":"pattern"},{"source":"native:regex","name":"pattern"},{"source":"native:rocq","name":"pattern"},{"source":"native:rust","name":"pattern"},{"source":"native:tsx","name":"pattern"},{"source":"native:typescript","name":"pattern"}],"formerNames":[],"distinctFrom":[{"id":"grammar.rule","reason":"A pattern matches and destructures a value in a program, while a grammar rule binds a non-terminal to an expression."}]},
    {"id":"grammar.generic-pattern","phrase":"generic pattern","role":"concept","definition":"A rule for a generic pattern, the construct the upstream grammar names generic_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"generic_pattern"}],"formerNames":[]},
    {"id":"grammar.tuple-pattern","phrase":"tuple pattern","role":"concept","definition":"A rule for a tuple pattern, the construct the upstream grammar names tuple_pattern.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tuple_pattern"},{"source":"native:rust","name":"tuple_pattern"}],"formerNames":[]},
    {"id":"grammar.slice-pattern","phrase":"slice pattern","role":"concept","definition":"A rule for a slice pattern, the construct the upstream grammar names slice_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"slice_pattern"}],"formerNames":[]},
    {"id":"grammar.tuple-structure-pattern","phrase":"tuple structure pattern","role":"concept","definition":"A rule for a tuple structure pattern, the construct the upstream grammar names tuple_struct_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"tuple_structure_pattern"}],"formerNames":[]},
    {"id":"grammar.structure-pattern","phrase":"structure pattern","role":"concept","definition":"A rule for a structure pattern, the construct the upstream grammar names struct_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"structure_pattern"}],"formerNames":[]},
    {"id":"grammar.field-pattern","phrase":"field pattern","role":"concept","definition":"A rule for a field pattern, the construct the upstream grammar names field_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"field_pattern"}],"formerNames":[]},
    {"id":"grammar.remaining-field-pattern","phrase":"remaining field pattern","role":"concept","definition":"A rule for a remaining field pattern, the construct the upstream grammar names remaining_field_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"remaining_field_pattern"}],"formerNames":[]},
    {"id":"grammar.mutable-pattern","phrase":"mutable pattern","role":"concept","definition":"A rule for a mutable pattern, the construct the upstream grammar names mut_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"mutable_pattern"}],"formerNames":[]},
    {"id":"grammar.range-pattern","phrase":"range pattern","role":"concept","definition":"A rule for a range pattern, the construct the upstream grammar names range_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"range_pattern"}],"formerNames":[]},
    {"id":"grammar.by-reference-pattern","phrase":"by reference pattern","role":"concept","definition":"A rule for a by reference pattern, the construct the upstream grammar names ref_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"by_reference_pattern"}],"formerNames":[]},
    {"id":"grammar.captured-pattern","phrase":"captured pattern","role":"concept","definition":"A rule for a captured pattern, the construct the upstream grammar names captured_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"captured_pattern"}],"formerNames":[]},
    {"id":"grammar.reference-pattern","phrase":"reference pattern","role":"concept","definition":"A rule for a reference pattern, the construct the upstream grammar names reference_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"reference_pattern"}],"formerNames":[]},
    {"id":"grammar.or-pattern","phrase":"or pattern","role":"concept","definition":"A rule for an or pattern, the construct the upstream grammar names or_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"or_pattern"}],"formerNames":[]},
    {"id":"grammar.literal","phrase":"literal","role":"concept","definition":"A rule for a literal, the construct the upstream grammar names _literal.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"literal"},{"source":"native:rust","name":"literal"},{"source":"native:solidity","name":"literal"}],"formerNames":[]},
    {"id":"grammar.literal-pattern","phrase":"literal pattern","role":"concept","definition":"A rule for a literal pattern, the construct the upstream grammar names _literal_pattern.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"literal_pattern"}],"formerNames":[]},
    {"id":"grammar.negative-literal","phrase":"negative literal","role":"concept","definition":"A rule for a negative literal, the construct the upstream grammar names negative_literal.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"negative_literal"}],"formerNames":[]},
    {"id":"grammar.integer-literal","phrase":"integer literal","role":"concept","definition":"A rule for an integer literal, the construct the upstream grammar names integer_literal.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"integer_literal"},{"source":"native:graphql","name":"integer_value"},{"source":"native:proto","name":"integer_literal"},{"source":"native:rocq","name":"integer"},{"source":"native:rust","name":"integer_literal"}],"formerNames":[]},
    {"id":"grammar.raw-string-literal","phrase":"raw string literal","role":"concept","definition":"A rule for a raw string literal, the construct the upstream grammar names raw_string_literal.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"raw_string_literal"},{"source":"native:rust","name":"raw_string_literal"}],"formerNames":[]},
    {"id":"grammar.boolean-literal","phrase":"boolean literal","role":"concept","definition":"A rule for a boolean literal, the construct the upstream grammar names boolean_literal.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"boolean_literal"},{"source":"native:solidity","name":"boolean_literal"}],"formerNames":[]},
    {"id":"grammar.line-comment","phrase":"line comment","role":"concept","definition":"A rule for a line comment, the construct the upstream grammar names line_comment.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"line_comment"},{"source":"native:rust","name":"line_comment"}],"formerNames":[]},
    {"id":"grammar.line-documentation-comment-marker","phrase":"line documentation comment marker","role":"concept","definition":"A rule for a line documentation comment marker, the construct the upstream grammar names _line_doc_comment_marker.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"line_documentation_comment_marker"}],"formerNames":[]},
    {"id":"grammar.inner-line-documentation-comment-marker","phrase":"inner line documentation comment marker","role":"concept","definition":"A rule for an inner line documentation comment marker, the construct the upstream grammar names _inner_line_doc_comment_marker.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"inner_line_documentation_comment_marker"}],"formerNames":[]},
    {"id":"grammar.outer-line-documentation-comment-marker","phrase":"outer line documentation comment marker","role":"concept","definition":"A rule for an outer line documentation comment marker, the construct the upstream grammar names _outer_line_doc_comment_marker.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"outer_line_documentation_comment_marker"}],"formerNames":[]},
    {"id":"grammar.block-documentation-comment-marker","phrase":"block documentation comment marker","role":"concept","definition":"A rule for a block documentation comment marker, the construct the upstream grammar names _block_doc_comment_marker.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"block_documentation_comment_marker"}],"formerNames":[]},
    {"id":"grammar.path","phrase":"path","role":"concept","definition":"A rule for a path, the construct the upstream grammar names _path.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"path"}],"formerNames":[]},
    {"id":"grammar.shebang","phrase":"shebang","role":"concept","definition":"A rule for a shebang, the construct the upstream grammar names shebang.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"shebang"}],"formerNames":[]},
    {"id":"grammar.frontmatter","phrase":"frontmatter","role":"concept","definition":"A rule for a frontmatter, the construct the upstream grammar names frontmatter.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"frontmatter"}],"formerNames":[]},
    {"id":"grammar.reserved-identifier","phrase":"reserved identifier","role":"concept","definition":"A rule for a reserved identifier, the construct the upstream grammar names _reserved_identifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"reserved_identifier"},{"source":"native:javascript","name":"reserved_identifier"},{"source":"native:rust","name":"reserved_identifier"},{"source":"native:tsx","name":"reserved_identifier"},{"source":"native:typescript","name":"reserved_identifier"}],"formerNames":[]},
    {"id":"grammar.self","phrase":"self","role":"concept","definition":"A rule for a self, the construct the upstream grammar names self.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"self"}],"formerNames":[]},
    {"id":"grammar.super","phrase":"super","role":"concept","definition":"A rule for a super, the construct the upstream grammar names super.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"super"},{"source":"native:javascript","name":"super"},{"source":"native:rust","name":"super"},{"source":"native:tsx","name":"super"},{"source":"native:typescript","name":"super"}],"formerNames":[]},
    {"id":"grammar.crate","phrase":"crate","role":"concept","definition":"A rule for a crate, the construct the upstream grammar names crate.","constraints":["Only the native Rust grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rust","name":"crate"}],"formerNames":[]},
    {"id":"grammar.metavariable","phrase":"metavariable","role":"concept","definition":"A rule for a metavariable, the construct the upstream grammar names metavariable.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"metavariable"},{"source":"native:rust","name":"metavariable"}],"formerNames":[]},
    {"id":"grammar.hash-bang-line","phrase":"hash bang line","role":"concept","definition":"A rule for a hash bang line, the construct the upstream grammar names hash_bang_line.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"hash_bang_line"},{"source":"native:tsx","name":"hash_bang_line"},{"source":"native:typescript","name":"hash_bang_line"}],"formerNames":[]},
    {"id":"grammar.export-statement","phrase":"export statement","role":"concept","definition":"A rule for an export statement, the construct the upstream grammar names export_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"export_statement"},{"source":"native:rocq","name":"export_command"},{"source":"native:tsx","name":"export_statement"},{"source":"native:typescript","name":"export_statement"}],"formerNames":[]},
    {"id":"grammar.namespace-export","phrase":"namespace export","role":"concept","definition":"A rule for a namespace export, the construct the upstream grammar names namespace_export.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"namespace_export"},{"source":"native:tsx","name":"namespace_export"},{"source":"native:typescript","name":"namespace_export"}],"formerNames":[]},
    {"id":"grammar.export-clause","phrase":"export clause","role":"concept","definition":"A rule for an export clause, the construct the upstream grammar names export_clause.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"export_clause"},{"source":"native:tsx","name":"export_clause"},{"source":"native:typescript","name":"export_clause"}],"formerNames":[]},
    {"id":"grammar.export-specifier","phrase":"export specifier","role":"concept","definition":"A rule for an export specifier, the construct the upstream grammar names export_specifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"export_specifier"},{"source":"native:tsx","name":"export_specifier"},{"source":"native:typescript","name":"export_specifier"}],"formerNames":[]},
    {"id":"grammar.module-export-name","phrase":"module export name","role":"concept","definition":"A rule for a module export name, the construct the upstream grammar names _module_export_name.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"module_export_name"},{"source":"native:tsx","name":"module_export_name"},{"source":"native:typescript","name":"module_export_name"}],"formerNames":[]},
    {"id":"grammar.import","phrase":"import","role":"concept","definition":"A rule for an import, the construct the upstream grammar names import.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"import"},{"source":"native:lean","name":"import"},{"source":"native:tsx","name":"import"},{"source":"native:typescript","name":"import"}],"formerNames":[]},
    {"id":"grammar.import-statement","phrase":"import statement","role":"concept","definition":"A rule for an import statement, the construct the upstream grammar names import_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"import_statement"},{"source":"native:rocq","name":"import_command"},{"source":"native:tsx","name":"import_statement"},{"source":"native:typescript","name":"import_statement"}],"formerNames":[]},
    {"id":"grammar.import-clause","phrase":"import clause","role":"concept","definition":"A rule for an import clause, the construct the upstream grammar names import_clause.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"import_clause"},{"source":"native:solidity","name":"import_clause"},{"source":"native:tsx","name":"import_clause"},{"source":"native:typescript","name":"import_clause"}],"formerNames":[]},
    {"id":"grammar.from-clause","phrase":"from clause","role":"concept","definition":"A rule for a from clause, the construct the upstream grammar names _from_clause.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"from_clause"},{"source":"native:solidity","name":"from_clause"},{"source":"native:tsx","name":"from_clause"},{"source":"native:typescript","name":"from_clause"}],"formerNames":[]},
    {"id":"grammar.namespace-import","phrase":"namespace import","role":"concept","definition":"A rule for a namespace import, the construct the upstream grammar names namespace_import.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"namespace_import"},{"source":"native:tsx","name":"namespace_import"},{"source":"native:typescript","name":"namespace_import"}],"formerNames":[]},
    {"id":"grammar.named-imports","phrase":"named imports","role":"concept","definition":"A rule for a named imports, the construct the upstream grammar names named_imports.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"named_imports"},{"source":"native:tsx","name":"named_imports"},{"source":"native:typescript","name":"named_imports"}],"formerNames":[]},
    {"id":"grammar.import-specifier","phrase":"import specifier","role":"concept","definition":"A rule for an import specifier, the construct the upstream grammar names import_specifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"import_specifier"},{"source":"native:tsx","name":"import_specifier"},{"source":"native:typescript","name":"import_specifier"}],"formerNames":[]},
    {"id":"grammar.import-attribute","phrase":"import attribute","role":"concept","definition":"A rule for an import attribute, the construct the upstream grammar names import_attribute.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"import_attribute"},{"source":"native:tsx","name":"import_attribute"},{"source":"native:typescript","name":"import_attribute"}],"formerNames":[]},
    {"id":"grammar.variable-declaration","phrase":"variable declaration","role":"concept","definition":"A rule for a variable declaration, the construct the upstream grammar names variable_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"variable_declaration"},{"source":"native:javascript","name":"variable_declaration"},{"source":"native:solidity","name":"variable_declaration"},{"source":"native:tsx","name":"variable_declaration"},{"source":"native:typescript","name":"variable_declaration"}],"formerNames":[]},
    {"id":"grammar.lexical-declaration","phrase":"lexical declaration","role":"concept","definition":"A rule for a lexical declaration, the construct the upstream grammar names lexical_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"lexical_declaration"},{"source":"native:tsx","name":"lexical_declaration"},{"source":"native:typescript","name":"lexical_declaration"}],"formerNames":[]},
    {"id":"grammar.using-declaration","phrase":"using declaration","role":"concept","definition":"A rule for an using declaration, the construct the upstream grammar names using_declaration.","constraints":["Only the native JavaScript grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"using_declaration"}],"formerNames":[]},
    {"id":"grammar.variable-declarator","phrase":"variable declarator","role":"concept","definition":"A rule for a variable declarator, the construct the upstream grammar names variable_declarator.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"variable_declarator"},{"source":"native:javascript","name":"variable_declarator"},{"source":"native:tsx","name":"variable_declarator"},{"source":"native:typescript","name":"variable_declarator"}],"formerNames":[]},
    {"id":"grammar.statement-block","phrase":"statement block","role":"concept","definition":"A rule for a statement block, the construct the upstream grammar names statement_block.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"statement_block"},{"source":"native:tsx","name":"statement_block"},{"source":"native:typescript","name":"statement_block"}],"formerNames":[]},
    {"id":"grammar.for-in-statement","phrase":"for in statement","role":"concept","definition":"A rule for a for in statement, the construct the upstream grammar names for_in_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"for_in_statement"},{"source":"native:tsx","name":"for_in_statement"},{"source":"native:typescript","name":"for_in_statement"}],"formerNames":[]},
    {"id":"grammar.for-header","phrase":"for header","role":"concept","definition":"A rule for a for header, the construct the upstream grammar names _for_header.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"for_header"},{"source":"native:tsx","name":"for_header"},{"source":"native:typescript","name":"for_header"}],"formerNames":[]},
    {"id":"grammar.try-statement","phrase":"try statement","role":"concept","definition":"A rule for a try statement, the construct the upstream grammar names try_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"try_statement"},{"source":"native:javascript","name":"try_statement"},{"source":"native:solidity","name":"try_statement"},{"source":"native:tsx","name":"try_statement"},{"source":"native:typescript","name":"try_statement"}],"formerNames":[]},
    {"id":"grammar.with-statement","phrase":"with statement","role":"concept","definition":"A rule for a with statement, the construct the upstream grammar names with_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"with_statement"},{"source":"native:tsx","name":"with_statement"},{"source":"native:typescript","name":"with_statement"}],"formerNames":[]},
    {"id":"grammar.debugger-statement","phrase":"debugger statement","role":"concept","definition":"A rule for a debugger statement, the construct the upstream grammar names debugger_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"debugger_statement"},{"source":"native:tsx","name":"debugger_statement"},{"source":"native:typescript","name":"debugger_statement"}],"formerNames":[]},
    {"id":"grammar.throw-statement","phrase":"throw statement","role":"concept","definition":"A rule for a throw statement, the construct the upstream grammar names throw_statement.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"throw_statement"},{"source":"native:javascript","name":"throw_statement"},{"source":"native:tsx","name":"throw_statement"},{"source":"native:typescript","name":"throw_statement"}],"formerNames":[]},
    {"id":"grammar.switch-body","phrase":"switch body","role":"concept","definition":"A rule for a switch body, the construct the upstream grammar names switch_body.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"switch_body"},{"source":"native:tsx","name":"switch_body"},{"source":"native:typescript","name":"switch_body"}],"formerNames":[]},
    {"id":"grammar.switch-case","phrase":"switch case","role":"concept","definition":"A rule for a switch case, the construct the upstream grammar names switch_case.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"switch_case"},{"source":"native:tsx","name":"switch_case"},{"source":"native:typescript","name":"switch_case"}],"formerNames":[]},
    {"id":"grammar.switch-default","phrase":"switch default","role":"concept","definition":"A rule for a switch default, the construct the upstream grammar names switch_default.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"switch_default"},{"source":"native:tsx","name":"switch_default"},{"source":"native:typescript","name":"switch_default"}],"formerNames":[]},
    {"id":"grammar.catch-clause","phrase":"catch clause","role":"concept","definition":"A rule for a catch clause, the construct the upstream grammar names catch_clause.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"catch_clause"},{"source":"native:javascript","name":"catch_clause"},{"source":"native:solidity","name":"catch_clause"},{"source":"native:tsx","name":"catch_clause"},{"source":"native:typescript","name":"catch_clause"}],"formerNames":[]},
    {"id":"grammar.finally-clause","phrase":"finally clause","role":"concept","definition":"A rule for a finally clause, the construct the upstream grammar names finally_clause.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"finally_clause"},{"source":"native:javascript","name":"finally_clause"},{"source":"native:tsx","name":"finally_clause"},{"source":"native:typescript","name":"finally_clause"}],"formerNames":[]},
    {"id":"grammar.expression-or-sequence","phrase":"expression or sequence","role":"concept","definition":"A rule for an expression or sequence, the construct the upstream grammar names _expressions.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"expressions"},{"source":"native:tsx","name":"expressions"},{"source":"native:typescript","name":"expressions"}],"formerNames":[]},
    {"id":"grammar.primary-expression","phrase":"primary expression","role":"concept","definition":"A rule for a primary expression, the construct the upstream grammar names primary_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"primary_expression"},{"source":"native:javascript","name":"primary_expression"},{"source":"native:solidity","name":"primary_expression"},{"source":"native:tsx","name":"primary_expression"},{"source":"native:typescript","name":"primary_expression"}],"formerNames":[]},
    {"id":"grammar.object-pattern","phrase":"object pattern","role":"concept","definition":"A rule for an object pattern, the construct the upstream grammar names object_pattern.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"object_pattern"},{"source":"native:tsx","name":"object_pattern"},{"source":"native:typescript","name":"object_pattern"}],"formerNames":[]},
    {"id":"grammar.assignment-pattern","phrase":"assignment pattern","role":"concept","definition":"A rule for an assignment pattern, the construct the upstream grammar names assignment_pattern.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"assignment_pattern"},{"source":"native:tsx","name":"assignment_pattern"},{"source":"native:typescript","name":"assignment_pattern"}],"formerNames":[]},
    {"id":"grammar.object-assignment-pattern","phrase":"object assignment pattern","role":"concept","definition":"A rule for an object assignment pattern, the construct the upstream grammar names object_assignment_pattern.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"object_assignment_pattern"},{"source":"native:tsx","name":"object_assignment_pattern"},{"source":"native:typescript","name":"object_assignment_pattern"}],"formerNames":[]},
    {"id":"grammar.array","phrase":"array","role":"concept","definition":"A rule for an array, the construct the upstream grammar names array.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"array"},{"source":"native:lean","name":"array"},{"source":"native:tsx","name":"array"},{"source":"native:typescript","name":"array"}],"formerNames":[]},
    {"id":"grammar.array-pattern","phrase":"array pattern","role":"concept","definition":"A rule for an array pattern, the construct the upstream grammar names array_pattern.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"array_pattern"},{"source":"native:tsx","name":"array_pattern"},{"source":"native:typescript","name":"array_pattern"}],"formerNames":[]},
    {"id":"grammar.jsx-element-choice","phrase":"jsx element choice","role":"concept","definition":"A rule for a jsx element choice, the construct the upstream grammar names _jsx_element.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_element_choice"},{"source":"native:tsx","name":"jsx_element_choice"},{"source":"native:typescript","name":"jsx_element_choice"}],"formerNames":[]},
    {"id":"grammar.jsx-element","phrase":"jsx element","role":"concept","definition":"A rule for a jsx element, the construct the upstream grammar names jsx_element.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_element"},{"source":"native:tsx","name":"jsx_element"},{"source":"native:typescript","name":"jsx_element"}],"formerNames":[]},
    {"id":"grammar.html-character-reference","phrase":"html character reference","role":"concept","definition":"A rule for a html character reference, the construct the upstream grammar names html_character_reference.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"html_character_reference"},{"source":"native:tsx","name":"html_character_reference"},{"source":"native:typescript","name":"html_character_reference"}],"formerNames":[]},
    {"id":"grammar.jsx-expression","phrase":"jsx expression","role":"concept","definition":"A rule for a jsx expression, the construct the upstream grammar names jsx_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_expression"},{"source":"native:tsx","name":"jsx_expression"},{"source":"native:typescript","name":"jsx_expression"}],"formerNames":[]},
    {"id":"grammar.jsx-child","phrase":"jsx child","role":"concept","definition":"A rule for a jsx child, the construct the upstream grammar names _jsx_child.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_child"},{"source":"native:tsx","name":"jsx_child"},{"source":"native:typescript","name":"jsx_child"}],"formerNames":[]},
    {"id":"grammar.jsx-opening-element","phrase":"jsx opening element","role":"concept","definition":"A rule for a jsx opening element, the construct the upstream grammar names jsx_opening_element.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_opening_element"},{"source":"native:tsx","name":"jsx_opening_element"},{"source":"native:typescript","name":"jsx_opening_element"}],"formerNames":[]},
    {"id":"grammar.jsx-identifier","phrase":"jsx identifier","role":"concept","definition":"A rule for a jsx identifier, the construct the upstream grammar names jsx_identifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_identifier"},{"source":"native:tsx","name":"jsx_identifier"},{"source":"native:typescript","name":"jsx_identifier"}],"formerNames":[]},
    {"id":"grammar.jsx-identifier-choice","phrase":"jsx identifier choice","role":"concept","definition":"A rule for a jsx identifier choice, the construct the upstream grammar names _jsx_identifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_identifier_choice"},{"source":"native:tsx","name":"jsx_identifier_choice"},{"source":"native:typescript","name":"jsx_identifier_choice"}],"formerNames":[]},
    {"id":"grammar.nested-identifier","phrase":"nested identifier","role":"concept","definition":"A rule for a nested identifier, the construct the upstream grammar names nested_identifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"nested_identifier"},{"source":"native:tsx","name":"nested_identifier"},{"source":"native:typescript","name":"nested_identifier"}],"formerNames":[]},
    {"id":"grammar.jsx-namespace-name","phrase":"jsx namespace name","role":"concept","definition":"A rule for a jsx namespace name, the construct the upstream grammar names jsx_namespace_name.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_namespace_name"},{"source":"native:tsx","name":"jsx_namespace_name"},{"source":"native:typescript","name":"jsx_namespace_name"}],"formerNames":[]},
    {"id":"grammar.jsx-element-name","phrase":"jsx element name","role":"concept","definition":"A rule for a jsx element name, the construct the upstream grammar names _jsx_element_name.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_element_name"},{"source":"native:tsx","name":"jsx_element_name"},{"source":"native:typescript","name":"jsx_element_name"}],"formerNames":[]},
    {"id":"grammar.jsx-closing-element","phrase":"jsx closing element","role":"concept","definition":"A rule for a jsx closing element, the construct the upstream grammar names jsx_closing_element.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_closing_element"},{"source":"native:tsx","name":"jsx_closing_element"},{"source":"native:typescript","name":"jsx_closing_element"}],"formerNames":[]},
    {"id":"grammar.jsx-self-closing-element","phrase":"jsx self closing element","role":"concept","definition":"A rule for a jsx self closing element, the construct the upstream grammar names jsx_self_closing_element.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_self_closing_element"},{"source":"native:tsx","name":"jsx_self_closing_element"},{"source":"native:typescript","name":"jsx_self_closing_element"}],"formerNames":[]},
    {"id":"grammar.jsx-attribute-choice","phrase":"jsx attribute choice","role":"concept","definition":"A rule for a jsx attribute choice, the construct the upstream grammar names _jsx_attribute.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_attribute_choice"},{"source":"native:tsx","name":"jsx_attribute_choice"},{"source":"native:typescript","name":"jsx_attribute_choice"}],"formerNames":[]},
    {"id":"grammar.jsx-attribute-name","phrase":"jsx attribute name","role":"concept","definition":"A rule for a jsx attribute name, the construct the upstream grammar names _jsx_attribute_name.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_attribute_name"},{"source":"native:tsx","name":"jsx_attribute_name"},{"source":"native:typescript","name":"jsx_attribute_name"}],"formerNames":[]},
    {"id":"grammar.jsx-attribute","phrase":"jsx attribute","role":"concept","definition":"A rule for a jsx attribute, the construct the upstream grammar names jsx_attribute.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_attribute"},{"source":"native:tsx","name":"jsx_attribute"},{"source":"native:typescript","name":"jsx_attribute"}],"formerNames":[]},
    {"id":"grammar.jsx-string","phrase":"jsx string","role":"concept","definition":"A rule for a jsx string, the construct the upstream grammar names _jsx_string.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_string"},{"source":"native:tsx","name":"jsx_string"},{"source":"native:typescript","name":"jsx_string"}],"formerNames":[]},
    {"id":"grammar.unescaped-double-jsx-string-fragment","phrase":"unescaped double jsx string fragment","role":"concept","definition":"A rule for an unescaped double jsx string fragment, the construct the upstream grammar names unescaped_double_jsx_string_fragment.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"unescaped_double_jsx_string_fragment"},{"source":"native:tsx","name":"unescaped_double_jsx_string_fragment"},{"source":"native:typescript","name":"unescaped_double_jsx_string_fragment"}],"formerNames":[]},
    {"id":"grammar.unescaped-single-jsx-string-fragment","phrase":"unescaped single jsx string fragment","role":"concept","definition":"A rule for an unescaped single jsx string fragment, the construct the upstream grammar names unescaped_single_jsx_string_fragment.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"unescaped_single_jsx_string_fragment"},{"source":"native:tsx","name":"unescaped_single_jsx_string_fragment"},{"source":"native:typescript","name":"unescaped_single_jsx_string_fragment"}],"formerNames":[]},
    {"id":"grammar.jsx-attribute-value","phrase":"jsx attribute value","role":"concept","definition":"A rule for a jsx attribute value, the construct the upstream grammar names _jsx_attribute_value.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"jsx_attribute_value"},{"source":"native:tsx","name":"jsx_attribute_value"},{"source":"native:typescript","name":"jsx_attribute_value"}],"formerNames":[]},
    {"id":"grammar.class","phrase":"class","role":"concept","definition":"A rule for a class, the construct the upstream grammar names class.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"class"},{"source":"native:tsx","name":"class"},{"source":"native:typescript","name":"class"}],"formerNames":[]},
    {"id":"grammar.class-declaration","phrase":"class declaration","role":"concept","definition":"A rule for a class declaration, the construct the upstream grammar names class_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"class_declaration"},{"source":"native:javascript","name":"class_declaration"},{"source":"native:tsx","name":"class_declaration"},{"source":"native:typescript","name":"class_declaration"}],"formerNames":[]},
    {"id":"grammar.class-heritage","phrase":"class heritage","role":"concept","definition":"A rule for a class heritage, the construct the upstream grammar names class_heritage.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"class_heritage"},{"source":"native:solidity","name":"class_heritage"},{"source":"native:tsx","name":"class_heritage"},{"source":"native:typescript","name":"class_heritage"}],"formerNames":[]},
    {"id":"grammar.function-expression","phrase":"function expression","role":"concept","definition":"A rule for a function expression, the construct the upstream grammar names function_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"function_expression"},{"source":"native:tsx","name":"function_expression"},{"source":"native:typescript","name":"function_expression"}],"formerNames":[]},
    {"id":"grammar.function-declaration","phrase":"function declaration","role":"concept","definition":"A rule for a function declaration, the construct the upstream grammar names function_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"function_declaration"},{"source":"native:javascript","name":"function_declaration"},{"source":"native:tsx","name":"function_declaration"},{"source":"native:typescript","name":"function_declaration"}],"formerNames":[],"distinctFrom":[{"id":"grammar.use-declaration","reason":"A function declaration binds a name to a function, while a use declaration brings the paths of another module into scope."}]},
    {"id":"grammar.generator-function","phrase":"generator function","role":"concept","definition":"A rule for a generator function, the construct the upstream grammar names generator_function.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"generator_function"},{"source":"native:tsx","name":"generator_function"},{"source":"native:typescript","name":"generator_function"}],"formerNames":[]},
    {"id":"grammar.generator-function-declaration","phrase":"generator function declaration","role":"concept","definition":"A rule for a generator function declaration, the construct the upstream grammar names generator_function_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"generator_function_declaration"},{"source":"native:tsx","name":"generator_function_declaration"},{"source":"native:typescript","name":"generator_function_declaration"}],"formerNames":[]},
    {"id":"grammar.arrow-function","phrase":"arrow function","role":"concept","definition":"A rule for an arrow function, the construct the upstream grammar names arrow_function.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"arrow_function"},{"source":"native:tsx","name":"arrow_function"},{"source":"native:typescript","name":"arrow_function"}],"formerNames":[]},
    {"id":"grammar.call-signature","phrase":"call signature","role":"concept","definition":"A rule for a call signature, the construct the upstream grammar names _call_signature.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"call_signature"},{"source":"native:tsx","name":"call_signature"},{"source":"native:typescript","name":"call_signature"}],"formerNames":[]},
    {"id":"grammar.formal-parameter","phrase":"formal parameter","role":"concept","definition":"A rule for a formal parameter, the construct the upstream grammar names _formal_parameter.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"formal_parameter"},{"source":"native:javascript","name":"formal_parameter"},{"source":"native:tsx","name":"formal_parameter"},{"source":"native:typescript","name":"formal_parameter"}],"formerNames":[]},
    {"id":"grammar.optional-chain","phrase":"optional chain","role":"concept","definition":"A rule for an optional chain, the construct the upstream grammar names optional_chain.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"optional_chain"},{"source":"native:tsx","name":"optional_chain"},{"source":"native:typescript","name":"optional_chain"}],"formerNames":[]},
    {"id":"grammar.new-expression","phrase":"new expression","role":"concept","definition":"A rule for a new expression, the construct the upstream grammar names new_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"new_expression"},{"source":"native:solidity","name":"new_expression"},{"source":"native:tsx","name":"new_expression"},{"source":"native:typescript","name":"new_expression"}],"formerNames":[]},
    {"id":"grammar.member-expression","phrase":"member expression","role":"concept","definition":"A rule for a member expression, the construct the upstream grammar names member_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"member_expression"},{"source":"native:solidity","name":"member_expression"},{"source":"native:tsx","name":"member_expression"},{"source":"native:typescript","name":"member_expression"}],"formerNames":[]},
    {"id":"grammar.left-hand-side-expression","phrase":"left hand side expression","role":"concept","definition":"A rule for a left hand side expression, the construct the upstream grammar names _lhs_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"left_hand_side_expression"},{"source":"native:tsx","name":"left_hand_side_expression"},{"source":"native:typescript","name":"left_hand_side_expression"}],"formerNames":[]},
    {"id":"grammar.augmented-assignment-left-hand-side","phrase":"augmented assignment left hand side","role":"concept","definition":"A rule for an augmented assignment left hand side, the construct the upstream grammar names _augmented_assignment_lhs.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"augmented_assignment_left_hand_side"},{"source":"native:tsx","name":"augmented_assignment_left_hand_side"},{"source":"native:typescript","name":"augmented_assignment_left_hand_side"}],"formerNames":[]},
    {"id":"grammar.augmented-assignment-expression","phrase":"augmented assignment expression","role":"concept","definition":"A rule for an augmented assignment expression, the construct the upstream grammar names augmented_assignment_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"augmented_assignment_expression"},{"source":"native:solidity","name":"augmented_assignment_expression"},{"source":"native:tsx","name":"augmented_assignment_expression"},{"source":"native:typescript","name":"augmented_assignment_expression"}],"formerNames":[]},
    {"id":"grammar.initializer","phrase":"initializer","role":"concept","definition":"A rule for an initializer, the construct the upstream grammar names _initializer.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"initializer"},{"source":"native:tsx","name":"initializer"},{"source":"native:typescript","name":"initializer"}],"formerNames":[]},
    {"id":"grammar.destructuring-pattern","phrase":"destructuring pattern","role":"concept","definition":"A rule for a destructuring pattern, the construct the upstream grammar names _destructuring_pattern.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"destructuring_pattern"},{"source":"native:rocq","name":"destructuring_pattern"},{"source":"native:tsx","name":"destructuring_pattern"},{"source":"native:typescript","name":"destructuring_pattern"}],"formerNames":[]},
    {"id":"grammar.spread-element","phrase":"spread element","role":"concept","definition":"A rule for a spread element, the construct the upstream grammar names spread_element.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"spread_element"},{"source":"native:tsx","name":"spread_element"},{"source":"native:typescript","name":"spread_element"}],"formerNames":[]},
    {"id":"grammar.ternary-expression","phrase":"ternary expression","role":"concept","definition":"A rule for a ternary expression, the construct the upstream grammar names ternary_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"ternary_expression"},{"source":"native:javascript","name":"ternary_expression"},{"source":"native:solidity","name":"ternary_expression"},{"source":"native:tsx","name":"ternary_expression"},{"source":"native:typescript","name":"ternary_expression"}],"formerNames":[]},
    {"id":"grammar.sequence-expression","phrase":"sequence expression","role":"concept","definition":"A rule for a sequence expression, the construct the upstream grammar names sequence_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"sequence_expression"},{"source":"native:tsx","name":"sequence_expression"},{"source":"native:typescript","name":"sequence_expression"}],"formerNames":[]},
    {"id":"grammar.unescaped-double-string-fragment","phrase":"unescaped double string fragment","role":"concept","definition":"A rule for an unescaped double string fragment, the construct the upstream grammar names unescaped_double_string_fragment.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"unescaped_double_string_fragment"},{"source":"native:tsx","name":"unescaped_double_string_fragment"},{"source":"native:typescript","name":"unescaped_double_string_fragment"}],"formerNames":[]},
    {"id":"grammar.unescaped-single-string-fragment","phrase":"unescaped single string fragment","role":"concept","definition":"A rule for an unescaped single string fragment, the construct the upstream grammar names unescaped_single_string_fragment.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"unescaped_single_string_fragment"},{"source":"native:tsx","name":"unescaped_single_string_fragment"},{"source":"native:typescript","name":"unescaped_single_string_fragment"}],"formerNames":[]},
    {"id":"grammar.template-string","phrase":"template string","role":"concept","definition":"A rule for a template string, the construct the upstream grammar names template_string.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"template_string"},{"source":"native:lean","name":"interpolated_string"},{"source":"native:tsx","name":"template_string"},{"source":"native:typescript","name":"template_string"}],"formerNames":[]},
    {"id":"grammar.template-substitution","phrase":"template substitution","role":"concept","definition":"A rule for a template substitution, the construct the upstream grammar names template_substitution.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"template_substitution"},{"source":"native:lean","name":"interpolation"},{"source":"native:tsx","name":"template_substitution"},{"source":"native:typescript","name":"template_substitution"}],"formerNames":[]},
    {"id":"grammar.regular-expression","phrase":"regular expression","role":"concept","definition":"A rule for a regular expression, the construct the upstream grammar names regex.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"regular_expression"},{"source":"native:tsx","name":"regular_expression"},{"source":"native:typescript","name":"regular_expression"}],"formerNames":[]},
    {"id":"grammar.regular-expression-pattern","phrase":"regular expression pattern","role":"concept","definition":"A rule for a regular expression pattern, the construct the upstream grammar names regex_pattern.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"regular_expression_pattern"},{"source":"native:tsx","name":"regular_expression_pattern"},{"source":"native:typescript","name":"regular_expression_pattern"}],"formerNames":[]},
    {"id":"grammar.regular-expression-flags","phrase":"regular expression flags","role":"concept","definition":"A rule for a regular expression flags, the construct the upstream grammar names regex_flags.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"regular_expression_flags"},{"source":"native:tsx","name":"regular_expression_flags"},{"source":"native:typescript","name":"regular_expression_flags"}],"formerNames":[]},
    {"id":"grammar.identifier-choice","phrase":"identifier choice","role":"concept","definition":"A rule for an identifier choice, the construct the upstream grammar names _identifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"identifier_choice"},{"source":"native:tsx","name":"identifier_choice"},{"source":"native:typescript","name":"identifier_choice"}],"formerNames":[]},
    {"id":"grammar.private-property-identifier","phrase":"private property identifier","role":"concept","definition":"A rule for a private property identifier, the construct the upstream grammar names private_property_identifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"private_property_identifier"},{"source":"native:tsx","name":"private_property_identifier"},{"source":"native:typescript","name":"private_property_identifier"}],"formerNames":[]},
    {"id":"grammar.meta-property","phrase":"meta property","role":"concept","definition":"A rule for a meta property, the construct the upstream grammar names meta_property.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"meta_property"},{"source":"native:tsx","name":"meta_property"},{"source":"native:typescript","name":"meta_property"}],"formerNames":[]},
    {"id":"grammar.this","phrase":"this","role":"concept","definition":"A rule for a this, the construct the upstream grammar names this.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"this"},{"source":"native:javascript","name":"this"},{"source":"native:tsx","name":"this"},{"source":"native:typescript","name":"this"}],"formerNames":[]},
    {"id":"grammar.undefined-value","phrase":"undefined value","role":"concept","definition":"A rule for an undefined value, the construct the upstream grammar names undefined.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"undefined"},{"source":"native:tsx","name":"undefined"},{"source":"native:typescript","name":"undefined"}],"formerNames":[]},
    {"id":"grammar.decorator","phrase":"decorator","role":"concept","definition":"A rule for a decorator, the construct the upstream grammar names decorator.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"decorator"},{"source":"native:tsx","name":"decorator"},{"source":"native:typescript","name":"decorator"}],"formerNames":[]},
    {"id":"grammar.decorator-member-expression","phrase":"decorator member expression","role":"concept","definition":"A rule for a decorator member expression, the construct the upstream grammar names decorator_member_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"decorator_member_expression"},{"source":"native:tsx","name":"decorator_member_expression"},{"source":"native:typescript","name":"decorator_member_expression"}],"formerNames":[]},
    {"id":"grammar.decorator-call-expression","phrase":"decorator call expression","role":"concept","definition":"A rule for a decorator call expression, the construct the upstream grammar names decorator_call_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"decorator_call_expression"},{"source":"native:tsx","name":"decorator_call_expression"},{"source":"native:typescript","name":"decorator_call_expression"}],"formerNames":[]},
    {"id":"grammar.class-body","phrase":"class body","role":"concept","definition":"A rule for a class body, the construct the upstream grammar names class_body.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"class_body"},{"source":"native:javascript","name":"class_body"},{"source":"native:tsx","name":"class_body"},{"source":"native:typescript","name":"class_body"}],"formerNames":[]},
    {"id":"grammar.field-definition","phrase":"field definition","role":"concept","definition":"A rule for a field definition, the construct the upstream grammar names field_definition.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"field_definition"},{"source":"native:javascript","name":"field_definition"},{"source":"native:rocq","name":"field_definition"},{"source":"native:tsx","name":"field_definition"},{"source":"native:typescript","name":"field_definition"}],"formerNames":[]},
    {"id":"grammar.formal-parameter-list","phrase":"formal parameter list","role":"concept","definition":"A rule for a formal parameter list, the construct the upstream grammar names formal_parameters.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"formal_parameters"},{"source":"native:javascript","name":"formal_parameters"},{"source":"native:tsx","name":"formal_parameters"},{"source":"native:typescript","name":"formal_parameters"}],"formerNames":[]},
    {"id":"grammar.class-static-block","phrase":"class static block","role":"concept","definition":"A rule for a class static block, the construct the upstream grammar names class_static_block.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"class_static_block"},{"source":"native:tsx","name":"class_static_block"},{"source":"native:typescript","name":"class_static_block"}],"formerNames":[]},
    {"id":"grammar.rest-pattern","phrase":"rest pattern","role":"concept","definition":"A rule for a rest pattern, the construct the upstream grammar names rest_pattern.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"rest_pattern"},{"source":"native:tsx","name":"rest_pattern"},{"source":"native:typescript","name":"rest_pattern"}],"formerNames":[]},
    {"id":"grammar.method-definition","phrase":"method definition","role":"concept","definition":"A rule for a method definition, the construct the upstream grammar names method_definition.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"method_definition"},{"source":"native:tsx","name":"method_definition"},{"source":"native:typescript","name":"method_definition"}],"formerNames":[]},
    {"id":"grammar.pair","phrase":"pair","role":"concept","definition":"A rule for a pair, the construct the upstream grammar names pair.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"pair"},{"source":"native:tsx","name":"pair"},{"source":"native:typescript","name":"pair"}],"formerNames":[]},
    {"id":"grammar.pair-pattern","phrase":"pair pattern","role":"concept","definition":"A rule for a pair pattern, the construct the upstream grammar names pair_pattern.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"pair_pattern"},{"source":"native:tsx","name":"pair_pattern"},{"source":"native:typescript","name":"pair_pattern"}],"formerNames":[]},
    {"id":"grammar.property-name","phrase":"property name","role":"concept","definition":"A rule for a property name, the construct the upstream grammar names _property_name.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"property_name"},{"source":"native:tsx","name":"property_name"},{"source":"native:typescript","name":"property_name"}],"formerNames":[]},
    {"id":"grammar.computed-property-name","phrase":"computed property name","role":"concept","definition":"A rule for a computed property name, the construct the upstream grammar names computed_property_name.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"computed_property_name"},{"source":"native:tsx","name":"computed_property_name"},{"source":"native:typescript","name":"computed_property_name"}],"formerNames":[]},
    {"id":"grammar.semicolon","phrase":"semicolon","role":"concept","definition":"A rule for a semicolon, the construct the upstream grammar names _semicolon.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:javascript","name":"semicolon"},{"source":"native:solidity","name":"semicolon"},{"source":"native:tsx","name":"semicolon"},{"source":"native:typescript","name":"semicolon"}],"formerNames":[]},
    {"id":"grammar.call-signature-parts","phrase":"call signature parts","role":"concept","definition":"A rule for a call signature parts, the construct the upstream grammar names _call_signature.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"call_signature_parts"},{"source":"native:typescript","name":"call_signature_parts"}],"formerNames":[]},
    {"id":"grammar.public-field-definition","phrase":"public field definition","role":"concept","definition":"A rule for a public field definition, the construct the upstream grammar names public_field_definition.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"public_field_definition"},{"source":"native:typescript","name":"public_field_definition"}],"formerNames":[]},
    {"id":"grammar.jsx-start-opening-element","phrase":"jsx start opening element","role":"concept","definition":"A rule for a jsx start opening element, the construct the upstream grammar names _jsx_start_opening_element.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"jsx_start_opening_element"},{"source":"native:typescript","name":"jsx_start_opening_element"}],"formerNames":[]},
    {"id":"grammar.import-identifier","phrase":"import identifier","role":"concept","definition":"A rule for an import identifier, the construct the upstream grammar names _import_identifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"import_identifier"},{"source":"native:typescript","name":"import_identifier"}],"formerNames":[]},
    {"id":"grammar.non-null-expression","phrase":"non null expression","role":"concept","definition":"A rule for a non null expression, the construct the upstream grammar names non_null_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"non_null_expression"},{"source":"native:typescript","name":"non_null_expression"}],"formerNames":[]},
    {"id":"grammar.method-signature","phrase":"method signature","role":"concept","definition":"A rule for a method signature, the construct the upstream grammar names method_signature.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"method_signature"},{"source":"native:typescript","name":"method_signature"}],"formerNames":[]},
    {"id":"grammar.abstract-method-signature","phrase":"abstract method signature","role":"concept","definition":"A rule for an abstract method signature, the construct the upstream grammar names abstract_method_signature.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"abstract_method_signature"},{"source":"native:typescript","name":"abstract_method_signature"}],"formerNames":[]},
    {"id":"grammar.function-signature","phrase":"function signature","role":"concept","definition":"A rule for a function signature, the construct the upstream grammar names function_signature.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"function_signature"},{"source":"native:typescript","name":"function_signature"}],"formerNames":[]},
    {"id":"grammar.decorator-parenthesized-expression","phrase":"decorator parenthesized expression","role":"concept","definition":"A rule for a decorator parenthesized expression, the construct the upstream grammar names decorator_parenthesized_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"decorator_parenthesized_expression"},{"source":"native:typescript","name":"decorator_parenthesized_expression"}],"formerNames":[]},
    {"id":"grammar.type-assertion","phrase":"type assertion","role":"concept","definition":"A rule for a type assertion, the construct the upstream grammar names type_assertion.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"type_assertion"},{"source":"native:typescript","name":"type_assertion"}],"formerNames":[],"distinctFrom":[{"id":"grammar.case-statement","reason":"A type assertion <T>x tells the type checker to treat an expression as a type, while a case statement is one branch of a switch statement."}]},
    {"id":"grammar.as-expression","phrase":"as expression","role":"concept","definition":"A rule for an as expression, the construct the upstream grammar names as_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"as_expression"},{"source":"native:typescript","name":"as_expression"}],"formerNames":[]},
    {"id":"grammar.satisfies-expression","phrase":"satisfies expression","role":"concept","definition":"A rule for a satisfies expression, the construct the upstream grammar names satisfies_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"satisfies_expression"},{"source":"native:typescript","name":"satisfies_expression"}],"formerNames":[]},
    {"id":"grammar.instantiation-expression","phrase":"instantiation expression","role":"concept","definition":"A rule for an instantiation expression, the construct the upstream grammar names instantiation_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"instantiation_expression"},{"source":"native:typescript","name":"instantiation_expression"}],"formerNames":[]},
    {"id":"grammar.import-require-clause","phrase":"import require clause","role":"concept","definition":"A rule for an import require clause, the construct the upstream grammar names import_require_clause.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"import_require_clause"},{"source":"native:typescript","name":"import_require_clause"}],"formerNames":[]},
    {"id":"grammar.extends-clause","phrase":"extends clause","role":"concept","definition":"A rule for an extends clause, the construct the upstream grammar names extends_clause.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"extends_clause"},{"source":"native:typescript","name":"extends_clause"}],"formerNames":[]},
    {"id":"grammar.extends-clause-single","phrase":"extends clause single","role":"concept","definition":"A rule for an extends clause single, the construct the upstream grammar names _extends_clause_single.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"extends_clause_single"},{"source":"native:typescript","name":"extends_clause_single"}],"formerNames":[]},
    {"id":"grammar.implements-clause","phrase":"implements clause","role":"concept","definition":"A rule for an implements clause, the construct the upstream grammar names implements_clause.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"implements_clause"},{"source":"native:typescript","name":"implements_clause"}],"formerNames":[]},
    {"id":"grammar.ambient-declaration","phrase":"ambient declaration","role":"concept","definition":"A rule for an ambient declaration, the construct the upstream grammar names ambient_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"ambient_declaration"},{"source":"native:typescript","name":"ambient_declaration"}],"formerNames":[]},
    {"id":"grammar.abstract-class-declaration","phrase":"abstract class declaration","role":"concept","definition":"A rule for an abstract class declaration, the construct the upstream grammar names abstract_class_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"abstract_class_declaration"},{"source":"native:typescript","name":"abstract_class_declaration"}],"formerNames":[]},
    {"id":"grammar.module","phrase":"module","role":"concept","definition":"A rule for a module, the construct the upstream grammar names module.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"module"},{"source":"native:typescript","name":"module"}],"formerNames":[]},
    {"id":"grammar.internal-module","phrase":"internal module","role":"concept","definition":"A rule for an internal module, the construct the upstream grammar names internal_module.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"internal_module"},{"source":"native:typescript","name":"internal_module"}],"formerNames":[]},
    {"id":"grammar.module-name-and-body","phrase":"module name and body","role":"concept","definition":"A rule for a module name and body, the construct the upstream grammar names _module.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"module_name_and_body"},{"source":"native:typescript","name":"module_name_and_body"}],"formerNames":[]},
    {"id":"grammar.import-alias","phrase":"import alias","role":"concept","definition":"A rule for an import alias, the construct the upstream grammar names import_alias.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"import_alias"},{"source":"native:tsx","name":"import_alias"},{"source":"native:typescript","name":"import_alias"}],"formerNames":[]},
    {"id":"grammar.nested-type-identifier","phrase":"nested type identifier","role":"concept","definition":"A rule for a nested type identifier, the construct the upstream grammar names nested_type_identifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"nested_type_identifier"},{"source":"native:typescript","name":"nested_type_identifier"}],"formerNames":[]},
    {"id":"grammar.interface-declaration","phrase":"interface declaration","role":"concept","definition":"A rule for an interface declaration, the construct the upstream grammar names interface_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"interface_declaration"},{"source":"native:solidity","name":"interface_declaration"},{"source":"native:tsx","name":"interface_declaration"},{"source":"native:typescript","name":"interface_declaration"}],"formerNames":[]},
    {"id":"grammar.extends-type-clause","phrase":"extends type clause","role":"concept","definition":"A rule for an extends type clause, the construct the upstream grammar names extends_type_clause.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"extends_type_clause"},{"source":"native:typescript","name":"extends_type_clause"}],"formerNames":[]},
    {"id":"grammar.enumeration-declaration","phrase":"enumeration declaration","role":"concept","definition":"A rule for an enumeration declaration, the construct the upstream grammar names enum_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"enumeration_declaration"},{"source":"native:proto","name":"enumeration"},{"source":"native:solidity","name":"enumeration_declaration"},{"source":"native:tsx","name":"enumeration_declaration"},{"source":"native:typescript","name":"enumeration_declaration"}],"formerNames":[]},
    {"id":"grammar.enumeration-body","phrase":"enumeration body","role":"concept","definition":"A rule for an enumeration body, the construct the upstream grammar names enum_body.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"enumeration_body"},{"source":"native:proto","name":"enumeration_body"},{"source":"native:solidity","name":"enumeration_body"},{"source":"native:tsx","name":"enumeration_body"},{"source":"native:typescript","name":"enumeration_body"}],"formerNames":[]},
    {"id":"grammar.enumeration-assignment","phrase":"enumeration assignment","role":"concept","definition":"A rule for an enumeration assignment, the construct the upstream grammar names enum_assignment.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"enumeration_assignment"},{"source":"native:typescript","name":"enumeration_assignment"}],"formerNames":[]},
    {"id":"grammar.type-alias-declaration","phrase":"type alias declaration","role":"concept","definition":"A rule for a type alias declaration, the construct the upstream grammar names type_alias_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"type_alias_declaration"},{"source":"native:typescript","name":"type_alias_declaration"}],"formerNames":[]},
    {"id":"grammar.accessibility-modifier","phrase":"accessibility modifier","role":"concept","definition":"A rule for an accessibility modifier, the construct the upstream grammar names accessibility_modifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"accessibility_modifier"},{"source":"native:typescript","name":"accessibility_modifier"}],"formerNames":[]},
    {"id":"grammar.override-modifier","phrase":"override modifier","role":"concept","definition":"A rule for an override modifier, the construct the upstream grammar names override_modifier.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"override_modifier"},{"source":"native:typescript","name":"override_modifier"}],"formerNames":[]},
    {"id":"grammar.required-parameter","phrase":"required parameter","role":"concept","definition":"A rule for a required parameter, the construct the upstream grammar names required_parameter.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"required_parameter"},{"source":"native:typescript","name":"required_parameter"}],"formerNames":[]},
    {"id":"grammar.optional-parameter","phrase":"optional parameter","role":"concept","definition":"A rule for an optional parameter, the construct the upstream grammar names optional_parameter.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"optional_parameter"},{"source":"native:typescript","name":"optional_parameter"}],"formerNames":[]},
    {"id":"grammar.parameter-name","phrase":"parameter name","role":"concept","definition":"A rule for a parameter name, the construct the upstream grammar names _parameter_name.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"parameter_name"},{"source":"native:typescript","name":"parameter_name"}],"formerNames":[]},
    {"id":"grammar.required-type-annotation","phrase":"required type annotation","role":"concept","definition":"A rule for a required type annotation, the construct the upstream grammar names omitting_type_annotation.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"required_type_annotation"},{"source":"native:typescript","name":"required_type_annotation"}],"formerNames":[]},
    {"id":"grammar.adding-type-annotation","phrase":"adding type annotation","role":"concept","definition":"A rule for an adding type annotation, the construct the upstream grammar names adding_type_annotation.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"adding_type_annotation"},{"source":"native:typescript","name":"adding_type_annotation"}],"formerNames":[]},
    {"id":"grammar.opting-type-annotation","phrase":"opting type annotation","role":"concept","definition":"A rule for an opting type annotation, the construct the upstream grammar names opting_type_annotation.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"opting_type_annotation"},{"source":"native:typescript","name":"opting_type_annotation"}],"formerNames":[]},
    {"id":"grammar.type-annotation","phrase":"type annotation","role":"concept","definition":"A rule for a type annotation, the construct the upstream grammar names type_annotation.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"type_annotation"},{"source":"native:typescript","name":"type_annotation"}],"formerNames":[]},
    {"id":"grammar.type-query-member-expression-in-type-annotation","phrase":"type query member expression in type annotation","role":"concept","definition":"A rule for a type query member expression in type annotation, the construct the upstream grammar names _type_query_member_expression_in_type_annotation.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"type_query_member_expression_in_type_annotation"},{"source":"native:typescript","name":"type_query_member_expression_in_type_annotation"}],"formerNames":[]},
    {"id":"grammar.type-query-call-expression-in-type-annotation","phrase":"type query call expression in type annotation","role":"concept","definition":"A rule for a type query call expression in type annotation, the construct the upstream grammar names _type_query_call_expression_in_type_annotation.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"type_query_call_expression_in_type_annotation"},{"source":"native:typescript","name":"type_query_call_expression_in_type_annotation"}],"formerNames":[]},
    {"id":"grammar.assertion-signature","phrase":"assertion signature","role":"concept","definition":"A rule for an assertion signature, the construct the upstream grammar names asserts.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"assertion_signature"},{"source":"native:typescript","name":"assertion_signature"}],"formerNames":[]},
    {"id":"grammar.asserts-annotation","phrase":"asserts annotation","role":"concept","definition":"A rule for an asserts annotation, the construct the upstream grammar names asserts_annotation.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"asserts_annotation"},{"source":"native:typescript","name":"asserts_annotation"}],"formerNames":[]},
    {"id":"grammar.tuple-parameter","phrase":"tuple parameter","role":"concept","definition":"A rule for a tuple parameter, the construct the upstream grammar names tuple_parameter.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"tuple_parameter"},{"source":"native:typescript","name":"tuple_parameter"}],"formerNames":[]},
    {"id":"grammar.optional-tuple-parameter","phrase":"optional tuple parameter","role":"concept","definition":"A rule for an optional tuple parameter, the construct the upstream grammar names optional_tuple_parameter.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"optional_tuple_parameter"},{"source":"native:typescript","name":"optional_tuple_parameter"}],"formerNames":[]},
    {"id":"grammar.optional-type","phrase":"optional type","role":"concept","definition":"A rule for an optional type, the construct the upstream grammar names optional_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"optional_type"},{"source":"native:typescript","name":"optional_type"}],"formerNames":[]},
    {"id":"grammar.rest-type","phrase":"rest type","role":"concept","definition":"A rule for a rest type, the construct the upstream grammar names rest_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"rest_type"},{"source":"native:typescript","name":"rest_type"}],"formerNames":[]},
    {"id":"grammar.tuple-type-member","phrase":"tuple type member","role":"concept","definition":"A rule for a tuple type member, the construct the upstream grammar names _tuple_type_member.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"tuple_type_member"},{"source":"native:typescript","name":"tuple_type_member"}],"formerNames":[]},
    {"id":"grammar.constructor-type","phrase":"constructor type","role":"concept","definition":"A rule for a constructor type, the construct the upstream grammar names constructor_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"constructor_type"},{"source":"native:typescript","name":"constructor_type"}],"formerNames":[]},
    {"id":"grammar.primary-type","phrase":"primary type","role":"concept","definition":"A rule for a primary type, the construct the upstream grammar names primary_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"primary_type"},{"source":"native:typescript","name":"primary_type"}],"formerNames":[]},
    {"id":"grammar.template-type","phrase":"template type","role":"concept","definition":"A rule for a template type, the construct the upstream grammar names template_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"template_type"},{"source":"native:typescript","name":"template_type"}],"formerNames":[]},
    {"id":"grammar.template-literal-type","phrase":"template literal type","role":"concept","definition":"A rule for a template literal type, the construct the upstream grammar names template_literal_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"template_literal_type"},{"source":"native:typescript","name":"template_literal_type"}],"formerNames":[]},
    {"id":"grammar.infer-type","phrase":"infer type","role":"concept","definition":"A rule for an infer type, the construct the upstream grammar names infer_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"infer_type"},{"source":"native:typescript","name":"infer_type"}],"formerNames":[]},
    {"id":"grammar.conditional-type","phrase":"conditional type","role":"concept","definition":"A rule for a conditional type, the construct the upstream grammar names conditional_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"conditional_type"},{"source":"native:typescript","name":"conditional_type"}],"formerNames":[]},
    {"id":"grammar.type-predicate","phrase":"type predicate","role":"concept","definition":"A rule for a type predicate, the construct the upstream grammar names type_predicate.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"type_predicate"},{"source":"native:typescript","name":"type_predicate"}],"formerNames":[]},
    {"id":"grammar.type-predicate-annotation","phrase":"type predicate annotation","role":"concept","definition":"A rule for a type predicate annotation, the construct the upstream grammar names type_predicate_annotation.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"type_predicate_annotation"},{"source":"native:typescript","name":"type_predicate_annotation"}],"formerNames":[]},
    {"id":"grammar.type-query-member-expression","phrase":"type query member expression","role":"concept","definition":"A rule for a type query member expression, the construct the upstream grammar names _type_query_member_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"type_query_member_expression"},{"source":"native:typescript","name":"type_query_member_expression"}],"formerNames":[]},
    {"id":"grammar.type-query-subscript-expression","phrase":"type query subscript expression","role":"concept","definition":"A rule for a type query subscript expression, the construct the upstream grammar names _type_query_subscript_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"type_query_subscript_expression"},{"source":"native:typescript","name":"type_query_subscript_expression"}],"formerNames":[]},
    {"id":"grammar.type-query-call-expression","phrase":"type query call expression","role":"concept","definition":"A rule for a type query call expression, the construct the upstream grammar names _type_query_call_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"type_query_call_expression"},{"source":"native:typescript","name":"type_query_call_expression"}],"formerNames":[]},
    {"id":"grammar.type-query-instantiation-expression","phrase":"type query instantiation expression","role":"concept","definition":"A rule for a type query instantiation expression, the construct the upstream grammar names _type_query_instantiation_expression.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"type_query_instantiation_expression"},{"source":"native:typescript","name":"type_query_instantiation_expression"}],"formerNames":[]},
    {"id":"grammar.type-query","phrase":"type query","role":"concept","definition":"A rule for a type query, the construct the upstream grammar names type_query.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"type_query"},{"source":"native:typescript","name":"type_query"}],"formerNames":[]},
    {"id":"grammar.index-type-query","phrase":"index type query","role":"concept","definition":"A rule for an index type query, the construct the upstream grammar names index_type_query.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"index_type_query"},{"source":"native:typescript","name":"index_type_query"}],"formerNames":[]},
    {"id":"grammar.lookup-type","phrase":"lookup type","role":"concept","definition":"A rule for a lookup type, the construct the upstream grammar names lookup_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"lookup_type"},{"source":"native:typescript","name":"lookup_type"}],"formerNames":[]},
    {"id":"grammar.mapped-type-clause","phrase":"mapped type clause","role":"concept","definition":"A rule for a mapped type clause, the construct the upstream grammar names mapped_type_clause.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"mapped_type_clause"},{"source":"native:typescript","name":"mapped_type_clause"}],"formerNames":[]},
    {"id":"grammar.literal-type","phrase":"literal type","role":"concept","definition":"A rule for a literal type, the construct the upstream grammar names literal_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"literal_type"},{"source":"native:typescript","name":"literal_type"}],"formerNames":[]},
    {"id":"grammar.signed-number","phrase":"signed number","role":"concept","definition":"A rule for a signed number, the construct the upstream grammar names _number.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"signed_number"},{"source":"native:typescript","name":"signed_number"}],"formerNames":[]},
    {"id":"grammar.existential-type","phrase":"existential type","role":"concept","definition":"A rule for an existential type, the construct the upstream grammar names existential_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"existential_type"},{"source":"native:typescript","name":"existential_type"}],"formerNames":[]},
    {"id":"grammar.flow-maybe-type","phrase":"flow maybe type","role":"concept","definition":"A rule for a flow maybe type, the construct the upstream grammar names flow_maybe_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"flow_maybe_type"},{"source":"native:typescript","name":"flow_maybe_type"}],"formerNames":[]},
    {"id":"grammar.parenthesized-type","phrase":"parenthesized type","role":"concept","definition":"A rule for a parenthesized type, the construct the upstream grammar names parenthesized_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"parenthesized_type"},{"source":"native:tsx","name":"parenthesized_type"},{"source":"native:typescript","name":"parenthesized_type"}],"formerNames":[]},
    {"id":"grammar.predefined-type","phrase":"predefined type","role":"concept","definition":"A rule for a predefined type, the construct the upstream grammar names predefined_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"predefined_type"},{"source":"native:typescript","name":"predefined_type"}],"formerNames":[]},
    {"id":"grammar.object-type","phrase":"object type","role":"concept","definition":"A rule for an object type, the construct the upstream grammar names object_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"object_type"},{"source":"native:typescript","name":"object_type"}],"formerNames":[]},
    {"id":"grammar.property-signature","phrase":"property signature","role":"concept","definition":"A rule for a property signature, the construct the upstream grammar names property_signature.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"property_signature"},{"source":"native:typescript","name":"property_signature"}],"formerNames":[]},
    {"id":"grammar.default-type","phrase":"default type","role":"concept","definition":"A rule for a default type, the construct the upstream grammar names default_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"default_type"},{"source":"native:typescript","name":"default_type"}],"formerNames":[]},
    {"id":"grammar.constraint","phrase":"constraint","role":"concept","definition":"A rule for a constraint, the construct the upstream grammar names constraint.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"constraint"},{"source":"native:typescript","name":"constraint"}],"formerNames":[]},
    {"id":"grammar.construct-signature","phrase":"construct signature","role":"concept","definition":"A rule for a construct signature, the construct the upstream grammar names construct_signature.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"construct_signature"},{"source":"native:typescript","name":"construct_signature"}],"formerNames":[]},
    {"id":"grammar.index-signature","phrase":"index signature","role":"concept","definition":"A rule for an index signature, the construct the upstream grammar names index_signature.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"index_signature"},{"source":"native:typescript","name":"index_signature"}],"formerNames":[]},
    {"id":"grammar.readonly-type","phrase":"readonly type","role":"concept","definition":"A rule for a readonly type, the construct the upstream grammar names readonly_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"readonly_type"},{"source":"native:typescript","name":"readonly_type"}],"formerNames":[]},
    {"id":"grammar.union-type","phrase":"union type","role":"concept","definition":"A rule for an union type, the construct the upstream grammar names union_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"union_type"},{"source":"native:typescript","name":"union_type"}],"formerNames":[]},
    {"id":"grammar.intersection-type","phrase":"intersection type","role":"concept","definition":"A rule for an intersection type, the construct the upstream grammar names intersection_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:tsx","name":"intersection_type"},{"source":"native:typescript","name":"intersection_type"}],"formerNames":[]},
    {"id":"grammar.module-header","phrase":"module header","role":"concept","definition":"A rule for a module header, the construct the upstream grammar names module_header.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"module_header"}],"formerNames":[]},
    {"id":"grammar.fragment-element","phrase":"fragment element","role":"concept","definition":"A rule for a fragment element, the construct the upstream grammar names _fragment_element.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"fragment_element"}],"formerNames":[]},
    {"id":"grammar.prelude","phrase":"prelude","role":"concept","definition":"A rule for a prelude, the construct the upstream grammar names prelude.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"prelude"}],"formerNames":[]},
    {"id":"grammar.command","phrase":"command","role":"concept","definition":"A rule for a command, the construct the upstream grammar names _command.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"command"}],"formerNames":[],"distinctFrom":[{"id":"grammar.statement","reason":"A Lean command is one top-level declaration or directive of a module, which the elaborator reads in order, while a statement is one step of a block that runs in order."}]},
    {"id":"grammar.set-option","phrase":"set option","role":"concept","definition":"A rule for a set option, the construct the upstream grammar names set_option.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"set_option"}],"formerNames":[]},
    {"id":"grammar.modifier","phrase":"modifier","role":"concept","definition":"A rule for a modifier, the construct the upstream grammar names _modifier.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"modifier"}],"formerNames":[]},
    {"id":"grammar.namespace","phrase":"namespace","role":"concept","definition":"A rule for a namespace, the construct the upstream grammar names namespace.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"namespace"}],"formerNames":[]},
    {"id":"grammar.section-command","phrase":"section command","role":"concept","definition":"A rule for a section command, the construct the upstream grammar names section.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"section"},{"source":"native:rocq","name":"section_command"}],"formerNames":[]},
    {"id":"grammar.end-command","phrase":"end command","role":"concept","definition":"A rule for an end command, the construct the upstream grammar names end.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"end"},{"source":"native:rocq","name":"end_command"}],"formerNames":[]},
    {"id":"grammar.syntax","phrase":"syntax","role":"concept","definition":"A rule for a syntax, the construct the upstream grammar names syntax.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"syntax"}],"formerNames":[]},
    {"id":"grammar.syntax-atom","phrase":"syntax atom","role":"concept","definition":"A rule for a syntax atom, the construct the upstream grammar names _syntax_atom.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"syntax_atom"}],"formerNames":[]},
    {"id":"grammar.syntax-group","phrase":"syntax group","role":"concept","definition":"A rule for a syntax group, the construct the upstream grammar names syntax_group.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"syntax_group"}],"formerNames":[]},
    {"id":"grammar.initialization-command","phrase":"initialization command","role":"concept","definition":"A rule for an initialization command, the construct the upstream grammar names initialize.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"initialize"}],"formerNames":[]},
    {"id":"grammar.open","phrase":"open","role":"concept","definition":"A rule for an open, the construct the upstream grammar names open.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"open"}],"formerNames":[]},
    {"id":"grammar.export","phrase":"export","role":"concept","definition":"A rule for an export, the construct the upstream grammar names export.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"export"}],"formerNames":[]},
    {"id":"grammar.variable-command","phrase":"variable command","role":"concept","definition":"A rule for a variable command, the construct the upstream grammar names variable.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"variable"}],"formerNames":[]},
    {"id":"grammar.universe","phrase":"universe","role":"concept","definition":"A rule for an universe, the construct the upstream grammar names universe.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"universe"}],"formerNames":[]},
    {"id":"grammar.include-command","phrase":"include command","role":"concept","definition":"A rule for an include command, the construct the upstream grammar names include.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"include"},{"source":"native:rocq","name":"include_command"}],"formerNames":[]},
    {"id":"grammar.omit-command","phrase":"omit command","role":"concept","definition":"A rule for an omit command, the construct the upstream grammar names omit.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"omit"}],"formerNames":[]},
    {"id":"grammar.attribute-command","phrase":"attribute command","role":"concept","definition":"A rule for an attribute command, the construct the upstream grammar names attribute.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"attribute"}],"formerNames":[]},
    {"id":"grammar.notation","phrase":"notation","role":"concept","definition":"A rule for a notation, the construct the upstream grammar names notation.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"notation"}],"formerNames":[]},
    {"id":"grammar.hash-command","phrase":"hash command","role":"concept","definition":"A rule for a hash command, the construct the upstream grammar names hash_command.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"hash_command"}],"formerNames":[]},
    {"id":"grammar.example","phrase":"example","role":"concept","definition":"A rule for an example, the construct the upstream grammar names example.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"example"}],"formerNames":[]},
    {"id":"grammar.declaration-choice","phrase":"declaration choice","role":"concept","definition":"A rule for a declaration choice, the construct the upstream grammar names _declaration.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"declaration_choice"}],"formerNames":[]},
    {"id":"grammar.attribute-list","phrase":"attribute list","role":"concept","definition":"A rule for an attribute list, the construct the upstream grammar names attributes.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"attributes"},{"source":"native:rocq","name":"attributes"}],"formerNames":[]},
    {"id":"grammar.attribute-entry","phrase":"attribute entry","role":"concept","definition":"A rule for an attribute entry, the construct the upstream grammar names attribute_entry.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"attribute_entry"}],"formerNames":[]},
    {"id":"grammar.definition","phrase":"definition","role":"concept","definition":"A rule for a definition, the construct the upstream grammar names definition.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"definition"},{"source":"native:lean","name":"definition"}],"formerNames":[]},
    {"id":"grammar.declaration-body","phrase":"declaration body","role":"concept","definition":"A rule for a declaration body, the construct the upstream grammar names _declaration_body.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"declaration_body"},{"source":"native:solidity","name":"contract_body"}],"formerNames":[]},
    {"id":"grammar.instance-declaration","phrase":"instance declaration","role":"concept","definition":"A rule for an instance declaration, the construct the upstream grammar names _instance_decl.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"instance_declaration"},{"source":"native:rocq","name":"instance_command"}],"formerNames":[]},
    {"id":"grammar.where-declaration","phrase":"where declaration","role":"concept","definition":"A rule for a where declaration, the construct the upstream grammar names where_decl.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"where_declaration"}],"formerNames":[]},
    {"id":"grammar.constant","phrase":"constant","role":"concept","definition":"A rule for a constant, the construct the upstream grammar names constant.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"constant"}],"formerNames":[]},
    {"id":"grammar.opaque-declaration","phrase":"opaque declaration","role":"concept","definition":"A rule for an opaque declaration, the construct the upstream grammar names opaque.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"opaque"}],"formerNames":[]},
    {"id":"grammar.axiom","phrase":"axiom","role":"concept","definition":"A rule for an axiom, the construct the upstream grammar names axiom.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"axiom"}],"formerNames":[]},
    {"id":"grammar.structure","phrase":"structure","role":"concept","definition":"A rule for a structure, the construct the upstream grammar names structure.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"structure"}],"formerNames":[]},
    {"id":"grammar.structure-field","phrase":"structure field","role":"concept","definition":"A rule for a structure field, the construct the upstream grammar names structure_field.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"structure_field"}],"formerNames":[]},
    {"id":"grammar.inductive-declaration","phrase":"inductive declaration","role":"concept","definition":"A rule for an inductive declaration, the construct the upstream grammar names inductive.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"inductive"}],"formerNames":[]},
    {"id":"grammar.class-inductive-declaration","phrase":"class inductive declaration","role":"concept","definition":"A rule for a class inductive declaration, the construct the upstream grammar names class_inductive.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"class_inductive"}],"formerNames":[]},
    {"id":"grammar.constructor","phrase":"constructor","role":"concept","definition":"A rule for a constructor, the construct the upstream grammar names constructor.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"constructor"},{"source":"native:rocq","name":"constructor"}],"formerNames":[]},
    {"id":"grammar.binders","phrase":"binders","role":"concept","definition":"A rule for a binders, the construct the upstream grammar names binders.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"binders"}],"formerNames":[]},
    {"id":"grammar.quantifier-binders","phrase":"quantifier binders","role":"concept","definition":"A rule for a quantifier binders, the construct the upstream grammar names _quantifier_binders.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"quantifier_binders"}],"formerNames":[]},
    {"id":"grammar.bracketed-binder","phrase":"bracketed binder","role":"concept","definition":"A rule for a bracketed binder, the construct the upstream grammar names _bracketed_binder.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"bracketed_binder"}],"formerNames":[]},
    {"id":"grammar.explicit-binder","phrase":"explicit binder","role":"concept","definition":"A rule for an explicit binder, the construct the upstream grammar names explicit_binder.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"explicit_binder"}],"formerNames":[]},
    {"id":"grammar.implicit-binder","phrase":"implicit binder","role":"concept","definition":"A rule for an implicit binder, the construct the upstream grammar names implicit_binder.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"implicit_binder"},{"source":"native:rocq","name":"implicit_binders"}],"formerNames":[]},
    {"id":"grammar.instance-binder","phrase":"instance binder","role":"concept","definition":"A rule for an instance binder, the construct the upstream grammar names instance_binder.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"instance_binder"}],"formerNames":[]},
    {"id":"grammar.type-specification","phrase":"type specification","role":"concept","definition":"A rule for a type specification, the construct the upstream grammar names _type_spec.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_specification"},{"source":"native:lean","name":"type_specification"}],"formerNames":[]},
    {"id":"grammar.try","phrase":"try","role":"concept","definition":"A rule for a try, the construct the upstream grammar names try.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"try"}],"formerNames":[]},
    {"id":"grammar.as-pattern","phrase":"as pattern","role":"concept","definition":"A rule for an as pattern, the construct the upstream grammar names as_pattern.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"as_pattern"}],"formerNames":[]},
    {"id":"grammar.atom","phrase":"atom","role":"concept","definition":"A rule for an atom, the construct the upstream grammar names _atom.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"atom"}],"formerNames":[]},
    {"id":"grammar.function-application","phrase":"function application","role":"concept","definition":"A rule for a function application, the construct the upstream grammar names application.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"application"},{"source":"native:rocq","name":"application"}],"formerNames":[]},
    {"id":"grammar.subscript","phrase":"subscript","role":"concept","definition":"A rule for a subscript, the construct the upstream grammar names subscript.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"subscript"}],"formerNames":[]},
    {"id":"grammar.projection","phrase":"projection","role":"concept","definition":"A rule for a projection, the construct the upstream grammar names projection.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"projection"}],"formerNames":[]},
    {"id":"grammar.arrow","phrase":"arrow","role":"concept","definition":"A rule for an arrow, the construct the upstream grammar names arrow.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"arrow"}],"formerNames":[]},
    {"id":"grammar.explicit-term","phrase":"explicit term","role":"concept","definition":"A rule for an explicit term, the construct the upstream grammar names explicit.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"explicit"}],"formerNames":[]},
    {"id":"grammar.fun","phrase":"fun","role":"concept","definition":"A rule for a fun, the construct the upstream grammar names fun.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"fun"}],"formerNames":[]},
    {"id":"grammar.quantifier","phrase":"quantifier","role":"concept","definition":"A rule for a quantifier, the construct the upstream grammar names quantifier.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"quantifier"}],"formerNames":[]},
    {"id":"grammar.quantifier-tail","phrase":"quantifier tail","role":"concept","definition":"A rule for a quantifier tail, the construct the upstream grammar names _quantifier_tail.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"quantifier_tail"}],"formerNames":[]},
    {"id":"grammar.have","phrase":"have","role":"concept","definition":"A rule for a have, the construct the upstream grammar names have.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"have"}],"formerNames":[]},
    {"id":"grammar.binding-body","phrase":"binding body","role":"concept","definition":"A rule for a binding body, the construct the upstream grammar names _binding_body.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"binding_body"}],"formerNames":[]},
    {"id":"grammar.tactic-proof","phrase":"tactic proof","role":"concept","definition":"A rule for a tactic proof, the construct the upstream grammar names by.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"by"}],"formerNames":[]},
    {"id":"grammar.tactic-sequence","phrase":"tactic sequence","role":"concept","definition":"A rule for a tactic sequence, the construct the upstream grammar names _tactic_seq.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tactic_sequence"},{"source":"native:rocq","name":"tactic_sequence"}],"formerNames":[]},
    {"id":"grammar.tactic","phrase":"tactic","role":"concept","definition":"A rule for a tactic, the construct the upstream grammar names _tactic.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tactic"}],"formerNames":[]},
    {"id":"grammar.apply-tactic","phrase":"apply tactic","role":"concept","definition":"A rule for an apply tactic, the construct the upstream grammar names tactic_apply.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tactic_apply"}],"formerNames":[]},
    {"id":"grammar.tactic-configuration","phrase":"tactic configuration","role":"concept","definition":"A rule for a tactic configuration, the construct the upstream grammar names tactic_config.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tactic_configuration"}],"formerNames":[]},
    {"id":"grammar.tactic-focus","phrase":"tactic focus","role":"concept","definition":"A rule for a tactic focus, the construct the upstream grammar names tactic_focus.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tactic_focus"}],"formerNames":[]},
    {"id":"grammar.tactic-case","phrase":"tactic case","role":"concept","definition":"A rule for a tactic case, the construct the upstream grammar names tactic_case.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tactic_case"}],"formerNames":[]},
    {"id":"grammar.tactic-rewrite","phrase":"tactic rewrite","role":"concept","definition":"A rule for a tactic rewrite, the construct the upstream grammar names tactic_rewrite.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tactic_rewrite"}],"formerNames":[]},
    {"id":"grammar.tactic-have","phrase":"tactic have","role":"concept","definition":"A rule for a tactic have, the construct the upstream grammar names tactic_have.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tactic_have"}],"formerNames":[]},
    {"id":"grammar.tactic-let","phrase":"tactic let","role":"concept","definition":"A rule for a tactic let, the construct the upstream grammar names tactic_let.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tactic_let"}],"formerNames":[]},
    {"id":"grammar.tactic-show","phrase":"tactic show","role":"concept","definition":"A rule for a tactic show, the construct the upstream grammar names tactic_show.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tactic_show"}],"formerNames":[]},
    {"id":"grammar.tactic-calculation","phrase":"tactic calculation","role":"concept","definition":"A rule for a tactic calculation, the construct the upstream grammar names tactic_calc.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"tactic_calculation"}],"formerNames":[]},
    {"id":"grammar.calculation-step","phrase":"calculation step","role":"concept","definition":"A rule for a calculation step, the construct the upstream grammar names calc_step.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"calculation_step"}],"formerNames":[]},
    {"id":"grammar.let","phrase":"let","role":"concept","definition":"A rule for a let, the construct the upstream grammar names let.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"let"}],"formerNames":[]},
    {"id":"grammar.parameter-binders","phrase":"parameter binders","role":"concept","definition":"A rule for a parameter binders, the construct the upstream grammar names parameters.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"parameters"}],"formerNames":[]},
    {"id":"grammar.then-else-branches","phrase":"then else branches","role":"concept","definition":"A rule for a then else branches, the construct the upstream grammar names _then_else.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"then_else"}],"formerNames":[]},
    {"id":"grammar.if-let","phrase":"if let","role":"concept","definition":"A rule for an if let, the construct the upstream grammar names if_let.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"if_let"}],"formerNames":[]},
    {"id":"grammar.list-pattern","phrase":"list pattern","role":"concept","definition":"A rule for a list pattern, the construct the upstream grammar names list_pattern.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"list_pattern"},{"source":"native:rocq","name":"list_pattern"}],"formerNames":[]},
    {"id":"grammar.constructor-pattern","phrase":"constructor pattern","role":"concept","definition":"A rule for a constructor pattern, the construct the upstream grammar names constructor_pattern.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"constructor_pattern"}],"formerNames":[]},
    {"id":"grammar.do","phrase":"do","role":"concept","definition":"A rule for a do, the construct the upstream grammar names do.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do"}],"formerNames":[]},
    {"id":"grammar.do-sequence","phrase":"do sequence","role":"concept","definition":"A rule for a do sequence, the construct the upstream grammar names _do_seq.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_sequence"}],"formerNames":[]},
    {"id":"grammar.do-element","phrase":"do element","role":"concept","definition":"A rule for a do element, the construct the upstream grammar names _do_element.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_element"}],"formerNames":[]},
    {"id":"grammar.do-let","phrase":"do let","role":"concept","definition":"A rule for a do let, the construct the upstream grammar names do_let.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_let"}],"formerNames":[]},
    {"id":"grammar.let-bind","phrase":"let bind","role":"concept","definition":"A rule for a let bind, the construct the upstream grammar names let_bind.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"let_bind"}],"formerNames":[]},
    {"id":"grammar.mutable-let-binding","phrase":"mutable let binding","role":"concept","definition":"A rule for a mutable let binding, the construct the upstream grammar names let_mut.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"let_mutable"}],"formerNames":[]},
    {"id":"grammar.reassignment","phrase":"reassignment","role":"concept","definition":"A rule for a reassignment, the construct the upstream grammar names reassign.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"reassign"}],"formerNames":[]},
    {"id":"grammar.do-return","phrase":"do return","role":"concept","definition":"A rule for a do return, the construct the upstream grammar names do_return.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_return"}],"formerNames":[]},
    {"id":"grammar.for-in-loop","phrase":"for in loop","role":"concept","definition":"A rule for a for in loop, the construct the upstream grammar names for_in.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"for_in"}],"formerNames":[]},
    {"id":"grammar.for-binding","phrase":"for binding","role":"concept","definition":"A rule for a for binding, the construct the upstream grammar names _for_binding.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"for_binding"}],"formerNames":[]},
    {"id":"grammar.do-if-statement","phrase":"do if statement","role":"concept","definition":"A rule for a do if statement, the construct the upstream grammar names do_if.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_if"}],"formerNames":[]},
    {"id":"grammar.do-then-else-branches","phrase":"do then else branches","role":"concept","definition":"A rule for a do then else branches, the construct the upstream grammar names _do_then_else.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_then_else"}],"formerNames":[]},
    {"id":"grammar.do-if-let","phrase":"do if let","role":"concept","definition":"A rule for a do if let, the construct the upstream grammar names do_if_let.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_if_let"}],"formerNames":[]},
    {"id":"grammar.do-match","phrase":"do match","role":"concept","definition":"A rule for a do match, the construct the upstream grammar names do_match.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_match"}],"formerNames":[]},
    {"id":"grammar.do-match-arm","phrase":"do match arm","role":"concept","definition":"A rule for a do match arm, the construct the upstream grammar names do_match_arm.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_match_arm"}],"formerNames":[]},
    {"id":"grammar.do-while","phrase":"do while","role":"concept","definition":"A rule for a do while, the construct the upstream grammar names do_while.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_while"}],"formerNames":[]},
    {"id":"grammar.do-unless-statement","phrase":"do unless statement","role":"concept","definition":"A rule for a do unless statement, the construct the upstream grammar names do_unless.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_unless"}],"formerNames":[]},
    {"id":"grammar.do-debug-trace","phrase":"do debug trace","role":"concept","definition":"A rule for a do debug trace, the construct the upstream grammar names do_dbg_trace.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_debug_trace"}],"formerNames":[]},
    {"id":"grammar.do-break","phrase":"do break","role":"concept","definition":"A rule for a do break, the construct the upstream grammar names do_break.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_break"}],"formerNames":[]},
    {"id":"grammar.do-continue-statement","phrase":"do continue statement","role":"concept","definition":"A rule for a do continue statement, the construct the upstream grammar names do_continue.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_continue"}],"formerNames":[]},
    {"id":"grammar.do-try","phrase":"do try","role":"concept","definition":"A rule for a do try, the construct the upstream grammar names do_try.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_try"}],"formerNames":[]},
    {"id":"grammar.do-catch-clause","phrase":"do catch clause","role":"concept","definition":"A rule for a do catch clause, the construct the upstream grammar names do_catch.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"do_catch"}],"formerNames":[]},
    {"id":"grammar.named-argument","phrase":"named argument","role":"concept","definition":"A rule for a named argument, the construct the upstream grammar names named_argument.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"named_argument"}],"formerNames":[]},
    {"id":"grammar.anonymous-constructor","phrase":"anonymous constructor","role":"concept","definition":"A rule for an anonymous constructor, the construct the upstream grammar names anonymous_constructor.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"anonymous_constructor"}],"formerNames":[]},
    {"id":"grammar.subtype","phrase":"subtype","role":"concept","definition":"A rule for a subtype, the construct the upstream grammar names subtype.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"subtype"}],"formerNames":[]},
    {"id":"grammar.structure-instance","phrase":"structure instance","role":"concept","definition":"A rule for a structure instance, the construct the upstream grammar names structure_instance.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"structure_instance"}],"formerNames":[]},
    {"id":"grammar.structure-body","phrase":"structure body","role":"concept","definition":"A rule for a structure body, the construct the upstream grammar names _structure_body.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"structure_body"},{"source":"native:solidity","name":"structure_body"}],"formerNames":[]},
    {"id":"grammar.field-assignment","phrase":"field assignment","role":"concept","definition":"A rule for a field assignment, the construct the upstream grammar names field_assignment.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"field_assignment"}],"formerNames":[]},
    {"id":"grammar.index-range","phrase":"index range","role":"concept","definition":"A rule for an index range, the construct the upstream grammar names range.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"range"}],"formerNames":[]},
    {"id":"grammar.range-specification","phrase":"range specification","role":"concept","definition":"A rule for a range specification, the construct the upstream grammar names _range_spec.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"range_specification"}],"formerNames":[]},
    {"id":"grammar.escaped-identifier","phrase":"escaped identifier","role":"concept","definition":"A rule for an escaped identifier, the construct the upstream grammar names escaped_identifier.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"escaped_identifier"}],"formerNames":[]},
    {"id":"grammar.float","phrase":"float","role":"concept","definition":"A rule for a float, the construct the upstream grammar names float.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"float"}],"formerNames":[]},
    {"id":"grammar.string-content","phrase":"string content","role":"concept","definition":"A rule for a string content, the construct the upstream grammar names _string_content.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"string_content"},{"source":"native:make","name":"string_content"}],"formerNames":[]},
    {"id":"grammar.hole","phrase":"hole","role":"concept","definition":"A rule for a hole, the construct the upstream grammar names hole.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"hole"}],"formerNames":[]},
    {"id":"grammar.centered-dot","phrase":"centered dot","role":"concept","definition":"A rule for a centered dot, the construct the upstream grammar names cdot.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"centered_dot"}],"formerNames":[]},
    {"id":"grammar.synthetic-hole","phrase":"synthetic hole","role":"concept","definition":"A rule for a synthetic hole, the construct the upstream grammar names synthetic_hole.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"synthetic_hole"}],"formerNames":[]},
    {"id":"grammar.quoted-name","phrase":"quoted name","role":"concept","definition":"A rule for a quoted name, the construct the upstream grammar names quoted_name.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"quoted_name"}],"formerNames":[]},
    {"id":"grammar.double-quoted-name","phrase":"double quoted name","role":"concept","definition":"A rule for a double quoted name, the construct the upstream grammar names double_quoted_name.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"double_quoted_name"}],"formerNames":[]},
    {"id":"grammar.syntax-quotation","phrase":"syntax quotation","role":"concept","definition":"A rule for a syntax quotation, the construct the upstream grammar names syntax_quotation.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"syntax_quotation"}],"formerNames":[],"distinctFrom":[{"id":"grammar.syntax-quote","reason":"A Lean syntax quotation `(…) builds the syntax tree of the Lean source between its parentheses, while a syntax quote is a hash-apostrophe before a datum, which reads as a syntax form."}]},
    {"id":"grammar.ellipsis","phrase":"ellipsis","role":"concept","definition":"A rule for an ellipsis, the construct the upstream grammar names ellipsis.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"ellipsis"}],"formerNames":[]},
    {"id":"grammar.sorry-placeholder","phrase":"sorry placeholder","role":"concept","definition":"A rule for a sorry placeholder, the construct the upstream grammar names sorry.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"sorry"}],"formerNames":[]},
    {"id":"grammar.true-constant","phrase":"true constant","role":"concept","definition":"A rule for a true constant, the construct the upstream grammar names true.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"true"}],"formerNames":[]},
    {"id":"grammar.false-constant","phrase":"false constant","role":"concept","definition":"A rule for a false constant, the construct the upstream grammar names false.","constraints":["Only the native Lean grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:lean","name":"false"}],"formerNames":[]},
    {"id":"grammar.sentence","phrase":"sentence","role":"concept","definition":"A rule for a sentence, the construct the upstream grammar names sentence.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"sentence"}],"formerNames":[]},
    {"id":"grammar.fail-prefix","phrase":"fail prefix","role":"concept","definition":"A rule for a fail prefix, the construct the upstream grammar names fail.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"fail_prefix"}],"formerNames":[]},
    {"id":"grammar.modern-attribute-block","phrase":"modern attribute block","role":"concept","definition":"A rule for a modern attribute block, the construct the upstream grammar names _modern_attribute_block.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"modern_attribute_block"}],"formerNames":[]},
    {"id":"grammar.attribute-value","phrase":"attribute value","role":"concept","definition":"A rule for an attribute value, the construct the upstream grammar names attr_value.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"attribute_value"}],"formerNames":[]},
    {"id":"grammar.legacy-attribute","phrase":"legacy attribute","role":"concept","definition":"A rule for a legacy attribute, the construct the upstream grammar names legacy_attr.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"legacy_attribute"}],"formerNames":[]},
    {"id":"grammar.selector","phrase":"selector","role":"concept","definition":"A rule for a selector, the construct the upstream grammar names selector.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"selector"}],"formerNames":[]},
    {"id":"grammar.goal-selector","phrase":"goal selector","role":"concept","definition":"A rule for a goal selector, the construct the upstream grammar names goal_selector.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"goal_selector"}],"formerNames":[]},
    {"id":"grammar.range-selector","phrase":"range selector","role":"concept","definition":"A rule for a range selector, the construct the upstream grammar names range_selector.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"range_selector"}],"formerNames":[]},
    {"id":"grammar.vernacular-command","phrase":"vernacular command","role":"concept","definition":"A rule for a vernacular command, the construct the upstream grammar names _vernacular_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"vernacular_command"}],"formerNames":[]},
    {"id":"grammar.require-command","phrase":"require command","role":"concept","definition":"A rule for a require command, the construct the upstream grammar names require_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"require_command"}],"formerNames":[]},
    {"id":"grammar.negated-selection","phrase":"negated selection","role":"concept","definition":"A rule for a negated selection, the construct the upstream grammar names neg_selection.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"negated_selection"}],"formerNames":[]},
    {"id":"grammar.import-categories","phrase":"import categories","role":"concept","definition":"A rule for an import categories, the construct the upstream grammar names import_categories.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"import_categories"}],"formerNames":[]},
    {"id":"grammar.filtered-import","phrase":"filtered import","role":"concept","definition":"A rule for a filtered import, the construct the upstream grammar names filtered_import.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"filtered_import"}],"formerNames":[]},
    {"id":"grammar.filtered-import-item","phrase":"filtered import item","role":"concept","definition":"A rule for a filtered import item, the construct the upstream grammar names filtered_import_item.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"filtered_import_item"}],"formerNames":[]},
    {"id":"grammar.import-wildcard","phrase":"import wildcard","role":"concept","definition":"A rule for an import wildcard, the construct the upstream grammar names import_wildcard.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"import_wildcard"}],"formerNames":[]},
    {"id":"grammar.create-hint-database-command","phrase":"create hint database command","role":"concept","definition":"A rule for a create hint database command, the construct the upstream grammar names create_hintdb_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"create_hint_database_command"}],"formerNames":[]},
    {"id":"grammar.create-rewrite-hint-database-command","phrase":"create rewrite hint database command","role":"concept","definition":"A rule for a create rewrite hint database command, the construct the upstream grammar names create_rewrite_hintdb_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"create_rewrite_hint_database_command"}],"formerNames":[]},
    {"id":"grammar.discriminated-database","phrase":"discriminated database","role":"concept","definition":"A rule for a discriminated database, the construct the upstream grammar names discriminated_db.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"discriminated_database"}],"formerNames":[]},
    {"id":"grammar.hint-command","phrase":"hint command","role":"concept","definition":"A rule for a hint command, the construct the upstream grammar names hint_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"hint_command"}],"formerNames":[]},
    {"id":"grammar.hint-extern","phrase":"hint extern","role":"concept","definition":"A rule for a hint extern, the construct the upstream grammar names hint_extern.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"hint_extern"}],"formerNames":[]},
    {"id":"grammar.one-pattern","phrase":"one pattern","role":"concept","definition":"A rule for an one pattern, the construct the upstream grammar names _one_pattern.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"one_pattern"}],"formerNames":[]},
    {"id":"grammar.evaluation-command","phrase":"evaluation command","role":"concept","definition":"A rule for an evaluation command, the construct the upstream grammar names evaluation_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"evaluation_command"}],"formerNames":[]},
    {"id":"grammar.reduction-expression","phrase":"reduction expression","role":"concept","definition":"A rule for a reduction expression, the construct the upstream grammar names reduction_expr.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"reduction_expression"}],"formerNames":[]},
    {"id":"grammar.extraction-command","phrase":"extraction command","role":"concept","definition":"A rule for an extraction command, the construct the upstream grammar names extraction_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"extraction_command"}],"formerNames":[]},
    {"id":"grammar.extract-command","phrase":"extract command","role":"concept","definition":"A rule for an extract command, the construct the upstream grammar names extract_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"extract_command"}],"formerNames":[]},
    {"id":"grammar.language","phrase":"language","role":"concept","definition":"A rule for a language, the construct the upstream grammar names language.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"language"}],"formerNames":[]},
    {"id":"grammar.set-command","phrase":"set command","role":"concept","definition":"A rule for a set command, the construct the upstream grammar names set_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"set_command"}],"formerNames":[]},
    {"id":"grammar.unset-command","phrase":"unset command","role":"concept","definition":"A rule for an unset command, the construct the upstream grammar names unset_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"unset_command"}],"formerNames":[]},
    {"id":"grammar.add-command","phrase":"add command","role":"concept","definition":"A rule for an add command, the construct the upstream grammar names add_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"add_command"}],"formerNames":[]},
    {"id":"grammar.remove-command","phrase":"remove command","role":"concept","definition":"A rule for a remove command, the construct the upstream grammar names remove_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"remove_command"}],"formerNames":[]},
    {"id":"grammar.test-command","phrase":"test command","role":"concept","definition":"A rule for a test command, the construct the upstream grammar names test_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"test_command"}],"formerNames":[]},
    {"id":"grammar.setting-name","phrase":"setting name","role":"concept","definition":"A rule for a setting name, the construct the upstream grammar names setting_name.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"setting_name"}],"formerNames":[]},
    {"id":"grammar.show-proof-command","phrase":"show proof command","role":"concept","definition":"A rule for a show proof command, the construct the upstream grammar names show_proof_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"show_proof_command"}],"formerNames":[]},
    {"id":"grammar.coercion-command","phrase":"coercion command","role":"concept","definition":"A rule for a coercion command, the construct the upstream grammar names coercion_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"coercion_command"}],"formerNames":[]},
    {"id":"grammar.coercion-class","phrase":"coercion class","role":"concept","definition":"A rule for a coercion class, the construct the upstream grammar names coercion_class.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"coercion_class"}],"formerNames":[]},
    {"id":"grammar.declare-command","phrase":"declare command","role":"concept","definition":"A rule for a declare command, the construct the upstream grammar names declare_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"declare_command"}],"formerNames":[]},
    {"id":"grammar.declare-scope-command","phrase":"declare scope command","role":"concept","definition":"A rule for a declare scope command, the construct the upstream grammar names _declare_scope_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"declare_scope_command"}],"formerNames":[]},
    {"id":"grammar.declare-custom-entry-command","phrase":"declare custom entry command","role":"concept","definition":"A rule for a declare custom entry command, the construct the upstream grammar names _declare_custom_entry_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"declare_custom_entry_command"}],"formerNames":[]},
    {"id":"grammar.open-scope-command","phrase":"open scope command","role":"concept","definition":"A rule for an open scope command, the construct the upstream grammar names open_scope_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"open_scope_command"}],"formerNames":[]},
    {"id":"grammar.close-scope-command","phrase":"close scope command","role":"concept","definition":"A rule for a close scope command, the construct the upstream grammar names close_scope_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"close_scope_command"}],"formerNames":[]},
    {"id":"grammar.theorem-command","phrase":"theorem command","role":"concept","definition":"A rule for a theorem command, the construct the upstream grammar names theorem_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"theorem_command"}],"formerNames":[]},
    {"id":"grammar.definition-command","phrase":"definition command","role":"concept","definition":"A rule for a definition command, the construct the upstream grammar names definition_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"definition_command"}],"formerNames":[]},
    {"id":"grammar.definition-body","phrase":"definition body","role":"concept","definition":"A rule for a definition body, the construct the upstream grammar names _def_body.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"definition_body"}],"formerNames":[]},
    {"id":"grammar.fixpoint-command","phrase":"fixpoint command","role":"concept","definition":"A rule for a fixpoint command, the construct the upstream grammar names fixpoint_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"fixpoint_command"}],"formerNames":[]},
    {"id":"grammar.function-command","phrase":"function command","role":"concept","definition":"A rule for a function command, the construct the upstream grammar names function_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"function_command"}],"formerNames":[]},
    {"id":"grammar.fix-definition","phrase":"fix definition","role":"concept","definition":"A rule for a fix definition, the construct the upstream grammar names _fix_definition.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"fix_definition"}],"formerNames":[]},
    {"id":"grammar.fixpoint-annotation","phrase":"fixpoint annotation","role":"concept","definition":"A rule for a fixpoint annotation, the construct the upstream grammar names fixannot.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"fixpoint_annotation"}],"formerNames":[]},
    {"id":"grammar.declaration-notations","phrase":"declaration notations","role":"concept","definition":"A rule for a declaration notations, the construct the upstream grammar names decl_notations.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"declaration_notations"}],"formerNames":[]},
    {"id":"grammar.inductive-command","phrase":"inductive command","role":"concept","definition":"A rule for an inductive command, the construct the upstream grammar names inductive_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"inductive_command"}],"formerNames":[]},
    {"id":"grammar.inductive-definition","phrase":"inductive definition","role":"concept","definition":"A rule for an inductive definition, the construct the upstream grammar names inductive_definition.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"inductive_definition"}],"formerNames":[]},
    {"id":"grammar.constructor-block","phrase":"constructor block","role":"concept","definition":"A rule for a constructor block, the construct the upstream grammar names constructor_block.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"constructor_block"}],"formerNames":[]},
    {"id":"grammar.of-type-instance","phrase":"of type instance","role":"concept","definition":"A rule for an of type instance, the construct the upstream grammar names of_type_inst.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"of_type_instance"}],"formerNames":[]},
    {"id":"grammar.constructor-attribute","phrase":"constructor attribute","role":"concept","definition":"A rule for a constructor attribute, the construct the upstream grammar names _constructor_attr.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"constructor_attribute"}],"formerNames":[]},
    {"id":"grammar.assumption-command","phrase":"assumption command","role":"concept","definition":"A rule for an assumption command, the construct the upstream grammar names assumption_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"assumption_command"}],"formerNames":[]},
    {"id":"grammar.assumption","phrase":"assumption","role":"concept","definition":"A rule for an assumption, the construct the upstream grammar names assumpt.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"assumption"}],"formerNames":[]},
    {"id":"grammar.of-type","phrase":"of type","role":"concept","definition":"A rule for an of type, the construct the upstream grammar names of_type.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"of_type"}],"formerNames":[]},
    {"id":"grammar.arguments-command","phrase":"arguments command","role":"concept","definition":"A rule for an arguments command, the construct the upstream grammar names arguments_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"arguments_command"}],"formerNames":[]},
    {"id":"grammar.argument-specification-item","phrase":"argument specification item","role":"concept","definition":"A rule for an argument specification item, the construct the upstream grammar names _argument_spec_item.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"argument_specification_item"}],"formerNames":[]},
    {"id":"grammar.argument-specification","phrase":"argument specification","role":"concept","definition":"A rule for an argument specification, the construct the upstream grammar names _argument_spec.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"argument_specification"}],"formerNames":[]},
    {"id":"grammar.scope-key","phrase":"scope key","role":"concept","definition":"A rule for a scope key, the construct the upstream grammar names scope_key.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"scope_key"}],"formerNames":[]},
    {"id":"grammar.arguments-modifier","phrase":"arguments modifier","role":"concept","definition":"A rule for an arguments modifier, the construct the upstream grammar names arguments_modifier.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"arguments_modifier"}],"formerNames":[]},
    {"id":"grammar.module-command","phrase":"module command","role":"concept","definition":"A rule for a module command, the construct the upstream grammar names module_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"module_command"}],"formerNames":[]},
    {"id":"grammar.module-binder","phrase":"module binder","role":"concept","definition":"A rule for a module binder, the construct the upstream grammar names module_binder.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"module_binder"}],"formerNames":[]},
    {"id":"grammar.module-type-expression","phrase":"module type expression","role":"concept","definition":"A rule for a module type expression, the construct the upstream grammar names module_type_expr.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"module_type_expression"}],"formerNames":[]},
    {"id":"grammar.register-command","phrase":"register command","role":"concept","definition":"A rule for a register command, the construct the upstream grammar names register_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"register_command"}],"formerNames":[]},
    {"id":"grammar.hint-priority","phrase":"hint priority","role":"concept","definition":"A rule for a hint priority, the construct the upstream grammar names hint_priority.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"hint_priority"}],"formerNames":[]},
    {"id":"grammar.record-fields-literal","phrase":"record fields literal","role":"concept","definition":"A rule for a record fields literal, the construct the upstream grammar names record_fields_literal.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"record_fields_literal"}],"formerNames":[]},
    {"id":"grammar.existing-command","phrase":"existing command","role":"concept","definition":"A rule for an existing command, the construct the upstream grammar names existing_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"existing_command"}],"formerNames":[]},
    {"id":"grammar.record-command","phrase":"record command","role":"concept","definition":"A rule for a record command, the construct the upstream grammar names record_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"record_command"}],"formerNames":[]},
    {"id":"grammar.record-field","phrase":"record field","role":"concept","definition":"A rule for a record field, the construct the upstream grammar names record_field.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"record_field"}],"formerNames":[]},
    {"id":"grammar.scheme-command","phrase":"scheme command","role":"concept","definition":"A rule for a scheme command, the construct the upstream grammar names scheme_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"scheme_command"}],"formerNames":[]},
    {"id":"grammar.scheme-kind","phrase":"scheme kind","role":"concept","definition":"A rule for a scheme kind, the construct the upstream grammar names _scheme_kind.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"scheme_kind"}],"formerNames":[]},
    {"id":"grammar.combined-scheme-command","phrase":"combined scheme command","role":"concept","definition":"A rule for a combined scheme command, the construct the upstream grammar names combined_scheme_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"combined_scheme_command"}],"formerNames":[]},
    {"id":"grammar.delimit-scope-command","phrase":"delimit scope command","role":"concept","definition":"A rule for a delimit scope command, the construct the upstream grammar names delimit_scope_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"delimit_scope_command"}],"formerNames":[]},
    {"id":"grammar.bind-scope-command","phrase":"bind scope command","role":"concept","definition":"A rule for a bind scope command, the construct the upstream grammar names bind_scope_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"bind_scope_command"}],"formerNames":[]},
    {"id":"grammar.context-command","phrase":"context command","role":"concept","definition":"A rule for a context command, the construct the upstream grammar names context_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"context_command"}],"formerNames":[]},
    {"id":"grammar.obligation-tactic-command","phrase":"obligation tactic command","role":"concept","definition":"A rule for an obligation tactic command, the construct the upstream grammar names obligation_tactic_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"obligation_tactic_command"}],"formerNames":[]},
    {"id":"grammar.obligation-command","phrase":"obligation command","role":"concept","definition":"A rule for an obligation command, the construct the upstream grammar names obligation_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"obligation_command"}],"formerNames":[]},
    {"id":"grammar.implicit-types-command","phrase":"implicit types command","role":"concept","definition":"A rule for an implicit types command, the construct the upstream grammar names implicit_types_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"implicit_types_command"}],"formerNames":[]},
    {"id":"grammar.type-classes-command","phrase":"type classes command","role":"concept","definition":"A rule for a type classes command, the construct the upstream grammar names typeclasses_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"type_classes_command"}],"formerNames":[]},
    {"id":"grammar.generalizable-command","phrase":"generalizable command","role":"concept","definition":"A rule for a generalizable command, the construct the upstream grammar names generalizable_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"generalizable_command"}],"formerNames":[]},
    {"id":"grammar.reserved-notation-command","phrase":"reserved notation command","role":"concept","definition":"A rule for a reserved notation command, the construct the upstream grammar names reserved_notation_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"reserved_notation_command"}],"formerNames":[]},
    {"id":"grammar.notation-command","phrase":"notation command","role":"concept","definition":"A rule for a notation command, the construct the upstream grammar names notation_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"notation_command"}],"formerNames":[]},
    {"id":"grammar.infix-command","phrase":"infix command","role":"concept","definition":"A rule for an infix command, the construct the upstream grammar names infix_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"infix_command"}],"formerNames":[]},
    {"id":"grammar.abbreviation-command","phrase":"abbreviation command","role":"concept","definition":"A rule for an abbreviation command, the construct the upstream grammar names abbreviation_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"abbreviation_command"}],"formerNames":[]},
    {"id":"grammar.notation-declaration","phrase":"notation declaration","role":"concept","definition":"A rule for a notation declaration, the construct the upstream grammar names notation_declaration.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"notation_declaration"}],"formerNames":[]},
    {"id":"grammar.notation-scope","phrase":"notation scope","role":"concept","definition":"A rule for a notation scope, the construct the upstream grammar names notation_scope.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"notation_scope"}],"formerNames":[]},
    {"id":"grammar.syntax-modifier-list","phrase":"syntax modifier list","role":"concept","definition":"A rule for a syntax modifier list, the construct the upstream grammar names syntax_modifier_list.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"syntax_modifier_list"}],"formerNames":[]},
    {"id":"grammar.syntax-modifier","phrase":"syntax modifier","role":"concept","definition":"A rule for a syntax modifier, the construct the upstream grammar names syntax_modifier.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"syntax_modifier"}],"formerNames":[]},
    {"id":"grammar.level-modifier","phrase":"level modifier","role":"concept","definition":"A rule for a level modifier, the construct the upstream grammar names level_modifier.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"level_modifier"}],"formerNames":[]},
    {"id":"grammar.custom-entry-modifier","phrase":"custom entry modifier","role":"concept","definition":"A rule for a custom entry modifier, the construct the upstream grammar names custom_entry_modifier.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"custom_entry_modifier"}],"formerNames":[]},
    {"id":"grammar.associativity-modifier","phrase":"associativity modifier","role":"concept","definition":"A rule for an associativity modifier, the construct the upstream grammar names associativity_modifier.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"associativity_modifier"}],"formerNames":[]},
    {"id":"grammar.parsing-modifier","phrase":"parsing modifier","role":"concept","definition":"A rule for a parsing modifier, the construct the upstream grammar names parsing_modifier.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"parsing_modifier"}],"formerNames":[]},
    {"id":"grammar.printing-modifier","phrase":"printing modifier","role":"concept","definition":"A rule for a printing modifier, the construct the upstream grammar names printing_modifier.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"printing_modifier"}],"formerNames":[]},
    {"id":"grammar.format-modifier","phrase":"format modifier","role":"concept","definition":"A rule for a format modifier, the construct the upstream grammar names format_modifier.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"format_modifier"}],"formerNames":[]},
    {"id":"grammar.plural-variable-modifier","phrase":"plural variable modifier","role":"concept","definition":"A rule for a plural variable modifier, the construct the upstream grammar names plural_variable_modifier.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"plural_variable_modifier"}],"formerNames":[]},
    {"id":"grammar.singular-variable-modifier","phrase":"singular variable modifier","role":"concept","definition":"A rule for a singular variable modifier, the construct the upstream grammar names singular_variable_modifier.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"singular_variable_modifier"}],"formerNames":[]},
    {"id":"grammar.explicit-notation-entry","phrase":"explicit notation entry","role":"concept","definition":"A rule for an explicit notation entry, the construct the upstream grammar names explicit_subentry.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"explicit_notation_entry"}],"formerNames":[]},
    {"id":"grammar.binder-interpretation","phrase":"binder interpretation","role":"concept","definition":"A rule for a binder interpretation, the construct the upstream grammar names binder_interp.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"binder_interpretation"}],"formerNames":[]},
    {"id":"grammar.level","phrase":"level","role":"concept","definition":"A rule for a level, the construct the upstream grammar names level.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"level"}],"formerNames":[]},
    {"id":"grammar.at-level-number","phrase":"at level number","role":"concept","definition":"A rule for an at level number, the construct the upstream grammar names at_level_num.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"at_level_number"}],"formerNames":[]},
    {"id":"grammar.at-level","phrase":"at level","role":"concept","definition":"A rule for an at level, the construct the upstream grammar names at_level.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"at_level"}],"formerNames":[]},
    {"id":"grammar.proof-command","phrase":"proof command","role":"concept","definition":"A rule for a proof command, the construct the upstream grammar names proof_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"proof_command"}],"formerNames":[]},
    {"id":"grammar.section-variable-expression","phrase":"section variable expression","role":"concept","definition":"A rule for a section variable expression, the construct the upstream grammar names section_var_expr.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"section_variable_expression"}],"formerNames":[]},
    {"id":"grammar.expression-ops","phrase":"expression ops","role":"concept","definition":"A rule for an expression ops, the construct the upstream grammar names expr_ops.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"expression_ops"}],"formerNames":[]},
    {"id":"grammar.atomic-expression","phrase":"atomic expression","role":"concept","definition":"A rule for an atomic expression, the construct the upstream grammar names expr_atomic.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"atomic_expression"}],"formerNames":[]},
    {"id":"grammar.expression-leaf","phrase":"expression leaf","role":"concept","definition":"A rule for an expression leaf, the construct the upstream grammar names expr_leaf.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"expression_leaf"}],"formerNames":[]},
    {"id":"grammar.qed-command","phrase":"qed command","role":"concept","definition":"A rule for a qed command, the construct the upstream grammar names qed_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"qed_command"}],"formerNames":[]},
    {"id":"grammar.admitted-command","phrase":"admitted command","role":"concept","definition":"A rule for an admitted command, the construct the upstream grammar names admitted_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"admitted_command"}],"formerNames":[]},
    {"id":"grammar.save-command","phrase":"save command","role":"concept","definition":"A rule for a save command, the construct the upstream grammar names save_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"save_command"}],"formerNames":[]},
    {"id":"grammar.defined-command","phrase":"defined command","role":"concept","definition":"A rule for a defined command, the construct the upstream grammar names defined_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"defined_command"}],"formerNames":[]},
    {"id":"grammar.abort-command","phrase":"abort command","role":"concept","definition":"A rule for an abort command, the construct the upstream grammar names abort_command.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"abort_command"}],"formerNames":[]},
    {"id":"grammar.proof-block","phrase":"proof block","role":"concept","definition":"A rule for a proof block, the construct the upstream grammar names proof_block.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"proof_block"}],"formerNames":[]},
    {"id":"grammar.bullet","phrase":"bullet","role":"concept","definition":"A rule for a bullet, the construct the upstream grammar names bullet.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"bullet"}],"formerNames":[]},
    {"id":"grammar.hundred-level-term","phrase":"hundred level term","role":"concept","definition":"A rule for a hundred level term, the construct the upstream grammar names _term100.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"hundred_level_term"}],"formerNames":[]},
    {"id":"grammar.term-cast","phrase":"term cast","role":"concept","definition":"A rule for a term cast, the construct the upstream grammar names term_cast.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"term_cast"}],"formerNames":[]},
    {"id":"grammar.ninety-nine-level-term","phrase":"ninety nine level term","role":"concept","definition":"A rule for a ninety nine level term, the construct the upstream grammar names _term99.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"ninety_nine_level_term"}],"formerNames":[]},
    {"id":"grammar.ten-level-term","phrase":"ten level term","role":"concept","definition":"A rule for a ten level term, the construct the upstream grammar names _term10.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"ten_level_term"}],"formerNames":[]},
    {"id":"grammar.rewrite-term","phrase":"rewrite term","role":"concept","definition":"A rule for a rewrite term, the construct the upstream grammar names rew_term.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"rewrite_term"}],"formerNames":[]},
    {"id":"grammar.one-term","phrase":"one term","role":"concept","definition":"A rule for an one term, the construct the upstream grammar names _one_term.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"one_term"}],"formerNames":[]},
    {"id":"grammar.one-level-term","phrase":"one level term","role":"concept","definition":"A rule for an one level term, the construct the upstream grammar names _term1.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"one_level_term"}],"formerNames":[]},
    {"id":"grammar.zero-level-term","phrase":"zero level term","role":"concept","definition":"A rule for a zero level term, the construct the upstream grammar names _term0.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"zero_level_term"}],"formerNames":[]},
    {"id":"grammar.ltac-quotation","phrase":"ltac quotation","role":"concept","definition":"A rule for a ltac quotation, the construct the upstream grammar names ltac_quotation.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"ltac_quotation"}],"formerNames":[]},
    {"id":"grammar.term-quotation","phrase":"term quotation","role":"concept","definition":"A rule for a term quotation, the construct the upstream grammar names term_quotation.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"term_quotation"}],"formerNames":[]},
    {"id":"grammar.subset-term","phrase":"subset term","role":"concept","definition":"A rule for a subset term, the construct the upstream grammar names subset_term.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"subset_term"}],"formerNames":[]},
    {"id":"grammar.projection-term","phrase":"projection term","role":"concept","definition":"A rule for a projection term, the construct the upstream grammar names projection_term.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"projection_term"}],"formerNames":[]},
    {"id":"grammar.double-dot","phrase":"double dot","role":"concept","definition":"A rule for a double dot, the construct the upstream grammar names double_dot.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"double_dot"}],"formerNames":[]},
    {"id":"grammar.recursive-notation-term","phrase":"recursive notation term","role":"concept","definition":"A rule for a recursive notation term, the construct the upstream grammar names recursive_notation_term.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"recursive_notation_term"}],"formerNames":[]},
    {"id":"grammar.parenthesized-term","phrase":"parenthesized term","role":"concept","definition":"A rule for a parenthesized term, the construct the upstream grammar names parenthesized_term.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"parenthesized_term"}],"formerNames":[]},
    {"id":"grammar.list-literal","phrase":"list literal","role":"concept","definition":"A rule for a list literal, the construct the upstream grammar names list_literal.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"list_literal"}],"formerNames":[]},
    {"id":"grammar.scoped-term","phrase":"scoped term","role":"concept","definition":"A rule for a scoped term, the construct the upstream grammar names scoped_term.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"scoped_term"}],"formerNames":[]},
    {"id":"grammar.lambda-function","phrase":"lambda function","role":"concept","definition":"A rule for a lambda function, the construct the upstream grammar names lambda_function.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"lambda_function"}],"formerNames":[]},
    {"id":"grammar.quantifier-term","phrase":"quantifier term","role":"concept","definition":"A rule for a quantifier term, the construct the upstream grammar names quantifier_term.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"quantifier_term"}],"formerNames":[]},
    {"id":"grammar.let-expression","phrase":"let expression","role":"concept","definition":"A rule for a let expression, the construct the upstream grammar names let_expression.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"let_expression"}],"formerNames":[]},
    {"id":"grammar.let-expression-term","phrase":"let expression term","role":"concept","definition":"A rule for a let expression term, the construct the upstream grammar names _let_expression_term.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"let_expression_term"}],"formerNames":[]},
    {"id":"grammar.destructuring-let-name-list","phrase":"destructuring let name list","role":"concept","definition":"A rule for a destructuring let name list, the construct the upstream grammar names _destructuring_let_name_list.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"destructuring_let_name_list"}],"formerNames":[]},
    {"id":"grammar.destructuring-let-apostrophe","phrase":"destructuring let apostrophe","role":"concept","definition":"A rule for a destructuring let apostrophe, the construct the upstream grammar names _destructuring_let_apos.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"destructuring_let_apostrophe"}],"formerNames":[]},
    {"id":"grammar.let-expression-name-list","phrase":"let expression name list","role":"concept","definition":"A rule for a let expression name list, the construct the upstream grammar names let_expression_name_list.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"let_expression_name_list"}],"formerNames":[]},
    {"id":"grammar.match-item","phrase":"match item","role":"concept","definition":"A rule for a match item, the construct the upstream grammar names case_item.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"match_item"}],"formerNames":[]},
    {"id":"grammar.match-case","phrase":"match case","role":"concept","definition":"A rule for a match case, the construct the upstream grammar names match_case.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"match_case"}],"formerNames":[]},
    {"id":"grammar.pattern-option","phrase":"pattern option","role":"concept","definition":"A rule for a pattern option, the construct the upstream grammar names pattern_option.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"pattern_option"}],"formerNames":[]},
    {"id":"grammar.fix-expression","phrase":"fix expression","role":"concept","definition":"A rule for a fix expression, the construct the upstream grammar names fix_expression.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"fix_expression"}],"formerNames":[]},
    {"id":"grammar.fix-declaration","phrase":"fix declaration","role":"concept","definition":"A rule for a fix declaration, the construct the upstream grammar names fix_decl.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"fix_declaration"}],"formerNames":[]},
    {"id":"grammar.term-as-clause","phrase":"term as clause","role":"concept","definition":"A rule for a term as clause, the construct the upstream grammar names term_as_clause.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"term_as_clause"}],"formerNames":[]},
    {"id":"grammar.term-return-clause","phrase":"term return clause","role":"concept","definition":"A rule for a term return clause, the construct the upstream grammar names term_return_clause.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"term_return_clause"}],"formerNames":[]},
    {"id":"grammar.term-in-pattern","phrase":"term in pattern","role":"concept","definition":"A rule for a term in pattern, the construct the upstream grammar names term_in_pattern.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"term_in_pattern"}],"formerNames":[]},
    {"id":"grammar.infix-operation","phrase":"infix operation","role":"concept","definition":"A rule for an infix operation, the construct the upstream grammar names _infix_operation.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"infix_operation"}],"formerNames":[]},
    {"id":"grammar.negation-operation","phrase":"negation operation","role":"concept","definition":"A rule for a negation operation, the construct the upstream grammar names negation_operation.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"negation_operation"}],"formerNames":[]},
    {"id":"grammar.cons-operation","phrase":"cons operation","role":"concept","definition":"A rule for a cons operation, the construct the upstream grammar names cons_operation.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"cons_operation"}],"formerNames":[]},
    {"id":"grammar.append-operation","phrase":"append operation","role":"concept","definition":"A rule for an append operation, the construct the upstream grammar names app_operation.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"append_operation"}],"formerNames":[]},
    {"id":"grammar.multiplicative-operation","phrase":"multiplicative operation","role":"concept","definition":"A rule for a multiplicative operation, the construct the upstream grammar names multiplicative_operation.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"multiplicative_operation"}],"formerNames":[]},
    {"id":"grammar.additive-operation","phrase":"additive operation","role":"concept","definition":"A rule for an additive operation, the construct the upstream grammar names additive_operation.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"additive_operation"}],"formerNames":[]},
    {"id":"grammar.comparison-operation","phrase":"comparison operation","role":"concept","definition":"A rule for a comparison operation, the construct the upstream grammar names comparison_operation.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"comparison_operation"}],"formerNames":[]},
    {"id":"grammar.logical-conjunction","phrase":"logical conjunction","role":"concept","definition":"A rule for a logical conjunction, the construct the upstream grammar names logical_conjunction.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"logical_conjunction"}],"formerNames":[]},
    {"id":"grammar.logical-disjunction","phrase":"logical disjunction","role":"concept","definition":"A rule for a logical disjunction, the construct the upstream grammar names logical_disjunction.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"logical_disjunction"}],"formerNames":[]},
    {"id":"grammar.logical-equivalence","phrase":"logical equivalence","role":"concept","definition":"A rule for a logical equivalence, the construct the upstream grammar names logical_equivalence.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"logical_equivalence"}],"formerNames":[]},
    {"id":"grammar.custom-operation","phrase":"custom operation","role":"concept","definition":"A rule for a custom operation, the construct the upstream grammar names custom_operation.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"custom_operation"}],"formerNames":[]},
    {"id":"grammar.arrow-term","phrase":"arrow term","role":"concept","definition":"A rule for an arrow term, the construct the upstream grammar names arrow_term.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"arrow_term"}],"formerNames":[]},
    {"id":"grammar.infix-pattern","phrase":"infix pattern","role":"concept","definition":"A rule for an infix pattern, the construct the upstream grammar names infix_pattern.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"infix_pattern"}],"formerNames":[]},
    {"id":"grammar.ten-level-pattern","phrase":"ten level pattern","role":"concept","definition":"A rule for a ten level pattern, the construct the upstream grammar names _pattern10.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"ten_level_pattern"}],"formerNames":[]},
    {"id":"grammar.pattern-application","phrase":"pattern application","role":"concept","definition":"A rule for a pattern application, the construct the upstream grammar names pattern_application.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"pattern_application"}],"formerNames":[]},
    {"id":"grammar.one-level-pattern","phrase":"one level pattern","role":"concept","definition":"A rule for an one level pattern, the construct the upstream grammar names _pattern1.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"one_level_pattern"}],"formerNames":[]},
    {"id":"grammar.zero-level-pattern","phrase":"zero level pattern","role":"concept","definition":"A rule for a zero level pattern, the construct the upstream grammar names _pattern0.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"zero_level_pattern"}],"formerNames":[]},
    {"id":"grammar.parenthesized-pattern","phrase":"parenthesized pattern","role":"concept","definition":"A rule for a parenthesized pattern, the construct the upstream grammar names parenthesized_pattern.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"parenthesized_pattern"}],"formerNames":[]},
    {"id":"grammar.single-binder","phrase":"single binder","role":"concept","definition":"A rule for a single binder, the construct the upstream grammar names binder.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"binder"}],"formerNames":[]},
    {"id":"grammar.generalized-binder","phrase":"generalized binder","role":"concept","definition":"A rule for a generalized binder, the construct the upstream grammar names generalized_binder.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"generalized_binder"}],"formerNames":[]},
    {"id":"grammar.open-binders","phrase":"open binders","role":"concept","definition":"A rule for an open binders, the construct the upstream grammar names open_binders.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"open_binders"}],"formerNames":[]},
    {"id":"grammar.ltac-definition","phrase":"ltac definition","role":"concept","definition":"A rule for a ltac definition, the construct the upstream grammar names ltac_definition.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"ltac_definition"}],"formerNames":[]},
    {"id":"grammar.ltac-definition-body","phrase":"ltac definition body","role":"concept","definition":"A rule for a ltac definition body, the construct the upstream grammar names _ltac_definition_body.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"ltac_definition_body"}],"formerNames":[]},
    {"id":"grammar.ltac-expression","phrase":"ltac expression","role":"concept","definition":"A rule for a ltac expression, the construct the upstream grammar names _ltac_expr.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"ltac_expression"}],"formerNames":[]},
    {"id":"grammar.ltac-fun","phrase":"ltac fun","role":"concept","definition":"A rule for a ltac fun, the construct the upstream grammar names ltac_fun.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"ltac_fun"}],"formerNames":[]},
    {"id":"grammar.ltac-evaluation","phrase":"ltac evaluation","role":"concept","definition":"A rule for a ltac evaluation, the construct the upstream grammar names ltac_eval.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"ltac_evaluation"}],"formerNames":[]},
    {"id":"grammar.try-if-tactic","phrase":"try if tactic","role":"concept","definition":"A rule for a try if tactic, the construct the upstream grammar names tryif_tactic.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"try_if_tactic"}],"formerNames":[]},
    {"id":"grammar.match-ltac-term","phrase":"match ltac term","role":"concept","definition":"A rule for a match ltac term, the construct the upstream grammar names match_ltac_term.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"match_ltac_term"}],"formerNames":[]},
    {"id":"grammar.match-ltac-case","phrase":"match ltac case","role":"concept","definition":"A rule for a match ltac case, the construct the upstream grammar names match_ltac_case.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"match_ltac_case"}],"formerNames":[]},
    {"id":"grammar.ltac-let","phrase":"ltac let","role":"concept","definition":"A rule for a ltac let, the construct the upstream grammar names ltac_let.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"ltac_let"}],"formerNames":[]},
    {"id":"grammar.parenthesized-tactic","phrase":"parenthesized tactic","role":"concept","definition":"A rule for a parenthesized tactic, the construct the upstream grammar names parenthesized_tactic.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"parenthesized_tactic"}],"formerNames":[]},
    {"id":"grammar.tactic-branch","phrase":"tactic branch","role":"concept","definition":"A rule for a tactic branch, the construct the upstream grammar names tactic_branch.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"tactic_branch"}],"formerNames":[]},
    {"id":"grammar.for-each-goal","phrase":"for each goal","role":"concept","definition":"A rule for a for each goal, the construct the upstream grammar names _for_each_goal.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"for_each_goal"}],"formerNames":[]},
    {"id":"grammar.goal-tactics","phrase":"goal tactics","role":"concept","definition":"A rule for a goal tactics, the construct the upstream grammar names _goal_tactics.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"goal_tactics"}],"formerNames":[]},
    {"id":"grammar.goal-branch","phrase":"goal branch","role":"concept","definition":"A rule for a goal branch, the construct the upstream grammar names goal_branch.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"goal_branch"}],"formerNames":[]},
    {"id":"grammar.tactic-invocation","phrase":"tactic invocation","role":"concept","definition":"A rule for a tactic invocation, the construct the upstream grammar names tactic_invocation.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"tactic_invocation"}],"formerNames":[]},
    {"id":"grammar.intros-tactic","phrase":"intros tactic","role":"concept","definition":"A rule for an intros tactic, the construct the upstream grammar names intros_tactic.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"intros_tactic"}],"formerNames":[]},
    {"id":"grammar.assert-tactic","phrase":"assert tactic","role":"concept","definition":"A rule for an assert tactic, the construct the upstream grammar names assert_tactic.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"assert_tactic"}],"formerNames":[]},
    {"id":"grammar.one-type","phrase":"one type","role":"concept","definition":"A rule for an one type, the construct the upstream grammar names _one_type.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"one_type"}],"formerNames":[]},
    {"id":"grammar.rewrite-tactic","phrase":"rewrite tactic","role":"concept","definition":"A rule for a rewrite tactic, the construct the upstream grammar names rewrite_tactic.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"rewrite_tactic"}],"formerNames":[]},
    {"id":"grammar.oriented-rewriter","phrase":"oriented rewriter","role":"concept","definition":"A rule for an oriented rewriter, the construct the upstream grammar names oriented_rewriter.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"oriented_rewriter"}],"formerNames":[]},
    {"id":"grammar.at-clause","phrase":"at clause","role":"concept","definition":"A rule for an at clause, the construct the upstream grammar names at_clause.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"at_clause"}],"formerNames":[]},
    {"id":"grammar.atomic-term-with-bindings","phrase":"atomic term with bindings","role":"concept","definition":"A rule for an atomic term with bindings, the construct the upstream grammar names atomic_term_with_bindings.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"atomic_term_with_bindings"}],"formerNames":[]},
    {"id":"grammar.first-tactic","phrase":"first tactic","role":"concept","definition":"A rule for a first tactic, the construct the upstream grammar names first_tactic.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"first_tactic"}],"formerNames":[]},
    {"id":"grammar.tactical","phrase":"tactical","role":"concept","definition":"A rule for a tactical, the construct the upstream grammar names tactical.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"tactical"}],"formerNames":[]},
    {"id":"grammar.generic-tactic","phrase":"generic tactic","role":"concept","definition":"A rule for a generic tactic, the construct the upstream grammar names generic_tactic.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"generic_tactic"}],"formerNames":[]},
    {"id":"grammar.generic-tactic-body","phrase":"generic tactic body","role":"concept","definition":"A rule for a generic tactic body, the construct the upstream grammar names generic_tactic_body.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"generic_tactic_body"}],"formerNames":[]},
    {"id":"grammar.tactic-clause","phrase":"tactic clause","role":"concept","definition":"A rule for a tactic clause, the construct the upstream grammar names _tactic_clause.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"tactic_clause"}],"formerNames":[]},
    {"id":"grammar.tactic-argument","phrase":"tactic argument","role":"concept","definition":"A rule for a tactic argument, the construct the upstream grammar names _tactic_arg.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"tactic_argument"}],"formerNames":[]},
    {"id":"grammar.oriented-term","phrase":"oriented term","role":"concept","definition":"A rule for an oriented term, the construct the upstream grammar names oriented_term.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"oriented_term"}],"formerNames":[]},
    {"id":"grammar.local-definition","phrase":"local definition","role":"concept","definition":"A rule for a local definition, the construct the upstream grammar names local_definition.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"local_definition"}],"formerNames":[]},
    {"id":"grammar.tactic-alternative","phrase":"tactic alternative","role":"concept","definition":"A rule for a tactic alternative, the construct the upstream grammar names tactic_or.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"tactic_alternative"}],"formerNames":[]},
    {"id":"grammar.match-goal","phrase":"match goal","role":"concept","definition":"A rule for a match goal, the construct the upstream grammar names match_goal.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"match_goal"}],"formerNames":[]},
    {"id":"grammar.match-goal-case","phrase":"match goal case","role":"concept","definition":"A rule for a match goal case, the construct the upstream grammar names match_goal_case.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"match_goal_case"}],"formerNames":[]},
    {"id":"grammar.goal-pattern","phrase":"goal pattern","role":"concept","definition":"A rule for a goal pattern, the construct the upstream grammar names goal_pattern.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"goal_pattern"}],"formerNames":[]},
    {"id":"grammar.goal-pattern-body","phrase":"goal pattern body","role":"concept","definition":"A rule for a goal pattern body, the construct the upstream grammar names _goal_pattern_body.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"goal_pattern_body"}],"formerNames":[]},
    {"id":"grammar.match-hypothesis","phrase":"match hypothesis","role":"concept","definition":"A rule for a match hypothesis, the construct the upstream grammar names match_hyp.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"match_hypothesis"}],"formerNames":[]},
    {"id":"grammar.intro-pattern","phrase":"intro pattern","role":"concept","definition":"A rule for an intro pattern, the construct the upstream grammar names intro_pattern.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"intro_pattern"}],"formerNames":[]},
    {"id":"grammar.intro-pattern-item","phrase":"intro pattern item","role":"concept","definition":"A rule for an intro pattern item, the construct the upstream grammar names _intro_pattern_item.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"intro_pattern_item"}],"formerNames":[]},
    {"id":"grammar.bracketed-intro-pattern","phrase":"bracketed intro pattern","role":"concept","definition":"A rule for a bracketed intro pattern, the construct the upstream grammar names bracketed_intro_pattern.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"bracketed_intro_pattern"}],"formerNames":[]},
    {"id":"grammar.parenthesized-intro-pattern","phrase":"parenthesized intro pattern","role":"concept","definition":"A rule for a parenthesized intro pattern, the construct the upstream grammar names parenthesized_intro_pattern.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"parenthesized_intro_pattern"}],"formerNames":[]},
    {"id":"grammar.in-clause","phrase":"in clause","role":"concept","definition":"A rule for an in clause, the construct the upstream grammar names in_clause.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"in_clause"}],"formerNames":[]},
    {"id":"grammar.hypothesis-occurrence","phrase":"hypothesis occurrence","role":"concept","definition":"A rule for a hypothesis occurrence, the construct the upstream grammar names _hyp_occurrence.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"hypothesis_occurrence"}],"formerNames":[]},
    {"id":"grammar.goal-occurrence","phrase":"goal occurrence","role":"concept","definition":"A rule for a goal occurrence, the construct the upstream grammar names _goal_occurrence.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"goal_occurrence"}],"formerNames":[]},
    {"id":"grammar.with-clause","phrase":"with clause","role":"concept","definition":"A rule for a with clause, the construct the upstream grammar names with_clause.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"with_clause"}],"formerNames":[]},
    {"id":"grammar.as-clause","phrase":"as clause","role":"concept","definition":"A rule for an as clause, the construct the upstream grammar names as_clause.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"as_clause"}],"formerNames":[]},
    {"id":"grammar.by-clause","phrase":"by clause","role":"concept","definition":"A rule for a by clause, the construct the upstream grammar names by_clause.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"by_clause"}],"formerNames":[]},
    {"id":"grammar.tactic-bindings","phrase":"tactic bindings","role":"concept","definition":"A rule for a tactic bindings, the construct the upstream grammar names bindings.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"tactic_bindings"}],"formerNames":[]},
    {"id":"grammar.equation-clause","phrase":"equation clause","role":"concept","definition":"A rule for an equation clause, the construct the upstream grammar names eqn_clause.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"equation_clause"}],"formerNames":[]},
    {"id":"grammar.using-clause","phrase":"using clause","role":"concept","definition":"A rule for an using clause, the construct the upstream grammar names using_clause.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"using_clause"}],"formerNames":[]},
    {"id":"grammar.qualified-identifier","phrase":"qualified identifier","role":"concept","definition":"A rule for a qualified identifier, the construct the upstream grammar names _qualid.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"full_identifier"},{"source":"native:rocq","name":"qualified_identifier"}],"formerNames":[]},
    {"id":"grammar.identifier-declaration","phrase":"identifier declaration","role":"concept","definition":"A rule for an identifier declaration, the construct the upstream grammar names ident_decl.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"identifier_declaration"}],"formerNames":[]},
    {"id":"grammar.big-integer","phrase":"big integer","role":"concept","definition":"A rule for a big integer, the construct the upstream grammar names _bigint.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"big_integer"}],"formerNames":[]},
    {"id":"grammar.natural","phrase":"natural","role":"concept","definition":"A rule for a natural, the construct the upstream grammar names _natural.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"natural"}],"formerNames":[]},
    {"id":"grammar.big-natural-number","phrase":"big natural number","role":"concept","definition":"A rule for a big natural number, the construct the upstream grammar names _bignat.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"big_natural_number"}],"formerNames":[]},
    {"id":"grammar.decimal-natural-number","phrase":"decimal natural number","role":"concept","definition":"A rule for a decimal natural number, the construct the upstream grammar names decnat.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"decimal_natural_number"}],"formerNames":[]},
    {"id":"grammar.hexadecimal-natural-number","phrase":"hexadecimal natural number","role":"concept","definition":"A rule for a hexadecimal natural number, the construct the upstream grammar names hexnat.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"hexadecimal_natural_number"}],"formerNames":[]},
    {"id":"grammar.hexadecimal-digit","phrase":"hexadecimal digit","role":"concept","definition":"A rule for a hexadecimal digit, the construct the upstream grammar names hexdigit.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"hexadecimal_digit"},{"source":"native:solidity","name":"hex_digit"}],"formerNames":[]},
    {"id":"grammar.dotted-qualified-identifier","phrase":"dotted qualified identifier","role":"concept","definition":"A rule for a dotted qualified identifier, the construct the upstream grammar names dotted_qualid.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"dotted_qualified_identifier"}],"formerNames":[]},
    {"id":"grammar.annotated-qualified-identifier","phrase":"annotated qualified identifier","role":"concept","definition":"A rule for an annotated qualified identifier, the construct the upstream grammar names _qualid_annotated.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"annotated_qualified_identifier"}],"formerNames":[]},
    {"id":"grammar.global-reference","phrase":"global reference","role":"concept","definition":"A rule for a global reference, the construct the upstream grammar names reference.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"global_reference"}],"formerNames":[]},
    {"id":"grammar.wildcard","phrase":"wildcard","role":"concept","definition":"A rule for a wildcard, the construct the upstream grammar names wildcard.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"wildcard"}],"formerNames":[]},
    {"id":"grammar.custom-notation-block","phrase":"custom notation block","role":"concept","definition":"A rule for a custom notation block, the construct the upstream grammar names custom_notation_block.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"custom_notation_block"}],"formerNames":[]},
    {"id":"grammar.dsl-token","phrase":"dsl token","role":"concept","definition":"A rule for a dsl token, the construct the upstream grammar names _dsl_token.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"dsl_token"}],"formerNames":[]},
    {"id":"grammar.imp-evaluation-operation","phrase":"imp evaluation operation","role":"concept","definition":"A rule for an imp evaluation operation, the construct the upstream grammar names imp_evaluation_operation.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"imp_evaluation_operation"}],"formerNames":[]},
    {"id":"grammar.imp-program","phrase":"imp program","role":"concept","definition":"A rule for an imp program, the construct the upstream grammar names imp_program.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"imp_program"}],"formerNames":[]},
    {"id":"grammar.imp-token","phrase":"imp token","role":"concept","definition":"A rule for an imp token, the construct the upstream grammar names _imp_token.","constraints":["Only the native Rocq grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:rocq","name":"imp_token"}],"formerNames":[]},
    {"id":"grammar.decimal-integer-literal","phrase":"decimal integer literal","role":"concept","definition":"A rule for a decimal integer literal, the construct the upstream grammar names decimal_integer_literal.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"decimal_integer_literal"},{"source":"native:proto","name":"decimal_literal"}],"formerNames":[]},
    {"id":"grammar.hex-integer-literal","phrase":"hex integer literal","role":"concept","definition":"A rule for a hex integer literal, the construct the upstream grammar names hex_integer_literal.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"hex_integer_literal"},{"source":"native:proto","name":"hex_literal"}],"formerNames":[]},
    {"id":"grammar.octal-integer-literal","phrase":"octal integer literal","role":"concept","definition":"A rule for an octal integer literal, the construct the upstream grammar names octal_integer_literal.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"octal_integer_literal"},{"source":"native:proto","name":"octal_literal"}],"formerNames":[]},
    {"id":"grammar.binary-integer-literal","phrase":"binary integer literal","role":"concept","definition":"A rule for a binary integer literal, the construct the upstream grammar names binary_integer_literal.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"binary_integer_literal"}],"formerNames":[]},
    {"id":"grammar.decimal-floating-point-literal","phrase":"decimal floating point literal","role":"concept","definition":"A rule for a decimal floating point literal, the construct the upstream grammar names decimal_floating_point_literal.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"decimal_floating_point_literal"}],"formerNames":[]},
    {"id":"grammar.hex-floating-point-literal","phrase":"hex floating point literal","role":"concept","definition":"A rule for a hex floating point literal, the construct the upstream grammar names hex_floating_point_literal.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"hex_floating_point_literal"}],"formerNames":[]},
    {"id":"grammar.single-line-string-literal","phrase":"single line string literal","role":"concept","definition":"A rule for a single line string literal, the construct the upstream grammar names _string_literal.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"single_line_string_literal"}],"formerNames":[]},
    {"id":"grammar.text-block","phrase":"text block","role":"concept","definition":"A rule for a text block, the construct the upstream grammar names _multiline_string_literal.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"text_block"}],"formerNames":[]},
    {"id":"grammar.string-fragment","phrase":"string fragment","role":"concept","definition":"A rule for a string fragment, the construct the upstream grammar names string_fragment.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"string_fragment"}],"formerNames":[]},
    {"id":"grammar.text-block-fragment-choice","phrase":"text block fragment choice","role":"concept","definition":"A rule for a text block fragment choice, the construct the upstream grammar names _multiline_string_fragment.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"text_block_fragment_choice"}],"formerNames":[]},
    {"id":"grammar.string-interpolation","phrase":"string interpolation","role":"concept","definition":"A rule for a string interpolation, the construct the upstream grammar names string_interpolation.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"string_interpolation"}],"formerNames":[]},
    {"id":"grammar.escape-sequence-choice","phrase":"escape sequence choice","role":"concept","definition":"A rule for an escape sequence choice, the construct the upstream grammar names _escape_sequence.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"escape_sequence_choice"}],"formerNames":[]},
    {"id":"grammar.null-literal","phrase":"null literal","role":"concept","definition":"A rule for a null literal, the construct the upstream grammar names null_literal.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"null_literal"}],"formerNames":[]},
    {"id":"grammar.instance-of-expression","phrase":"instance of expression","role":"concept","definition":"A rule for an instance of expression, the construct the upstream grammar names instanceof_expression.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"instance_of_expression"}],"formerNames":[]},
    {"id":"grammar.lambda-expression","phrase":"lambda expression","role":"concept","definition":"A rule for a lambda expression, the construct the upstream grammar names lambda_expression.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"lambda_expression"}],"formerNames":[]},
    {"id":"grammar.inferred-parameters","phrase":"inferred parameters","role":"concept","definition":"A rule for an inferred parameters, the construct the upstream grammar names inferred_parameters.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"inferred_parameters"}],"formerNames":[]},
    {"id":"grammar.array-creation-expression","phrase":"array creation expression","role":"concept","definition":"A rule for an array creation expression, the construct the upstream grammar names array_creation_expression.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"array_creation_expression"}],"formerNames":[]},
    {"id":"grammar.dimensions-expression","phrase":"dimensions expression","role":"concept","definition":"A rule for a dimensions expression, the construct the upstream grammar names dimensions_expr.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"dimensions_expression"}],"formerNames":[]},
    {"id":"grammar.class-literal","phrase":"class literal","role":"concept","definition":"A rule for a class literal, the construct the upstream grammar names class_literal.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"class_literal"}],"formerNames":[]},
    {"id":"grammar.object-creation-expression","phrase":"object creation expression","role":"concept","definition":"A rule for an object creation expression, the construct the upstream grammar names object_creation_expression.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"object_creation_expression"}],"formerNames":[]},
    {"id":"grammar.unqualified-object-creation-expression","phrase":"unqualified object creation expression","role":"concept","definition":"A rule for an unqualified object creation expression, the construct the upstream grammar names _unqualified_object_creation_expression.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"unqualified_object_creation_expression"}],"formerNames":[]},
    {"id":"grammar.field-access","phrase":"field access","role":"concept","definition":"A rule for a field access, the construct the upstream grammar names field_access.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"field_access"}],"formerNames":[]},
    {"id":"grammar.template-expression","phrase":"template expression","role":"concept","definition":"A rule for a template expression, the construct the upstream grammar names template_expression.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"template_expression"}],"formerNames":[]},
    {"id":"grammar.array-access","phrase":"array access","role":"concept","definition":"A rule for an array access, the construct the upstream grammar names array_access.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"array_access"},{"source":"native:solidity","name":"array_access"}],"formerNames":[]},
    {"id":"grammar.method-invocation","phrase":"method invocation","role":"concept","definition":"A rule for a method invocation, the construct the upstream grammar names method_invocation.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"method_invocation"}],"formerNames":[]},
    {"id":"grammar.method-reference","phrase":"method reference","role":"concept","definition":"A rule for a method reference, the construct the upstream grammar names method_reference.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"method_reference"}],"formerNames":[]},
    {"id":"grammar.wildcard-type-argument","phrase":"wildcard type argument","role":"concept","definition":"A rule for a wildcard type argument, the construct the upstream grammar names wildcard.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"wildcard"}],"formerNames":[]},
    {"id":"grammar.wildcard-bounds","phrase":"wildcard bounds","role":"concept","definition":"A rule for a wildcard bounds, the construct the upstream grammar names _wildcard_bounds.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"wildcard_bounds"}],"formerNames":[]},
    {"id":"grammar.array-dimensions","phrase":"array dimensions","role":"concept","definition":"A rule for an array dimensions, the construct the upstream grammar names dimensions.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"dimensions"}],"formerNames":[]},
    {"id":"grammar.switch-expression","phrase":"switch expression","role":"concept","definition":"A rule for a switch expression, the construct the upstream grammar names switch_expression.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"switch_expression"}],"formerNames":[]},
    {"id":"grammar.switch-block","phrase":"switch block","role":"concept","definition":"A rule for a switch block, the construct the upstream grammar names switch_block.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"switch_block"}],"formerNames":[]},
    {"id":"grammar.switch-block-statement-group","phrase":"switch block statement group","role":"concept","definition":"A rule for a switch block statement group, the construct the upstream grammar names switch_block_statement_group.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"switch_block_statement_group"}],"formerNames":[]},
    {"id":"grammar.switch-rule","phrase":"switch rule","role":"concept","definition":"A rule for a switch rule, the construct the upstream grammar names switch_rule.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"switch_rule"}],"formerNames":[]},
    {"id":"grammar.switch-label","phrase":"switch label","role":"concept","definition":"A rule for a switch label, the construct the upstream grammar names switch_label.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"switch_label"}],"formerNames":[]},
    {"id":"grammar.type-pattern","phrase":"type pattern","role":"concept","definition":"A rule for a type pattern, the construct the upstream grammar names type_pattern.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"type_pattern"}],"formerNames":[]},
    {"id":"grammar.record-pattern","phrase":"record pattern","role":"concept","definition":"A rule for a record pattern, the construct the upstream grammar names record_pattern.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"record_pattern"}],"formerNames":[]},
    {"id":"grammar.record-pattern-body","phrase":"record pattern body","role":"concept","definition":"A rule for a record pattern body, the construct the upstream grammar names record_pattern_body.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"record_pattern_body"}],"formerNames":[]},
    {"id":"grammar.record-pattern-component","phrase":"record pattern component","role":"concept","definition":"A rule for a record pattern component, the construct the upstream grammar names record_pattern_component.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"record_pattern_component"}],"formerNames":[]},
    {"id":"grammar.underscore-pattern","phrase":"underscore pattern","role":"concept","definition":"A rule for an underscore pattern, the construct the upstream grammar names underscore_pattern.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"underscore_pattern"}],"formerNames":[]},
    {"id":"grammar.guard","phrase":"guard","role":"concept","definition":"A rule for a guard, the construct the upstream grammar names guard.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"guard"}],"formerNames":[]},
    {"id":"grammar.assert-statement","phrase":"assert statement","role":"concept","definition":"A rule for an assert statement, the construct the upstream grammar names assert_statement.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"assert_statement"}],"formerNames":[]},
    {"id":"grammar.yield-statement","phrase":"yield statement","role":"concept","definition":"A rule for a yield statement, the construct the upstream grammar names yield_statement.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"yield_statement"}],"formerNames":[],"distinctFrom":[{"id":"grammar.return-statement","reason":"A Java yield statement gives the value of the switch expression it ends, while a return statement ends a function and gives its result."}]},
    {"id":"grammar.synchronized-statement","phrase":"synchronized statement","role":"concept","definition":"A rule for a synchronized statement, the construct the upstream grammar names synchronized_statement.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"synchronized_statement"}],"formerNames":[]},
    {"id":"grammar.catch-formal-parameter","phrase":"catch formal parameter","role":"concept","definition":"A rule for a catch formal parameter, the construct the upstream grammar names catch_formal_parameter.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"catch_formal_parameter"}],"formerNames":[]},
    {"id":"grammar.catch-type","phrase":"catch type","role":"concept","definition":"A rule for a catch type, the construct the upstream grammar names catch_type.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"catch_type"}],"formerNames":[],"distinctFrom":[{"id":"grammar.match-case","reason":"A Java catch type names the exception types a catch clause handles, while a match case is one branch of a match expression."}]},
    {"id":"grammar.try-with-resources-statement","phrase":"try with resources statement","role":"concept","definition":"A rule for a try with resources statement, the construct the upstream grammar names try_with_resources_statement.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"try_with_resources_statement"}],"formerNames":[]},
    {"id":"grammar.resource-specification","phrase":"resource specification","role":"concept","definition":"A rule for a resource specification, the construct the upstream grammar names resource_specification.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"resource_specification"}],"formerNames":[]},
    {"id":"grammar.resource","phrase":"resource","role":"concept","definition":"A rule for a resource, the construct the upstream grammar names resource.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"resource"}],"formerNames":[]},
    {"id":"grammar.enhanced-for-statement","phrase":"enhanced for statement","role":"concept","definition":"A rule for an enhanced for statement, the construct the upstream grammar names enhanced_for_statement.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"enhanced_for_statement"}],"formerNames":[]},
    {"id":"grammar.annotation-choice","phrase":"annotation choice","role":"concept","definition":"A rule for an annotation choice, the construct the upstream grammar names _annotation.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"annotation_choice"}],"formerNames":[]},
    {"id":"grammar.marker-annotation","phrase":"marker annotation","role":"concept","definition":"A rule for a marker annotation, the construct the upstream grammar names marker_annotation.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"marker_annotation"}],"formerNames":[]},
    {"id":"grammar.annotation","phrase":"annotation","role":"concept","definition":"A rule for an annotation, the construct the upstream grammar names annotation.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"annotation"}],"formerNames":[],"distinctFrom":[{"id":"grammar.notation","reason":"A Java annotation attaches metadata to a declaration or a type (The Java Language Specification, section 9.7), while a notation declares new syntax for terms."}]},
    {"id":"grammar.annotation-argument-list","phrase":"annotation argument list","role":"concept","definition":"A rule for an annotation argument list, the construct the upstream grammar names annotation_argument_list.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"annotation_argument_list"}],"formerNames":[]},
    {"id":"grammar.element-value-pair","phrase":"element value pair","role":"concept","definition":"A rule for an element value pair, the construct the upstream grammar names element_value_pair.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"element_value_pair"}],"formerNames":[]},
    {"id":"grammar.element-value","phrase":"element value","role":"concept","definition":"A rule for an element value, the construct the upstream grammar names _element_value.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"element_value"}],"formerNames":[]},
    {"id":"grammar.element-value-array-initializer","phrase":"element value array initializer","role":"concept","definition":"A rule for an element value array initializer, the construct the upstream grammar names element_value_array_initializer.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"element_value_array_initializer"}],"formerNames":[]},
    {"id":"grammar.module-declaration","phrase":"module declaration","role":"concept","definition":"A rule for a module declaration, the construct the upstream grammar names module_declaration.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"module_declaration"}],"formerNames":[]},
    {"id":"grammar.module-body","phrase":"module body","role":"concept","definition":"A rule for a module body, the construct the upstream grammar names module_body.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"module_body"}],"formerNames":[]},
    {"id":"grammar.module-directive","phrase":"module directive","role":"concept","definition":"A rule for a module directive, the construct the upstream grammar names module_directive.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"module_directive"}],"formerNames":[]},
    {"id":"grammar.requires-module-directive","phrase":"requires module directive","role":"concept","definition":"A rule for a requires module directive, the construct the upstream grammar names requires_module_directive.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"requires_module_directive"}],"formerNames":[]},
    {"id":"grammar.requires-modifier","phrase":"requires modifier","role":"concept","definition":"A rule for a requires modifier, the construct the upstream grammar names requires_modifier.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"requires_modifier"}],"formerNames":[]},
    {"id":"grammar.exports-module-directive","phrase":"exports module directive","role":"concept","definition":"A rule for an exports module directive, the construct the upstream grammar names exports_module_directive.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"exports_module_directive"}],"formerNames":[]},
    {"id":"grammar.opens-module-directive","phrase":"opens module directive","role":"concept","definition":"A rule for an opens module directive, the construct the upstream grammar names opens_module_directive.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"opens_module_directive"}],"formerNames":[]},
    {"id":"grammar.uses-module-directive","phrase":"uses module directive","role":"concept","definition":"A rule for an uses module directive, the construct the upstream grammar names uses_module_directive.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"uses_module_directive"}],"formerNames":[]},
    {"id":"grammar.provides-module-directive","phrase":"provides module directive","role":"concept","definition":"A rule for a provides module directive, the construct the upstream grammar names provides_module_directive.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"provides_module_directive"}],"formerNames":[]},
    {"id":"grammar.package-declaration","phrase":"package declaration","role":"concept","definition":"A rule for a package declaration, the construct the upstream grammar names package_declaration.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"package_declaration"}],"formerNames":[]},
    {"id":"grammar.import-declaration","phrase":"import declaration","role":"concept","definition":"A rule for an import declaration, the construct the upstream grammar names import_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"import_declaration"},{"source":"native:java","name":"import_declaration"},{"source":"native:proto","name":"import"},{"source":"native:solidity","name":"import_declaration"}],"formerNames":[]},
    {"id":"grammar.asterisk","phrase":"asterisk","role":"concept","definition":"A rule for an asterisk, the construct the upstream grammar names asterisk.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"asterisk"}],"formerNames":[]},
    {"id":"grammar.enumeration-body-declarations","phrase":"enumeration body declarations","role":"concept","definition":"A rule for an enumeration body declarations, the construct the upstream grammar names enum_body_declarations.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"enumeration_body_declarations"}],"formerNames":[]},
    {"id":"grammar.enumeration-constant","phrase":"enumeration constant","role":"concept","definition":"A rule for an enumeration constant, the construct the upstream grammar names enum_constant.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"enumeration_constant"}],"formerNames":[]},
    {"id":"grammar.modifier-list","phrase":"modifier list","role":"concept","definition":"A rule for a modifier list, the construct the upstream grammar names modifiers.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"modifiers"}],"formerNames":[]},
    {"id":"grammar.type-bound","phrase":"type bound","role":"concept","definition":"A rule for a type bound, the construct the upstream grammar names type_bound.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"type_bound"}],"formerNames":[]},
    {"id":"grammar.superclass","phrase":"superclass","role":"concept","definition":"A rule for a superclass, the construct the upstream grammar names superclass.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"superclass"}],"formerNames":[]},
    {"id":"grammar.super-interfaces","phrase":"super interfaces","role":"concept","definition":"A rule for a super interfaces, the construct the upstream grammar names super_interfaces.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"super_interfaces"}],"formerNames":[]},
    {"id":"grammar.type-list","phrase":"type list","role":"concept","definition":"A rule for a type list, the construct the upstream grammar names type_list.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"type_list"}],"formerNames":[]},
    {"id":"grammar.permits","phrase":"permits","role":"concept","definition":"A rule for a permits, the construct the upstream grammar names permits.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"permits"}],"formerNames":[]},
    {"id":"grammar.class-body-declaration","phrase":"class body declaration","role":"concept","definition":"A rule for a class body declaration, the construct the upstream grammar names _class_body_declaration.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"class_body_declaration"}],"formerNames":[]},
    {"id":"grammar.static-initializer","phrase":"static initializer","role":"concept","definition":"A rule for a static initializer, the construct the upstream grammar names static_initializer.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"static_initializer"}],"formerNames":[]},
    {"id":"grammar.constructor-declaration","phrase":"constructor declaration","role":"concept","definition":"A rule for a constructor declaration, the construct the upstream grammar names constructor_declaration.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"constructor_declaration"}],"formerNames":[]},
    {"id":"grammar.constructor-declarator","phrase":"constructor declarator","role":"concept","definition":"A rule for a constructor declarator, the construct the upstream grammar names _constructor_declarator.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"constructor_declarator"}],"formerNames":[]},
    {"id":"grammar.constructor-body","phrase":"constructor body","role":"concept","definition":"A rule for a constructor body, the construct the upstream grammar names constructor_body.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"constructor_body"}],"formerNames":[]},
    {"id":"grammar.explicit-constructor-invocation","phrase":"explicit constructor invocation","role":"concept","definition":"A rule for an explicit constructor invocation, the construct the upstream grammar names explicit_constructor_invocation.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"explicit_constructor_invocation"}],"formerNames":[]},
    {"id":"grammar.record-declaration","phrase":"record declaration","role":"concept","definition":"A rule for a record declaration, the construct the upstream grammar names record_declaration.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"record_declaration"}],"formerNames":[]},
    {"id":"grammar.annotation-type-declaration","phrase":"annotation type declaration","role":"concept","definition":"A rule for an annotation type declaration, the construct the upstream grammar names annotation_type_declaration.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"annotation_type_declaration"}],"formerNames":[]},
    {"id":"grammar.annotation-type-body","phrase":"annotation type body","role":"concept","definition":"A rule for an annotation type body, the construct the upstream grammar names annotation_type_body.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"annotation_type_body"}],"formerNames":[]},
    {"id":"grammar.annotation-type-element-declaration","phrase":"annotation type element declaration","role":"concept","definition":"A rule for an annotation type element declaration, the construct the upstream grammar names annotation_type_element_declaration.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"annotation_type_element_declaration"}],"formerNames":[]},
    {"id":"grammar.default-value","phrase":"default value","role":"concept","definition":"A rule for a default value, the construct the upstream grammar names _default_value.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"default_value"},{"source":"native:java","name":"default_value"}],"formerNames":[]},
    {"id":"grammar.extends-interfaces","phrase":"extends interfaces","role":"concept","definition":"A rule for an extends interfaces, the construct the upstream grammar names extends_interfaces.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"extends_interfaces"}],"formerNames":[]},
    {"id":"grammar.interface-body","phrase":"interface body","role":"concept","definition":"A rule for an interface body, the construct the upstream grammar names interface_body.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"interface_body"}],"formerNames":[]},
    {"id":"grammar.constant-declaration","phrase":"constant declaration","role":"concept","definition":"A rule for a constant declaration, the construct the upstream grammar names constant_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"constant_declaration"},{"source":"native:java","name":"constant_declaration"}],"formerNames":[]},
    {"id":"grammar.variable-declarator-list","phrase":"variable declarator list","role":"concept","definition":"A rule for a variable declarator list, the construct the upstream grammar names _variable_declarator_list.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"variable_declarator_list"}],"formerNames":[]},
    {"id":"grammar.variable-declarator-identifier","phrase":"variable declarator identifier","role":"concept","definition":"A rule for a variable declarator identifier, the construct the upstream grammar names _variable_declarator_id.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"variable_declarator_identifier"}],"formerNames":[]},
    {"id":"grammar.variable-initializer","phrase":"variable initializer","role":"concept","definition":"A rule for a variable initializer, the construct the upstream grammar names _variable_initializer.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"variable_initializer"}],"formerNames":[]},
    {"id":"grammar.array-initializer","phrase":"array initializer","role":"concept","definition":"A rule for an array initializer, the construct the upstream grammar names array_initializer.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"array_initializer"}],"formerNames":[]},
    {"id":"grammar.unannotated-type","phrase":"unannotated type","role":"concept","definition":"A rule for an unannotated type, the construct the upstream grammar names _unannotated_type.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"unannotated_type"}],"formerNames":[]},
    {"id":"grammar.simple-type","phrase":"simple type","role":"concept","definition":"A rule for a simple type, the construct the upstream grammar names _simple_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"simple_type"},{"source":"native:java","name":"simple_type"}],"formerNames":[]},
    {"id":"grammar.annotated-type","phrase":"annotated type","role":"concept","definition":"A rule for an annotated type, the construct the upstream grammar names annotated_type.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"annotated_type"}],"formerNames":[]},
    {"id":"grammar.integral-type","phrase":"integral type","role":"concept","definition":"A rule for an integral type, the construct the upstream grammar names integral_type.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"integral_type"}],"formerNames":[]},
    {"id":"grammar.floating-point-type","phrase":"floating point type","role":"concept","definition":"A rule for a floating point type, the construct the upstream grammar names floating_point_type.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"floating_point_type"}],"formerNames":[]},
    {"id":"grammar.boolean-type","phrase":"boolean type","role":"concept","definition":"A rule for a boolean type, the construct the upstream grammar names boolean_type.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"boolean_type"}],"formerNames":[]},
    {"id":"grammar.void-type","phrase":"void type","role":"concept","definition":"A rule for a void type, the construct the upstream grammar names void_type.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"void_type"}],"formerNames":[]},
    {"id":"grammar.method-header","phrase":"method header","role":"concept","definition":"A rule for a method header, the construct the upstream grammar names _method_header.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"method_header"}],"formerNames":[]},
    {"id":"grammar.method-declarator","phrase":"method declarator","role":"concept","definition":"A rule for a method declarator, the construct the upstream grammar names _method_declarator.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"method_declarator"}],"formerNames":[]},
    {"id":"grammar.receiver-parameter","phrase":"receiver parameter","role":"concept","definition":"A rule for a receiver parameter, the construct the upstream grammar names receiver_parameter.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"receiver_parameter"}],"formerNames":[]},
    {"id":"grammar.spread-parameter","phrase":"spread parameter","role":"concept","definition":"A rule for a spread parameter, the construct the upstream grammar names spread_parameter.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"spread_parameter"}],"formerNames":[]},
    {"id":"grammar.throws","phrase":"throws","role":"concept","definition":"A rule for a throws, the construct the upstream grammar names throws.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"throws"}],"formerNames":[]},
    {"id":"grammar.local-variable-declaration","phrase":"local variable declaration","role":"concept","definition":"A rule for a local variable declaration, the construct the upstream grammar names local_variable_declaration.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"local_variable_declaration"}],"formerNames":[]},
    {"id":"grammar.method-declaration","phrase":"method declaration","role":"concept","definition":"A rule for a method declaration, the construct the upstream grammar names method_declaration.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"method_declaration"},{"source":"native:java","name":"method_declaration"}],"formerNames":[]},
    {"id":"grammar.compact-constructor-declaration","phrase":"compact constructor declaration","role":"concept","definition":"A rule for a compact constructor declaration, the construct the upstream grammar names compact_constructor_declaration.","constraints":["Only the native Java grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:java","name":"compact_constructor_declaration"}],"formerNames":[]},
    {"id":"grammar.top-level-declaration","phrase":"top level declaration","role":"concept","definition":"A rule for a top level declaration, the construct the upstream grammar names _top_level_declaration.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"top_level_declaration"}],"formerNames":[]},
    {"id":"grammar.package-clause","phrase":"package clause","role":"concept","definition":"A rule for a package clause, the construct the upstream grammar names package_clause.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"package_clause"},{"source":"native:proto","name":"package"}],"formerNames":[]},
    {"id":"grammar.import-specification","phrase":"import specification","role":"concept","definition":"A rule for an import specification, the construct the upstream grammar names import_spec.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"import_specification"}],"formerNames":[]},
    {"id":"grammar.dot","phrase":"dot","role":"concept","definition":"A rule for a dot, the construct the upstream grammar names dot.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"dot"}],"formerNames":[]},
    {"id":"grammar.blank-identifier","phrase":"blank identifier","role":"concept","definition":"A rule for a blank identifier, the construct the upstream grammar names blank_identifier.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"blank_identifier"}],"formerNames":[]},
    {"id":"grammar.import-specification-list","phrase":"import specification list","role":"concept","definition":"A rule for an import specification list, the construct the upstream grammar names import_spec_list.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"import_specification_list"}],"formerNames":[]},
    {"id":"grammar.constant-specification","phrase":"constant specification","role":"concept","definition":"A rule for a constant specification, the construct the upstream grammar names const_spec.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"constant_specification"}],"formerNames":[]},
    {"id":"grammar.variable-specification","phrase":"variable specification","role":"concept","definition":"A rule for a variable specification, the construct the upstream grammar names var_spec.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"variable_specification"}],"formerNames":[]},
    {"id":"grammar.variable-specification-list","phrase":"variable specification list","role":"concept","definition":"A rule for a variable specification list, the construct the upstream grammar names var_spec_list.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"variable_specification_list"}],"formerNames":[]},
    {"id":"grammar.type-parameter-declaration","phrase":"type parameter declaration","role":"concept","definition":"A rule for a type parameter declaration, the construct the upstream grammar names type_parameter_declaration.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_parameter_declaration"}],"formerNames":[]},
    {"id":"grammar.variadic-parameter-declaration","phrase":"variadic parameter declaration","role":"concept","definition":"A rule for a variadic parameter declaration, the construct the upstream grammar names variadic_parameter_declaration.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"variadic_parameter_declaration"}],"formerNames":[]},
    {"id":"grammar.type-alias","phrase":"type alias","role":"concept","definition":"A rule for a type alias, the construct the upstream grammar names type_alias.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_alias"}],"formerNames":[]},
    {"id":"grammar.type-declaration","phrase":"type declaration","role":"concept","definition":"A rule for a type declaration, the construct the upstream grammar names type_declaration.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_declaration"}],"formerNames":[]},
    {"id":"grammar.field-name-list","phrase":"field name list","role":"concept","definition":"A rule for a field name list, the construct the upstream grammar names field_name_list.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"field_name_list"}],"formerNames":[]},
    {"id":"grammar.expression-list","phrase":"expression list","role":"concept","definition":"A rule for an expression list, the construct the upstream grammar names expression_list.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"expression_list"}],"formerNames":[]},
    {"id":"grammar.implicit-length-array-type","phrase":"implicit length array type","role":"concept","definition":"A rule for an implicit length array type, the construct the upstream grammar names implicit_length_array_type.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"implicit_length_array_type"}],"formerNames":[]},
    {"id":"grammar.slice-type","phrase":"slice type","role":"concept","definition":"A rule for a slice type, the construct the upstream grammar names slice_type.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"slice_type"}],"formerNames":[]},
    {"id":"grammar.structure-type","phrase":"structure type","role":"concept","definition":"A rule for a structure type, the construct the upstream grammar names struct_type.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"structure_type"}],"formerNames":[]},
    {"id":"grammar.negated-type","phrase":"negated type","role":"concept","definition":"A rule for a negated type, the construct the upstream grammar names negated_type.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"negated_type"}],"formerNames":[]},
    {"id":"grammar.interface-type","phrase":"interface type","role":"concept","definition":"A rule for an interface type, the construct the upstream grammar names interface_type.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"interface_type"}],"formerNames":[]},
    {"id":"grammar.interface-element","phrase":"interface element","role":"concept","definition":"A rule for an interface element, the construct the upstream grammar names _interface_elem.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"interface_element"}],"formerNames":[]},
    {"id":"grammar.method-element","phrase":"method element","role":"concept","definition":"A rule for a method element, the construct the upstream grammar names method_elem.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"method_element"}],"formerNames":[]},
    {"id":"grammar.type-element","phrase":"type element","role":"concept","definition":"A rule for a type element, the construct the upstream grammar names type_elem.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_element"}],"formerNames":[]},
    {"id":"grammar.map-type","phrase":"map type","role":"concept","definition":"A rule for a map type, the construct the upstream grammar names map_type.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"map_type"},{"source":"native:solidity","name":"mapping"}],"formerNames":[],"distinctFrom":[{"id":"grammar.function-type","reason":"A Go map type map[K]V is the type of the hash tables from keys of K to values of V, while a function type is the type of the functions with given parameters and results."}]},
    {"id":"grammar.channel-type","phrase":"channel type","role":"concept","definition":"A rule for a channel type, the construct the upstream grammar names channel_type.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"channel_type"}],"formerNames":[]},
    {"id":"grammar.statement-list","phrase":"statement list","role":"concept","definition":"A rule for a statement list, the construct the upstream grammar names statement_list.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"statement_list"}],"formerNames":[],"distinctFrom":[{"id":"grammar.argument-list","reason":"A Go statement list is the statements of a block or a case clause in order, while an argument list gives the values a call passes."}]},
    {"id":"grammar.simple-statement","phrase":"simple statement","role":"concept","definition":"A rule for a simple statement, the construct the upstream grammar names _simple_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"simple_statement"}],"formerNames":[]},
    {"id":"grammar.send-statement","phrase":"send statement","role":"concept","definition":"A rule for a send statement, the construct the upstream grammar names send_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"send_statement"}],"formerNames":[]},
    {"id":"grammar.receive-statement","phrase":"receive statement","role":"concept","definition":"A rule for a receive statement, the construct the upstream grammar names receive_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"receive_statement"}],"formerNames":[]},
    {"id":"grammar.inc-statement","phrase":"inc statement","role":"concept","definition":"A rule for an inc statement, the construct the upstream grammar names inc_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"inc_statement"}],"formerNames":[]},
    {"id":"grammar.dec-statement","phrase":"dec statement","role":"concept","definition":"A rule for a dec statement, the construct the upstream grammar names dec_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"dec_statement"}],"formerNames":[]},
    {"id":"grammar.assignment-statement","phrase":"assignment statement","role":"concept","definition":"A rule for an assignment statement, the construct the upstream grammar names assignment_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"assignment_statement"}],"formerNames":[]},
    {"id":"grammar.short-variable-declaration","phrase":"short variable declaration","role":"concept","definition":"A rule for a short variable declaration, the construct the upstream grammar names short_var_declaration.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"short_variable_declaration"}],"formerNames":[]},
    {"id":"grammar.empty-labeled-statement","phrase":"empty labeled statement","role":"concept","definition":"A rule for an empty labeled statement, the construct the upstream grammar names empty_labeled_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"empty_labeled_statement"}],"formerNames":[]},
    {"id":"grammar.fall-through-statement","phrase":"fall through statement","role":"concept","definition":"A rule for a fall through statement, the construct the upstream grammar names fallthrough_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"fall_through_statement"}],"formerNames":[]},
    {"id":"grammar.go-statement","phrase":"go statement","role":"concept","definition":"A rule for a go statement, the construct the upstream grammar names go_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"go_statement"}],"formerNames":[]},
    {"id":"grammar.defer-statement","phrase":"defer statement","role":"concept","definition":"A rule for a defer statement, the construct the upstream grammar names defer_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"defer_statement"}],"formerNames":[]},
    {"id":"grammar.for-clause","phrase":"for clause","role":"concept","definition":"A rule for a for clause, the construct the upstream grammar names for_clause.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"for_clause"}],"formerNames":[]},
    {"id":"grammar.range-clause","phrase":"range clause","role":"concept","definition":"A rule for a range clause, the construct the upstream grammar names range_clause.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"range_clause"}],"formerNames":[]},
    {"id":"grammar.expression-switch-statement","phrase":"expression switch statement","role":"concept","definition":"A rule for an expression switch statement, the construct the upstream grammar names expression_switch_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"expression_switch_statement"}],"formerNames":[]},
    {"id":"grammar.expression-case","phrase":"expression case","role":"concept","definition":"A rule for an expression case, the construct the upstream grammar names expression_case.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"expression_case"}],"formerNames":[]},
    {"id":"grammar.default-case","phrase":"default case","role":"concept","definition":"A rule for a default case, the construct the upstream grammar names default_case.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"default_case"}],"formerNames":[],"distinctFrom":[{"id":"grammar.default-type","reason":"A Go default case is the branch of a switch or select statement taken when no other case matches, while a default type is the type a TypeScript type parameter takes when none is given."}]},
    {"id":"grammar.type-switch-statement","phrase":"type switch statement","role":"concept","definition":"A rule for a type switch statement, the construct the upstream grammar names type_switch_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_switch_statement"}],"formerNames":[]},
    {"id":"grammar.type-switch-header","phrase":"type switch header","role":"concept","definition":"A rule for a type switch header, the construct the upstream grammar names _type_switch_header.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_switch_header"}],"formerNames":[]},
    {"id":"grammar.type-case","phrase":"type case","role":"concept","definition":"A rule for a type case, the construct the upstream grammar names type_case.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_case"}],"formerNames":[]},
    {"id":"grammar.select-statement","phrase":"select statement","role":"concept","definition":"A rule for a select statement, the construct the upstream grammar names select_statement.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"select_statement"}],"formerNames":[]},
    {"id":"grammar.communication-case","phrase":"communication case","role":"concept","definition":"A rule for a communication case, the construct the upstream grammar names communication_case.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"communication_case"}],"formerNames":[]},
    {"id":"grammar.variadic-argument","phrase":"variadic argument","role":"concept","definition":"A rule for a variadic argument, the construct the upstream grammar names variadic_argument.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"variadic_argument"}],"formerNames":[],"distinctFrom":[{"id":"grammar.variadic-parameter","reason":"A Go variadic argument xs... passes the elements of a slice as the final arguments of a call, while a variadic parameter declares the final parameter that takes any number of them."}]},
    {"id":"grammar.special-argument-list","phrase":"special argument list","role":"concept","definition":"A rule for a special argument list, the construct the upstream grammar names special_argument_list.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"special_argument_list"}],"formerNames":[]},
    {"id":"grammar.selector-expression","phrase":"selector expression","role":"concept","definition":"A rule for a selector expression, the construct the upstream grammar names selector_expression.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"selector_expression"}],"formerNames":[]},
    {"id":"grammar.slice-expression","phrase":"slice expression","role":"concept","definition":"A rule for a slice expression, the construct the upstream grammar names slice_expression.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"slice_expression"}],"formerNames":[]},
    {"id":"grammar.type-assertion-expression","phrase":"type assertion expression","role":"concept","definition":"A rule for a type assertion expression, the construct the upstream grammar names type_assertion_expression.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_assertion_expression"}],"formerNames":[]},
    {"id":"grammar.type-conversion-expression","phrase":"type conversion expression","role":"concept","definition":"A rule for a type conversion expression, the construct the upstream grammar names type_conversion_expression.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_conversion_expression"}],"formerNames":[]},
    {"id":"grammar.type-instantiation-expression","phrase":"type instantiation expression","role":"concept","definition":"A rule for a type instantiation expression, the construct the upstream grammar names type_instantiation_expression.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"type_instantiation_expression"}],"formerNames":[]},
    {"id":"grammar.composite-literal","phrase":"composite literal","role":"concept","definition":"A rule for a composite literal, the construct the upstream grammar names composite_literal.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"composite_literal"}],"formerNames":[]},
    {"id":"grammar.literal-value","phrase":"literal value","role":"concept","definition":"A rule for a literal value, the construct the upstream grammar names literal_value.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"literal_value"}],"formerNames":[]},
    {"id":"grammar.literal-element","phrase":"literal element","role":"concept","definition":"A rule for a literal element, the construct the upstream grammar names literal_element.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"literal_element"}],"formerNames":[]},
    {"id":"grammar.keyed-element","phrase":"keyed element","role":"concept","definition":"A rule for a keyed element, the construct the upstream grammar names keyed_element.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"keyed_element"}],"formerNames":[]},
    {"id":"grammar.function-literal","phrase":"function literal","role":"concept","definition":"A rule for a function literal, the construct the upstream grammar names func_literal.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"function_literal"}],"formerNames":[]},
    {"id":"grammar.package-identifier-alias","phrase":"package identifier alias","role":"concept","definition":"A rule for a package identifier alias, the construct the upstream grammar names _package_identifier.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"package_identifier_alias"}],"formerNames":[]},
    {"id":"grammar.interpreted-string-literal","phrase":"interpreted string literal","role":"concept","definition":"A rule for an interpreted string literal, the construct the upstream grammar names interpreted_string_literal.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"interpreted_string_literal"}],"formerNames":[]},
    {"id":"grammar.float-literal","phrase":"float literal","role":"concept","definition":"A rule for a float literal, the construct the upstream grammar names float_literal.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"float_literal"},{"source":"native:graphql","name":"float_value"},{"source":"native:proto","name":"float_literal"}],"formerNames":[]},
    {"id":"grammar.imaginary-literal","phrase":"imaginary literal","role":"concept","definition":"A rule for an imaginary literal, the construct the upstream grammar names imaginary_literal.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"imaginary_literal"}],"formerNames":[]},
    {"id":"grammar.rune-literal","phrase":"rune literal","role":"concept","definition":"A rule for a rune literal, the construct the upstream grammar names rune_literal.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"rune_literal"}],"formerNames":[]},
    {"id":"grammar.iota","phrase":"iota","role":"concept","definition":"A rule for an iota, the construct the upstream grammar names iota.","constraints":["Only the native Go grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:go","name":"iota"}],"formerNames":[]},
    {"id":"grammar.alternation","phrase":"alternation","role":"concept","definition":"A rule for an alternation, the construct the upstream grammar names alternation.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"alternation"}],"formerNames":[]},
    {"id":"grammar.start-assertion","phrase":"start assertion","role":"concept","definition":"A rule for a start assertion, the construct the upstream grammar names start_assertion.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"start_assertion"}],"formerNames":[]},
    {"id":"grammar.end-assertion","phrase":"end assertion","role":"concept","definition":"A rule for an end assertion, the construct the upstream grammar names end_assertion.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"end_assertion"}],"formerNames":[]},
    {"id":"grammar.boundary-assertion","phrase":"boundary assertion","role":"concept","definition":"A rule for a boundary assertion, the construct the upstream grammar names boundary_assertion.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"boundary_assertion"}],"formerNames":[]},
    {"id":"grammar.non-boundary-assertion","phrase":"non boundary assertion","role":"concept","definition":"A rule for a non boundary assertion, the construct the upstream grammar names non_boundary_assertion.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"non_boundary_assertion"}],"formerNames":[]},
    {"id":"grammar.lookaround-assertion","phrase":"lookaround assertion","role":"concept","definition":"A rule for a lookaround assertion, the construct the upstream grammar names lookaround_assertion.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"lookaround_assertion"}],"formerNames":[]},
    {"id":"grammar.lookahead-assertion","phrase":"lookahead assertion","role":"concept","definition":"A rule for a lookahead assertion, the construct the upstream grammar names _lookahead_assertion.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"lookahead_assertion"}],"formerNames":[]},
    {"id":"grammar.lookbehind-assertion","phrase":"lookbehind assertion","role":"concept","definition":"A rule for a lookbehind assertion, the construct the upstream grammar names _lookbehind_assertion.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"lookbehind_assertion"}],"formerNames":[]},
    {"id":"grammar.pattern-character","phrase":"pattern character","role":"concept","definition":"A rule for a pattern character, the construct the upstream grammar names pattern_character.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"pattern_character"}],"formerNames":[]},
    {"id":"grammar.posix-character-class","phrase":"posix character class","role":"concept","definition":"A rule for a posix character class, the construct the upstream grammar names posix_character_class.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"posix_character_class"}],"formerNames":[]},
    {"id":"grammar.posix-class-name","phrase":"posix class name","role":"concept","definition":"A rule for a posix class name, the construct the upstream grammar names posix_class_name.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"posix_class_name"}],"formerNames":[]},
    {"id":"grammar.class-range","phrase":"class range","role":"concept","definition":"A rule for a class range, the construct the upstream grammar names class_range.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"class_range"}],"formerNames":[]},
    {"id":"grammar.class-atom","phrase":"class atom","role":"concept","definition":"A rule for a class atom, the construct the upstream grammar names _class_atom.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"class_atom"}],"formerNames":[]},
    {"id":"grammar.class-character","phrase":"class character","role":"concept","definition":"A rule for a class character, the construct the upstream grammar names class_character.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"class_character"}],"formerNames":[]},
    {"id":"grammar.anonymous-capturing-group","phrase":"anonymous capturing group","role":"concept","definition":"A rule for an anonymous capturing group, the construct the upstream grammar names anonymous_capturing_group.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"anonymous_capturing_group"}],"formerNames":[]},
    {"id":"grammar.named-capturing-group","phrase":"named capturing group","role":"concept","definition":"A rule for a named capturing group, the construct the upstream grammar names named_capturing_group.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"named_capturing_group"}],"formerNames":[]},
    {"id":"grammar.non-capturing-group","phrase":"non capturing group","role":"concept","definition":"A rule for a non capturing group, the construct the upstream grammar names non_capturing_group.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"non_capturing_group"}],"formerNames":[]},
    {"id":"grammar.inline-flags-group","phrase":"inline flags group","role":"concept","definition":"A rule for an inline flags group, the construct the upstream grammar names inline_flags_group.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"inline_flags_group"}],"formerNames":[]},
    {"id":"grammar.flags","phrase":"flags","role":"concept","definition":"A rule for a flags, the construct the upstream grammar names flags.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"flags"}],"formerNames":[]},
    {"id":"grammar.count-quantifier","phrase":"count quantifier","role":"concept","definition":"A rule for a count quantifier, the construct the upstream grammar names count_quantifier.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"count_quantifier"}],"formerNames":[]},
    {"id":"grammar.backreference-escape","phrase":"backreference escape","role":"concept","definition":"A rule for a backreference escape, the construct the upstream grammar names backreference_escape.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"backreference_escape"}],"formerNames":[]},
    {"id":"grammar.named-group-backreference","phrase":"named group backreference","role":"concept","definition":"A rule for a named group backreference, the construct the upstream grammar names named_group_backreference.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"named_group_backreference"}],"formerNames":[]},
    {"id":"grammar.decimal-escape","phrase":"decimal escape","role":"concept","definition":"A rule for a decimal escape, the construct the upstream grammar names decimal_escape.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"decimal_escape"}],"formerNames":[]},
    {"id":"grammar.character-class-escape","phrase":"character class escape","role":"concept","definition":"A rule for a character class escape, the construct the upstream grammar names character_class_escape.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"character_class_escape"}],"formerNames":[]},
    {"id":"grammar.unicode-character-escape","phrase":"unicode character escape","role":"concept","definition":"A rule for an unicode character escape, the construct the upstream grammar names unicode_character_escape.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"unicode_character_escape"}],"formerNames":[]},
    {"id":"grammar.unicode-property-value-expression","phrase":"unicode property value expression","role":"concept","definition":"A rule for an unicode property value expression, the construct the upstream grammar names unicode_property_value_expression.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"unicode_property_value_expression"}],"formerNames":[]},
    {"id":"grammar.unicode-property","phrase":"unicode property","role":"concept","definition":"A rule for an unicode property, the construct the upstream grammar names unicode_property.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"unicode_property"}],"formerNames":[]},
    {"id":"grammar.character-escape","phrase":"character escape","role":"concept","definition":"A rule for a character escape, the construct the upstream grammar names _character_escape.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"character_escape"}],"formerNames":[]},
    {"id":"grammar.control-escape","phrase":"control escape","role":"concept","definition":"A rule for a control escape, the construct the upstream grammar names control_escape.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"control_escape"}],"formerNames":[]},
    {"id":"grammar.control-letter-escape","phrase":"control letter escape","role":"concept","definition":"A rule for a control letter escape, the construct the upstream grammar names control_letter_escape.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"control_letter_escape"}],"formerNames":[]},
    {"id":"grammar.identity-escape","phrase":"identity escape","role":"concept","definition":"A rule for an identity escape, the construct the upstream grammar names identity_escape.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"identity_escape"}],"formerNames":[]},
    {"id":"grammar.group-name","phrase":"group name","role":"concept","definition":"A rule for a group name, the construct the upstream grammar names group_name.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"group_name"}],"formerNames":[]},
    {"id":"grammar.decimal-digits","phrase":"decimal digits","role":"concept","definition":"A rule for a decimal digits, the construct the upstream grammar names decimal_digits.","constraints":["Only the native Regex grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:regex","name":"decimal_digits"}],"formerNames":[]},
    {"id":"grammar.executable-definition","phrase":"executable definition","role":"concept","definition":"A rule for an executable definition, the construct the upstream grammar names executable_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"executable_definition"}],"formerNames":[]},
    {"id":"grammar.type-system-definition","phrase":"type system definition","role":"concept","definition":"A rule for a type system definition, the construct the upstream grammar names type_system_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"type_system_definition"}],"formerNames":[]},
    {"id":"grammar.type-system-extension","phrase":"type system extension","role":"concept","definition":"A rule for a type system extension, the construct the upstream grammar names type_system_extension.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"type_system_extension"}],"formerNames":[]},
    {"id":"grammar.schema-definition","phrase":"schema definition","role":"concept","definition":"A rule for a schema definition, the construct the upstream grammar names schema_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"schema_definition"}],"formerNames":[]},
    {"id":"grammar.schema-extension","phrase":"schema extension","role":"concept","definition":"A rule for a schema extension, the construct the upstream grammar names schema_extension.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"schema_extension"}],"formerNames":[]},
    {"id":"grammar.type-extension","phrase":"type extension","role":"concept","definition":"A rule for a type extension, the construct the upstream grammar names type_extension.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"type_extension"}],"formerNames":[]},
    {"id":"grammar.scalar-type-extension","phrase":"scalar type extension","role":"concept","definition":"A rule for a scalar type extension, the construct the upstream grammar names scalar_type_extension.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"scalar_type_extension"}],"formerNames":[]},
    {"id":"grammar.object-type-extension","phrase":"object type extension","role":"concept","definition":"A rule for an object type extension, the construct the upstream grammar names object_type_extension.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"object_type_extension"}],"formerNames":[]},
    {"id":"grammar.interface-type-extension","phrase":"interface type extension","role":"concept","definition":"A rule for an interface type extension, the construct the upstream grammar names interface_type_extension.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"interface_type_extension"}],"formerNames":[]},
    {"id":"grammar.union-type-extension","phrase":"union type extension","role":"concept","definition":"A rule for an union type extension, the construct the upstream grammar names union_type_extension.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"union_type_extension"}],"formerNames":[]},
    {"id":"grammar.enumeration-type-extension","phrase":"enumeration type extension","role":"concept","definition":"A rule for an enumeration type extension, the construct the upstream grammar names enum_type_extension.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"enumeration_type_extension"}],"formerNames":[]},
    {"id":"grammar.input-object-type-extension","phrase":"input object type extension","role":"concept","definition":"A rule for an input object type extension, the construct the upstream grammar names input_object_type_extension.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"input_object_type_extension"}],"formerNames":[]},
    {"id":"grammar.input-fields-definition","phrase":"input fields definition","role":"concept","definition":"A rule for an input fields definition, the construct the upstream grammar names input_fields_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"input_fields_definition"}],"formerNames":[]},
    {"id":"grammar.enumeration-value-definition-list","phrase":"enumeration value definition list","role":"concept","definition":"A rule for an enumeration value definition list, the construct the upstream grammar names enum_values_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"enumeration_values_definition"}],"formerNames":[]},
    {"id":"grammar.enumeration-value-definition","phrase":"enumeration value definition","role":"concept","definition":"A rule for an enumeration value definition, the construct the upstream grammar names enum_value_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"enumeration_value_definition"}],"formerNames":[]},
    {"id":"grammar.implements-interfaces","phrase":"implements interfaces","role":"concept","definition":"A rule for an implements interfaces, the construct the upstream grammar names implements_interfaces.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"implements_interfaces"}],"formerNames":[]},
    {"id":"grammar.field-definition-list","phrase":"field definition list","role":"concept","definition":"A rule for a field definition list, the construct the upstream grammar names fields_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"fields_definition"}],"formerNames":[]},
    {"id":"grammar.arguments-definition","phrase":"arguments definition","role":"concept","definition":"A rule for an arguments definition, the construct the upstream grammar names arguments_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"arguments_definition"}],"formerNames":[]},
    {"id":"grammar.input-value-definition","phrase":"input value definition","role":"concept","definition":"A rule for an input value definition, the construct the upstream grammar names input_value_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"input_value_definition"}],"formerNames":[]},
    {"id":"grammar.union-member-types","phrase":"union member types","role":"concept","definition":"A rule for an union member types, the construct the upstream grammar names union_member_types.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"union_member_types"}],"formerNames":[]},
    {"id":"grammar.root-operation-type-definition","phrase":"root operation type definition","role":"concept","definition":"A rule for a root operation type definition, the construct the upstream grammar names root_operation_type_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"root_operation_type_definition"}],"formerNames":[]},
    {"id":"grammar.operation-definition","phrase":"operation definition","role":"concept","definition":"A rule for an operation definition, the construct the upstream grammar names operation_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"operation_definition"}],"formerNames":[]},
    {"id":"grammar.operation-type","phrase":"operation type","role":"concept","definition":"A rule for an operation type, the construct the upstream grammar names operation_type.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"operation_type"}],"formerNames":[]},
    {"id":"grammar.scalar-type-definition","phrase":"scalar type definition","role":"concept","definition":"A rule for a scalar type definition, the construct the upstream grammar names scalar_type_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"scalar_type_definition"}],"formerNames":[]},
    {"id":"grammar.object-type-definition","phrase":"object type definition","role":"concept","definition":"A rule for an object type definition, the construct the upstream grammar names object_type_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"object_type_definition"}],"formerNames":[]},
    {"id":"grammar.interface-type-definition","phrase":"interface type definition","role":"concept","definition":"A rule for an interface type definition, the construct the upstream grammar names interface_type_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"interface_type_definition"}],"formerNames":[]},
    {"id":"grammar.union-type-definition","phrase":"union type definition","role":"concept","definition":"A rule for an union type definition, the construct the upstream grammar names union_type_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"union_type_definition"}],"formerNames":[]},
    {"id":"grammar.enumeration-type-definition","phrase":"enumeration type definition","role":"concept","definition":"A rule for an enumeration type definition, the construct the upstream grammar names enum_type_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"enumeration_type_definition"}],"formerNames":[]},
    {"id":"grammar.input-object-type-definition","phrase":"input object type definition","role":"concept","definition":"A rule for an input object type definition, the construct the upstream grammar names input_object_type_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"input_object_type_definition"}],"formerNames":[]},
    {"id":"grammar.variable-definition-list","phrase":"variable definition list","role":"concept","definition":"A rule for a variable definition list, the construct the upstream grammar names variable_definitions.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"variable_definitions"}],"formerNames":[]},
    {"id":"grammar.variable-definition","phrase":"variable definition","role":"concept","definition":"A rule for a variable definition, the construct the upstream grammar names variable_definition.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"variable_definition"},{"source":"native:make","name":"variable_definition"}],"formerNames":[]},
    {"id":"grammar.selection-set","phrase":"selection set","role":"concept","definition":"A rule for a selection set, the construct the upstream grammar names selection_set.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"selection_set"}],"formerNames":[]},
    {"id":"grammar.selection-set-member","phrase":"selection set member","role":"concept","definition":"A rule for a selection set member, the construct the upstream grammar names selection.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"selection"}],"formerNames":[]},
    {"id":"grammar.field","phrase":"field","role":"concept","definition":"A rule for a field, the construct the upstream grammar names field.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"field"}],"formerNames":[]},
    {"id":"grammar.alias","phrase":"alias","role":"concept","definition":"A rule for an alias, the construct the upstream grammar names alias.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"alias"}],"formerNames":[]},
    {"id":"grammar.variable","phrase":"variable","role":"concept","definition":"A rule for a variable, the construct the upstream grammar names variable.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"variable"},{"source":"native:make","name":"variable"}],"formerNames":[]},
    {"id":"grammar.enumeration-value","phrase":"enumeration value","role":"concept","definition":"A rule for an enumeration value, the construct the upstream grammar names enum_value.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"enumeration_value"}],"formerNames":[]},
    {"id":"grammar.fragment-spread","phrase":"fragment spread","role":"concept","definition":"A rule for a fragment spread, the construct the upstream grammar names fragment_spread.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"fragment_spread"}],"formerNames":[]},
    {"id":"grammar.fragment-definition","phrase":"fragment definition","role":"concept","definition":"A rule for a fragment definition, the construct the upstream grammar names fragment_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"fragment_definition"}],"formerNames":[]},
    {"id":"grammar.fragment-name","phrase":"fragment name","role":"concept","definition":"A rule for a fragment name, the construct the upstream grammar names fragment_name.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"fragment_name"}],"formerNames":[]},
    {"id":"grammar.inline-fragment","phrase":"inline fragment","role":"concept","definition":"A rule for an inline fragment, the construct the upstream grammar names inline_fragment.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"inline_fragment"}],"formerNames":[]},
    {"id":"grammar.type-condition","phrase":"type condition","role":"concept","definition":"A rule for a type condition, the construct the upstream grammar names type_condition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"type_condition"}],"formerNames":[]},
    {"id":"grammar.directive-list","phrase":"directive list","role":"concept","definition":"A rule for a directive list, the construct the upstream grammar names directives.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"directives"}],"formerNames":[]},
    {"id":"grammar.directive","phrase":"directive","role":"concept","definition":"A rule for a directive, the construct the upstream grammar names directive.","constraints":["Native grammars share this concept only where the construct means the same in each language.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"directive"},{"source":"native:make","name":"directive"}],"formerNames":[]},
    {"id":"grammar.directive-definition","phrase":"directive definition","role":"concept","definition":"A rule for a directive definition, the construct the upstream grammar names directive_definition.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"directive_definition"}],"formerNames":[]},
    {"id":"grammar.directive-location-list","phrase":"directive location list","role":"concept","definition":"A rule for a directive location list, the construct the upstream grammar names directive_locations.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"directive_locations"}],"formerNames":[]},
    {"id":"grammar.directive-location","phrase":"directive location","role":"concept","definition":"A rule for a directive location, the construct the upstream grammar names directive_location.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"directive_location"}],"formerNames":[]},
    {"id":"grammar.executable-directive-location","phrase":"executable directive location","role":"concept","definition":"A rule for an executable directive location, the construct the upstream grammar names executable_directive_location.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"executable_directive_location"}],"formerNames":[]},
    {"id":"grammar.type-system-directive-location","phrase":"type system directive location","role":"concept","definition":"A rule for a type system directive location, the construct the upstream grammar names type_system_directive_location.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"type_system_directive_location"}],"formerNames":[]},
    {"id":"grammar.named-type","phrase":"named type","role":"concept","definition":"A rule for a named type, the construct the upstream grammar names named_type.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"named_type"}],"formerNames":[]},
    {"id":"grammar.list-type","phrase":"list type","role":"concept","definition":"A rule for a list type, the construct the upstream grammar names list_type.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"list_type"}],"formerNames":[]},
    {"id":"grammar.non-null-type","phrase":"non null type","role":"concept","definition":"A rule for a non null type, the construct the upstream grammar names non_null_type.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"non_null_type"}],"formerNames":[]},
    {"id":"grammar.comma","phrase":"comma","role":"concept","definition":"A rule for a comma, the construct the upstream grammar names comma.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"comma"}],"formerNames":[]},
    {"id":"grammar.description","phrase":"description","role":"concept","definition":"A rule for a description, the construct the upstream grammar names description.","constraints":["Only the native GraphQL grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:graphql","name":"description"}],"formerNames":[]},
    {"id":"grammar.edition","phrase":"edition","role":"concept","definition":"A rule for an edition, the construct the upstream grammar names edition.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"edition"}],"formerNames":[]},
    {"id":"grammar.syntax-statement","phrase":"syntax statement","role":"concept","definition":"A rule for a syntax statement, the construct the upstream grammar names syntax.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"syntax"}],"formerNames":[]},
    {"id":"grammar.option-statement","phrase":"option statement","role":"concept","definition":"A rule for an option statement, the construct the upstream grammar names option.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"option"}],"formerNames":[]},
    {"id":"grammar.option-name","phrase":"option name","role":"concept","definition":"A rule for an option name, the construct the upstream grammar names _option_name.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"option_name"}],"formerNames":[]},
    {"id":"grammar.enumeration-name","phrase":"enumeration name","role":"concept","definition":"A rule for an enumeration name, the construct the upstream grammar names enum_name.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"enumeration_name"}],"formerNames":[]},
    {"id":"grammar.enumeration-field","phrase":"enumeration field","role":"concept","definition":"A rule for an enumeration field, the construct the upstream grammar names enum_field.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"enumeration_field"}],"formerNames":[]},
    {"id":"grammar.enumeration-value-option","phrase":"enumeration value option","role":"concept","definition":"A rule for an enumeration value option, the construct the upstream grammar names enum_value_option.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"enumeration_value_option"}],"formerNames":[]},
    {"id":"grammar.message","phrase":"message","role":"concept","definition":"A rule for a message, the construct the upstream grammar names message.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"message"}],"formerNames":[]},
    {"id":"grammar.message-body","phrase":"message body","role":"concept","definition":"A rule for a message body, the construct the upstream grammar names message_body.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"message_body"}],"formerNames":[]},
    {"id":"grammar.message-name","phrase":"message name","role":"concept","definition":"A rule for a message name, the construct the upstream grammar names message_name.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"message_name"}],"formerNames":[]},
    {"id":"grammar.message-extension","phrase":"message extension","role":"concept","definition":"A rule for a message extension, the construct the upstream grammar names extend.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"extend"}],"formerNames":[]},
    {"id":"grammar.group","phrase":"group","role":"concept","definition":"A rule for a group, the construct the upstream grammar names group.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"group"}],"formerNames":[]},
    {"id":"grammar.field-option-list","phrase":"field option list","role":"concept","definition":"A rule for a field option list, the construct the upstream grammar names field_options.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"field_options"}],"formerNames":[]},
    {"id":"grammar.field-option","phrase":"field option","role":"concept","definition":"A rule for a field option, the construct the upstream grammar names field_option.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"field_option"}],"formerNames":[]},
    {"id":"grammar.one-of-declaration","phrase":"one of declaration","role":"concept","definition":"A rule for an one of declaration, the construct the upstream grammar names oneof.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"one_of"}],"formerNames":[]},
    {"id":"grammar.one-of-field","phrase":"one of field","role":"concept","definition":"A rule for an one of field, the construct the upstream grammar names oneof_field.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"one_of_field"}],"formerNames":[]},
    {"id":"grammar.map-field","phrase":"map field","role":"concept","definition":"A rule for a map field, the construct the upstream grammar names map_field.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"map_field"}],"formerNames":[]},
    {"id":"grammar.key-type","phrase":"key type","role":"concept","definition":"A rule for a key type, the construct the upstream grammar names key_type.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"key_type"}],"formerNames":[]},
    {"id":"grammar.reserved-statement","phrase":"reserved statement","role":"concept","definition":"A rule for a reserved statement, the construct the upstream grammar names reserved.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"reserved"}],"formerNames":[]},
    {"id":"grammar.extensions","phrase":"extensions","role":"concept","definition":"A rule for an extensions, the construct the upstream grammar names extensions.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"extensions"}],"formerNames":[]},
    {"id":"grammar.field-number-range-list","phrase":"field number range list","role":"concept","definition":"A rule for a field number range list, the construct the upstream grammar names ranges.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"ranges"}],"formerNames":[]},
    {"id":"grammar.field-number-range","phrase":"field number range","role":"concept","definition":"A rule for a field number range, the construct the upstream grammar names range.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"range"}],"formerNames":[]},
    {"id":"grammar.reserved-field-names","phrase":"reserved field names","role":"concept","definition":"A rule for a reserved field names, the construct the upstream grammar names reserved_field_names.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"reserved_field_names"}],"formerNames":[]},
    {"id":"grammar.message-or-enumeration-type","phrase":"message or enumeration type","role":"concept","definition":"A rule for a message or enumeration type, the construct the upstream grammar names message_or_enum_type.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"message_or_enumeration_type"}],"formerNames":[]},
    {"id":"grammar.field-number","phrase":"field number","role":"concept","definition":"A rule for a field number, the construct the upstream grammar names field_number.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"field_number"}],"formerNames":[]},
    {"id":"grammar.service","phrase":"service","role":"concept","definition":"A rule for a service, the construct the upstream grammar names service.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"service"}],"formerNames":[]},
    {"id":"grammar.service-name","phrase":"service name","role":"concept","definition":"A rule for a service name, the construct the upstream grammar names service_name.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"service_name"}],"formerNames":[]},
    {"id":"grammar.remote-procedure-call","phrase":"remote procedure call","role":"concept","definition":"A rule for a remote procedure call, the construct the upstream grammar names rpc.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"remote_procedure_call"}],"formerNames":[]},
    {"id":"grammar.remote-procedure-call-name","phrase":"remote procedure call name","role":"concept","definition":"A rule for a remote procedure call name, the construct the upstream grammar names rpc_name.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"remote_procedure_call_name"}],"formerNames":[]},
    {"id":"grammar.option-value","phrase":"option value","role":"concept","definition":"A rule for an option value, the construct the upstream grammar names constant.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"constant"}],"formerNames":[]},
    {"id":"grammar.block-literal","phrase":"block literal","role":"concept","definition":"A rule for a block literal, the construct the upstream grammar names block_lit.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"block_literal"}],"formerNames":[]},
    {"id":"grammar.block-field","phrase":"block field","role":"concept","definition":"A rule for a block field, the construct the upstream grammar names _block_field.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"block_field"}],"formerNames":[]},
    {"id":"grammar.extension-name","phrase":"extension name","role":"concept","definition":"A rule for an extension name, the construct the upstream grammar names extension_name.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"extension_name"}],"formerNames":[]},
    {"id":"grammar.quoted-field-name","phrase":"quoted field name","role":"concept","definition":"A rule for a quoted field name, the construct the upstream grammar names reserved_identifier.","constraints":["Only the native Protocol Buffers grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:proto","name":"reserved_identifier"}],"formerNames":[]},
    {"id":"grammar.makefile","phrase":"makefile","role":"concept","definition":"A rule for a makefile, the construct the upstream grammar names makefile.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"makefile"}],"formerNames":[]},
    {"id":"grammar.thing","phrase":"thing","role":"concept","definition":"A rule for a thing, the construct the upstream grammar names _thing.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"thing"}],"formerNames":[]},
    {"id":"grammar.build-rule","phrase":"build rule","role":"concept","definition":"A rule for a build rule, the construct the upstream grammar names rule.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"rule"}],"formerNames":[]},
    {"id":"grammar.ordinary-rule","phrase":"ordinary rule","role":"concept","definition":"A rule for an ordinary rule, the construct the upstream grammar names _ordinary_rule.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"ordinary_rule"}],"formerNames":[]},
    {"id":"grammar.static-pattern-rule","phrase":"static pattern rule","role":"concept","definition":"A rule for a static pattern rule, the construct the upstream grammar names _static_pattern_rule.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"static_pattern_rule"}],"formerNames":[]},
    {"id":"grammar.targets-alias","phrase":"targets alias","role":"concept","definition":"A rule for a targets alias, the construct the upstream grammar names _targets.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"targets_alias"}],"formerNames":[]},
    {"id":"grammar.static-target-pattern","phrase":"static target pattern","role":"concept","definition":"A rule for a static target pattern, the construct the upstream grammar names _target_pattern.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"target_pattern"}],"formerNames":[]},
    {"id":"grammar.prerequisites-choice","phrase":"prerequisites choice","role":"concept","definition":"A rule for a prerequisites choice, the construct the upstream grammar names _prerequisites.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"prerequisites_choice"}],"formerNames":[]},
    {"id":"grammar.normal-prerequisites","phrase":"normal prerequisites","role":"concept","definition":"A rule for a normal prerequisites, the construct the upstream grammar names _normal_prerequisites.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"normal_prerequisites"}],"formerNames":[]},
    {"id":"grammar.order-only-prerequisites","phrase":"order only prerequisites","role":"concept","definition":"A rule for an order only prerequisites, the construct the upstream grammar names _order_only_prerequisites.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"order_only_prerequisites"}],"formerNames":[]},
    {"id":"grammar.prerequisites-pattern","phrase":"prerequisites pattern","role":"concept","definition":"A rule for a prerequisites pattern, the construct the upstream grammar names _prerequisites_pattern.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"prerequisites_pattern"}],"formerNames":[]},
    {"id":"grammar.recipe","phrase":"recipe","role":"concept","definition":"A rule for a recipe, the construct the upstream grammar names recipe.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"recipe"}],"formerNames":[]},
    {"id":"grammar.attached-recipe-line","phrase":"attached recipe line","role":"concept","definition":"A rule for an attached recipe line, the construct the upstream grammar names _attached_recipe_line.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"attached_recipe_line"}],"formerNames":[]},
    {"id":"grammar.prefixed-recipe-line","phrase":"prefixed recipe line","role":"concept","definition":"A rule for a prefixed recipe line, the construct the upstream grammar names _prefixed_recipe_line.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"prefixed_recipe_line"}],"formerNames":[]},
    {"id":"grammar.recipe-line","phrase":"recipe line","role":"concept","definition":"A rule for a recipe line, the construct the upstream grammar names recipe_line.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"recipe_line"}],"formerNames":[]},
    {"id":"grammar.search-path-assignment","phrase":"search path assignment","role":"concept","definition":"A rule for a search path assignment, the construct the upstream grammar names VPATH_assignment.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"search_path_assignment"}],"formerNames":[]},
    {"id":"grammar.recipe-prefix-assignment","phrase":"recipe prefix assignment","role":"concept","definition":"A rule for a recipe prefix assignment, the construct the upstream grammar names RECIPEPREFIX_assignment.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"recipe_prefix_assignment"}],"formerNames":[]},
    {"id":"grammar.variable-assignment","phrase":"variable assignment","role":"concept","definition":"A rule for a variable assignment, the construct the upstream grammar names variable_assignment.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"variable_assignment"}],"formerNames":[]},
    {"id":"grammar.target-or-pattern-assignment","phrase":"target or pattern assignment","role":"concept","definition":"A rule for a target or pattern assignment, the construct the upstream grammar names _target_or_pattern_assignment.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"target_or_pattern_assignment"}],"formerNames":[]},
    {"id":"grammar.shell-assignment","phrase":"shell assignment","role":"concept","definition":"A rule for a shell assignment, the construct the upstream grammar names shell_assignment.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"shell_assignment"}],"formerNames":[]},
    {"id":"grammar.define-directive","phrase":"define directive","role":"concept","definition":"A rule for a define directive, the construct the upstream grammar names define_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"define_directive"}],"formerNames":[]},
    {"id":"grammar.include-directive","phrase":"include directive","role":"concept","definition":"A rule for an include directive, the construct the upstream grammar names include_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"include_directive"}],"formerNames":[]},
    {"id":"grammar.search-path-directive","phrase":"search path directive","role":"concept","definition":"A rule for a search path directive, the construct the upstream grammar names vpath_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"search_path_directive"}],"formerNames":[]},
    {"id":"grammar.export-directive","phrase":"export directive","role":"concept","definition":"A rule for an export directive, the construct the upstream grammar names export_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"export_directive"}],"formerNames":[]},
    {"id":"grammar.remove-export-directive","phrase":"remove export directive","role":"concept","definition":"A rule for a remove export directive, the construct the upstream grammar names unexport_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"remove_export_directive"}],"formerNames":[]},
    {"id":"grammar.override-directive","phrase":"override directive","role":"concept","definition":"A rule for an override directive, the construct the upstream grammar names override_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"override_directive"}],"formerNames":[]},
    {"id":"grammar.remove-definition-directive","phrase":"remove definition directive","role":"concept","definition":"A rule for a remove definition directive, the construct the upstream grammar names undefine_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"remove_definition_directive"}],"formerNames":[]},
    {"id":"grammar.private-directive","phrase":"private directive","role":"concept","definition":"A rule for a private directive, the construct the upstream grammar names private_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"private_directive"}],"formerNames":[]},
    {"id":"grammar.else-if-directive","phrase":"else if directive","role":"concept","definition":"A rule for an else if directive, the construct the upstream grammar names elsif_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"else_if_directive"}],"formerNames":[]},
    {"id":"grammar.conditional-directives","phrase":"conditional directives","role":"concept","definition":"A rule for a conditional directives, the construct the upstream grammar names _conditional_directives.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"conditional_directives"}],"formerNames":[]},
    {"id":"grammar.conditional-consequence","phrase":"conditional consequence","role":"concept","definition":"A rule for a conditional consequence, the construct the upstream grammar names _conditional_consequence.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"conditional_consequence"}],"formerNames":[]},
    {"id":"grammar.if-equal-directive","phrase":"if equal directive","role":"concept","definition":"A rule for an if equal directive, the construct the upstream grammar names ifeq_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"if_equal_directive"}],"formerNames":[]},
    {"id":"grammar.if-not-equal-directive","phrase":"if not equal directive","role":"concept","definition":"A rule for an if not equal directive, the construct the upstream grammar names ifneq_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"if_not_equal_directive"}],"formerNames":[]},
    {"id":"grammar.if-defined-directive","phrase":"if defined directive","role":"concept","definition":"A rule for an if defined directive, the construct the upstream grammar names ifdef_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"if_defined_directive"}],"formerNames":[]},
    {"id":"grammar.if-not-defined-directive","phrase":"if not defined directive","role":"concept","definition":"A rule for an if not defined directive, the construct the upstream grammar names ifndef_directive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"if_not_defined_directive"}],"formerNames":[]},
    {"id":"grammar.conditional-arguments-comparison","phrase":"conditional arguments comparison","role":"concept","definition":"A rule for a conditional arguments comparison, the construct the upstream grammar names _conditional_args_cmp.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"conditional_arguments_comparison"}],"formerNames":[]},
    {"id":"grammar.variable-reference","phrase":"variable reference","role":"concept","definition":"A rule for a variable reference, the construct the upstream grammar names variable_reference.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"variable_reference"}],"formerNames":[]},
    {"id":"grammar.substitution-reference","phrase":"substitution reference","role":"concept","definition":"A rule for a substitution reference, the construct the upstream grammar names substitution_reference.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"substitution_reference"}],"formerNames":[]},
    {"id":"grammar.automatic-variable","phrase":"automatic variable","role":"concept","definition":"A rule for an automatic variable, the construct the upstream grammar names automatic_variable.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"automatic_variable"}],"formerNames":[]},
    {"id":"grammar.function-expansion","phrase":"function expansion","role":"concept","definition":"A rule for a function expansion, the construct the upstream grammar names _function.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"function"}],"formerNames":[]},
    {"id":"grammar.shell-function","phrase":"shell function","role":"concept","definition":"A rule for a shell function, the construct the upstream grammar names shell_function.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"shell_function"}],"formerNames":[]},
    {"id":"grammar.path-list","phrase":"path list","role":"concept","definition":"A rule for a path list, the construct the upstream grammar names paths.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"paths"}],"formerNames":[]},
    {"id":"grammar.primary","phrase":"primary","role":"concept","definition":"A rule for a primary, the construct the upstream grammar names _primary.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"primary"}],"formerNames":[]},
    {"id":"grammar.concatenation","phrase":"concatenation","role":"concept","definition":"A rule for a concatenation, the construct the upstream grammar names concatenation.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"concatenation"}],"formerNames":[]},
    {"id":"grammar.word","phrase":"word","role":"concept","definition":"A rule for a word, the construct the upstream grammar names word.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"word"}],"formerNames":[]},
    {"id":"grammar.archive","phrase":"archive","role":"concept","definition":"A rule for an archive, the construct the upstream grammar names archive.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"archive"}],"formerNames":[]},
    {"id":"grammar.recipe-prefix","phrase":"recipe prefix","role":"concept","definition":"A rule for a recipe prefix, the construct the upstream grammar names _recipeprefix.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"recipe_prefix"}],"formerNames":[]},
    {"id":"grammar.raw-line","phrase":"raw line","role":"concept","definition":"A rule for a raw line, the construct the upstream grammar names _rawline.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"raw_line"}],"formerNames":[]},
    {"id":"grammar.shell-text-without-split","phrase":"shell text without split","role":"concept","definition":"A rule for a shell text without split, the construct the upstream grammar names _shell_text_without_split.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"shell_text_without_split"}],"formerNames":[]},
    {"id":"grammar.shell-text-with-split","phrase":"shell text with split","role":"concept","definition":"A rule for a shell text with split, the construct the upstream grammar names shell_text_with_split.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"shell_text_with_split"}],"formerNames":[]},
    {"id":"grammar.shell-command-alias","phrase":"shell command alias","role":"concept","definition":"A rule for a shell command alias, the construct the upstream grammar names _shell_command.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"shell_command_alias"}],"formerNames":[]},
    {"id":"grammar.text","phrase":"text","role":"concept","definition":"A rule for a text, the construct the upstream grammar names text.","constraints":["Only the native Make grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:make","name":"text"}],"formerNames":[]},
    {"id":"grammar.source-unit","phrase":"source unit","role":"concept","definition":"A rule for a source unit, the construct the upstream grammar names _source_unit.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"source_unit"}],"formerNames":[]},
    {"id":"grammar.source-file-directive","phrase":"source file directive","role":"concept","definition":"A rule for a source file directive, the construct the upstream grammar names _directive.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"directive"}],"formerNames":[]},
    {"id":"grammar.pragma-directive","phrase":"pragma directive","role":"concept","definition":"A rule for a pragma directive, the construct the upstream grammar names pragma_directive.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"pragma_directive"}],"formerNames":[]},
    {"id":"grammar.solidity-pragma-token","phrase":"solidity pragma token","role":"concept","definition":"A rule for a solidity pragma token, the construct the upstream grammar names solidity_pragma_token.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"solidity_pragma_token"}],"formerNames":[]},
    {"id":"grammar.any-pragma-token","phrase":"any pragma token","role":"concept","definition":"A rule for an any pragma token, the construct the upstream grammar names any_pragma_token.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"any_pragma_token"}],"formerNames":[]},
    {"id":"grammar.solidity","phrase":"solidity","role":"concept","definition":"A rule for a solidity, the construct the upstream grammar names _solidity.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"solidity"}],"formerNames":[]},
    {"id":"grammar.pragma-value","phrase":"pragma value","role":"concept","definition":"A rule for a pragma value, the construct the upstream grammar names pragma_value.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"pragma_value"}],"formerNames":[]},
    {"id":"grammar.pragma-version-constraint","phrase":"pragma version constraint","role":"concept","definition":"A rule for a pragma version constraint, the construct the upstream grammar names _pragma_version_constraint.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"pragma_version_constraint"}],"formerNames":[]},
    {"id":"grammar.solidity-version","phrase":"solidity version","role":"concept","definition":"A rule for a solidity version, the construct the upstream grammar names solidity_version.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"solidity_version"}],"formerNames":[]},
    {"id":"grammar.solidity-version-comparison-operator","phrase":"solidity version comparison operator","role":"concept","definition":"A rule for a solidity version comparison operator, the construct the upstream grammar names solidity_version_comparison_operator.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"solidity_version_comparison_operator"}],"formerNames":[]},
    {"id":"grammar.import-directive","phrase":"import directive","role":"concept","definition":"A rule for an import directive, the construct the upstream grammar names import_directive.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"import_directive"}],"formerNames":[]},
    {"id":"grammar.source-import","phrase":"source import","role":"concept","definition":"A rule for a source import, the construct the upstream grammar names _source_import.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"source_import"}],"formerNames":[]},
    {"id":"grammar.single-import","phrase":"single import","role":"concept","definition":"A rule for a single import, the construct the upstream grammar names _single_import.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"single_import"}],"formerNames":[]},
    {"id":"grammar.multiple-import","phrase":"multiple import","role":"concept","definition":"A rule for a multiple import, the construct the upstream grammar names _multiple_import.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"multiple_import"}],"formerNames":[]},
    {"id":"grammar.user-defined-type-definition","phrase":"user defined type definition","role":"concept","definition":"A rule for an user defined type definition, the construct the upstream grammar names user_defined_type_definition.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"user_defined_type_definition"}],"formerNames":[]},
    {"id":"grammar.constant-variable-declaration","phrase":"constant variable declaration","role":"concept","definition":"A rule for a constant variable declaration, the construct the upstream grammar names constant_variable_declaration.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"constant_variable_declaration"}],"formerNames":[]},
    {"id":"grammar.contract-declaration","phrase":"contract declaration","role":"concept","definition":"A rule for a contract declaration, the construct the upstream grammar names contract_declaration.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"contract_declaration"}],"formerNames":[]},
    {"id":"grammar.error-declaration","phrase":"error declaration","role":"concept","definition":"A rule for an error declaration, the construct the upstream grammar names error_declaration.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"error_declaration"}],"formerNames":[]},
    {"id":"grammar.error-parameter","phrase":"error parameter","role":"concept","definition":"A rule for an error parameter, the construct the upstream grammar names error_parameter.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"error_parameter"}],"formerNames":[]},
    {"id":"grammar.library-declaration","phrase":"library declaration","role":"concept","definition":"A rule for a library declaration, the construct the upstream grammar names library_declaration.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"library_declaration"}],"formerNames":[]},
    {"id":"grammar.layout-specifier","phrase":"layout specifier","role":"concept","definition":"A rule for a layout specifier, the construct the upstream grammar names layout_specifier.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"layout_specifier"}],"formerNames":[]},
    {"id":"grammar.inheritance-specifier","phrase":"inheritance specifier","role":"concept","definition":"A rule for an inheritance specifier, the construct the upstream grammar names inheritance_specifier.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"inheritance_specifier"}],"formerNames":[]},
    {"id":"grammar.contract-member","phrase":"contract member","role":"concept","definition":"A rule for a contract member, the construct the upstream grammar names _contract_member.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"contract_member"}],"formerNames":[]},
    {"id":"grammar.structure-declaration","phrase":"structure declaration","role":"concept","definition":"A rule for a structure declaration, the construct the upstream grammar names struct_declaration.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"structure_declaration"}],"formerNames":[]},
    {"id":"grammar.structure-member","phrase":"structure member","role":"concept","definition":"A rule for a structure member, the construct the upstream grammar names struct_member.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"structure_member"}],"formerNames":[]},
    {"id":"grammar.event-definition","phrase":"event definition","role":"concept","definition":"A rule for an event definition, the construct the upstream grammar names event_definition.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"event_definition"}],"formerNames":[]},
    {"id":"grammar.event-parameter-list","phrase":"event parameter list","role":"concept","definition":"A rule for an event parameter list, the construct the upstream grammar names _event_parameter_list.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"event_parameter_list"}],"formerNames":[]},
    {"id":"grammar.event-parameter","phrase":"event parameter","role":"concept","definition":"A rule for an event parameter, the construct the upstream grammar names event_parameter.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"event_parameter"}],"formerNames":[]},
    {"id":"grammar.user-definable-operator","phrase":"user definable operator","role":"concept","definition":"A rule for an user definable operator, the construct the upstream grammar names user_definable_operator.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"user_definable_operator"}],"formerNames":[]},
    {"id":"grammar.using-directive","phrase":"using directive","role":"concept","definition":"A rule for an using directive, the construct the upstream grammar names using_directive.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"using_directive"}],"formerNames":[]},
    {"id":"grammar.using-alias","phrase":"using alias","role":"concept","definition":"A rule for an using alias, the construct the upstream grammar names using_alias.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"using_alias"}],"formerNames":[]},
    {"id":"grammar.any-source-type","phrase":"any source type","role":"concept","definition":"A rule for an any source type, the construct the upstream grammar names any_source_type.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"any_source_type"}],"formerNames":[]},
    {"id":"grammar.assembly-statement","phrase":"assembly statement","role":"concept","definition":"A rule for an assembly statement, the construct the upstream grammar names assembly_statement.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"assembly_statement"}],"formerNames":[]},
    {"id":"grammar.assembly-flags","phrase":"assembly flags","role":"concept","definition":"A rule for an assembly flags, the construct the upstream grammar names assembly_flags.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"assembly_flags"}],"formerNames":[]},
    {"id":"grammar.yul-statement","phrase":"yul statement","role":"concept","definition":"A rule for a yul statement, the construct the upstream grammar names _yul_statement.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_statement"}],"formerNames":[]},
    {"id":"grammar.yul-label","phrase":"yul label","role":"concept","definition":"A rule for a yul label, the construct the upstream grammar names yul_label.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_label"}],"formerNames":[]},
    {"id":"grammar.yul-leave","phrase":"yul leave","role":"concept","definition":"A rule for a yul leave, the construct the upstream grammar names yul_leave.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_leave"}],"formerNames":[]},
    {"id":"grammar.yul-break","phrase":"yul break","role":"concept","definition":"A rule for a yul break, the construct the upstream grammar names yul_break.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_break"}],"formerNames":[]},
    {"id":"grammar.yul-continue-statement","phrase":"yul continue statement","role":"concept","definition":"A rule for a yul continue statement, the construct the upstream grammar names yul_continue.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_continue"}],"formerNames":[]},
    {"id":"grammar.yul-identifier","phrase":"yul identifier","role":"concept","definition":"A rule for a yul identifier, the construct the upstream grammar names yul_identifier.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_identifier"}],"formerNames":[]},
    {"id":"grammar.yul-expression","phrase":"yul expression","role":"concept","definition":"A rule for a yul expression, the construct the upstream grammar names _yul_expression.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_expression"}],"formerNames":[]},
    {"id":"grammar.yul-path","phrase":"yul path","role":"concept","definition":"A rule for a yul path, the construct the upstream grammar names yul_path.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_path"}],"formerNames":[]},
    {"id":"grammar.yul-literal","phrase":"yul literal","role":"concept","definition":"A rule for a yul literal, the construct the upstream grammar names _yul_literal.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_literal"}],"formerNames":[]},
    {"id":"grammar.yul-decimal-number","phrase":"yul decimal number","role":"concept","definition":"A rule for a yul decimal number, the construct the upstream grammar names yul_decimal_number.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_decimal_number"}],"formerNames":[]},
    {"id":"grammar.yul-string-literal","phrase":"yul string literal","role":"concept","definition":"A rule for a yul string literal, the construct the upstream grammar names yul_string_literal.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_string_literal"}],"formerNames":[]},
    {"id":"grammar.yul-hex-number","phrase":"yul hex number","role":"concept","definition":"A rule for a yul hex number, the construct the upstream grammar names yul_hex_number.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_hex_number"}],"formerNames":[]},
    {"id":"grammar.yul-boolean-literal","phrase":"yul boolean literal","role":"concept","definition":"A rule for a yul boolean literal, the construct the upstream grammar names yul_boolean.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_boolean"}],"formerNames":[]},
    {"id":"grammar.yul-hex-string-literal","phrase":"yul hex string literal","role":"concept","definition":"A rule for a yul hex string literal, the construct the upstream grammar names yul_hex_string_literal.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_hex_string_literal"}],"formerNames":[]},
    {"id":"grammar.yul-block","phrase":"yul block","role":"concept","definition":"A rule for a yul block, the construct the upstream grammar names yul_block.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_block"}],"formerNames":[]},
    {"id":"grammar.yul-variable-declaration","phrase":"yul variable declaration","role":"concept","definition":"A rule for a yul variable declaration, the construct the upstream grammar names yul_variable_declaration.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_variable_declaration"}],"formerNames":[]},
    {"id":"grammar.yul-assignment-operator","phrase":"yul assignment operator","role":"concept","definition":"A rule for a yul assignment operator, the construct the upstream grammar names _yul_assignment_operator.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_assignment_operator"}],"formerNames":[]},
    {"id":"grammar.yul-assignment","phrase":"yul assignment","role":"concept","definition":"A rule for a yul assignment, the construct the upstream grammar names yul_assignment.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_assignment"}],"formerNames":[]},
    {"id":"grammar.yul-function-call","phrase":"yul function call","role":"concept","definition":"A rule for a yul function call, the construct the upstream grammar names yul_function_call.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_function_call"}],"formerNames":[]},
    {"id":"grammar.yul-if-statement","phrase":"yul if statement","role":"concept","definition":"A rule for a yul if statement, the construct the upstream grammar names yul_if_statement.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_if_statement"}],"formerNames":[]},
    {"id":"grammar.yul-for-statement","phrase":"yul for statement","role":"concept","definition":"A rule for a yul for statement, the construct the upstream grammar names yul_for_statement.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_for_statement"}],"formerNames":[]},
    {"id":"grammar.yul-switch-statement","phrase":"yul switch statement","role":"concept","definition":"A rule for a yul switch statement, the construct the upstream grammar names yul_switch_statement.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_switch_statement"}],"formerNames":[]},
    {"id":"grammar.yul-function-definition","phrase":"yul function definition","role":"concept","definition":"A rule for a yul function definition, the construct the upstream grammar names yul_function_definition.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_function_definition"}],"formerNames":[]},
    {"id":"grammar.yul-built-in-function","phrase":"yul built in function","role":"concept","definition":"A rule for a yul built in function, the construct the upstream grammar names yul_evm_builtin.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"yul_built_in_function"}],"formerNames":[]},
    {"id":"grammar.unchecked-keyword","phrase":"unchecked keyword","role":"concept","definition":"A rule for an unchecked keyword, the construct the upstream grammar names unchecked.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"unchecked"}],"formerNames":[]},
    {"id":"grammar.block-statement","phrase":"block statement","role":"concept","definition":"A rule for a block statement, the construct the upstream grammar names block_statement.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"block_statement"}],"formerNames":[]},
    {"id":"grammar.variable-declaration-statement","phrase":"variable declaration statement","role":"concept","definition":"A rule for a variable declaration statement, the construct the upstream grammar names variable_declaration_statement.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"variable_declaration_statement"}],"formerNames":[]},
    {"id":"grammar.variable-declaration-tuple","phrase":"variable declaration tuple","role":"concept","definition":"A rule for a variable declaration tuple, the construct the upstream grammar names variable_declaration_tuple.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"variable_declaration_tuple"}],"formerNames":[]},
    {"id":"grammar.do-while-statement","phrase":"do while statement","role":"concept","definition":"A rule for a do while statement, the construct the upstream grammar names do_while_statement.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"do_while_statement"}],"formerNames":[]},
    {"id":"grammar.revert-statement","phrase":"revert statement","role":"concept","definition":"A rule for a revert statement, the construct the upstream grammar names revert_statement.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"revert_statement"}],"formerNames":[]},
    {"id":"grammar.emit-statement","phrase":"emit statement","role":"concept","definition":"A rule for an emit statement, the construct the upstream grammar names emit_statement.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"emit_statement"}],"formerNames":[]},
    {"id":"grammar.state-variable-declaration","phrase":"state variable declaration","role":"concept","definition":"A rule for a state variable declaration, the construct the upstream grammar names state_variable_declaration.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"state_variable_declaration"}],"formerNames":[]},
    {"id":"grammar.visibility","phrase":"visibility","role":"concept","definition":"A rule for a visibility, the construct the upstream grammar names visibility.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"visibility"}],"formerNames":[]},
    {"id":"grammar.state-mutability","phrase":"state mutability","role":"concept","definition":"A rule for a state mutability, the construct the upstream grammar names state_mutability.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"state_mutability"}],"formerNames":[]},
    {"id":"grammar.state-location","phrase":"state location","role":"concept","definition":"A rule for a state location, the construct the upstream grammar names state_location.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"state_location"}],"formerNames":[]},
    {"id":"grammar.immutable-keyword","phrase":"immutable keyword","role":"concept","definition":"A rule for an immutable keyword, the construct the upstream grammar names immutable.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"immutable"}],"formerNames":[]},
    {"id":"grammar.override-specifier","phrase":"override specifier","role":"concept","definition":"A rule for an override specifier, the construct the upstream grammar names override_specifier.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"override_specifier"}],"formerNames":[]},
    {"id":"grammar.modifier-definition","phrase":"modifier definition","role":"concept","definition":"A rule for a modifier definition, the construct the upstream grammar names modifier_definition.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"modifier_definition"}],"formerNames":[]},
    {"id":"grammar.constructor-definition","phrase":"constructor definition","role":"concept","definition":"A rule for a constructor definition, the construct the upstream grammar names constructor_definition.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"constructor_definition"}],"formerNames":[]},
    {"id":"grammar.fallback-receive-definition","phrase":"fallback receive definition","role":"concept","definition":"A rule for a fallback receive definition, the construct the upstream grammar names fallback_receive_definition.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"fallback_receive_definition"}],"formerNames":[]},
    {"id":"grammar.return-type-definition","phrase":"return type definition","role":"concept","definition":"A rule for a return type definition, the construct the upstream grammar names return_type_definition.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"return_type_definition"}],"formerNames":[]},
    {"id":"grammar.virtual-keyword","phrase":"virtual keyword","role":"concept","definition":"A rule for a virtual keyword, the construct the upstream grammar names virtual.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"virtual"}],"formerNames":[]},
    {"id":"grammar.modifier-invocation","phrase":"modifier invocation","role":"concept","definition":"A rule for a modifier invocation, the construct the upstream grammar names modifier_invocation.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"modifier_invocation"}],"formerNames":[]},
    {"id":"grammar.call-arguments","phrase":"call arguments","role":"concept","definition":"A rule for a call arguments, the construct the upstream grammar names _call_arguments.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"call_arguments"}],"formerNames":[]},
    {"id":"grammar.call-argument-value","phrase":"call argument value","role":"concept","definition":"A rule for a call argument value, the construct the upstream grammar names call_argument.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"call_argument"}],"formerNames":[]},
    {"id":"grammar.call-structure-argument","phrase":"call structure argument","role":"concept","definition":"A rule for a call structure argument, the construct the upstream grammar names call_struct_argument.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"call_structure_argument"}],"formerNames":[]},
    {"id":"grammar.function-body","phrase":"function body","role":"concept","definition":"A rule for a function body, the construct the upstream grammar names function_body.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"function_body"}],"formerNames":[]},
    {"id":"grammar.inline-array-expression","phrase":"inline array expression","role":"concept","definition":"A rule for an inline array expression, the construct the upstream grammar names inline_array_expression.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"inline_array_expression"}],"formerNames":[]},
    {"id":"grammar.slice-access","phrase":"slice access","role":"concept","definition":"A rule for a slice access, the construct the upstream grammar names slice_access.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"slice_access"}],"formerNames":[]},
    {"id":"grammar.structure-field-assignment","phrase":"structure field assignment","role":"concept","definition":"A rule for a structure field assignment, the construct the upstream grammar names struct_field_assignment.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"structure_field_assignment"}],"formerNames":[]},
    {"id":"grammar.payable-conversion-expression","phrase":"payable conversion expression","role":"concept","definition":"A rule for a payable conversion expression, the construct the upstream grammar names payable_conversion_expression.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"payable_conversion_expression"}],"formerNames":[]},
    {"id":"grammar.meta-type-expression","phrase":"meta type expression","role":"concept","definition":"A rule for a meta type expression, the construct the upstream grammar names meta_type_expression.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"meta_type_expression"}],"formerNames":[]},
    {"id":"grammar.type-name","phrase":"type name","role":"concept","definition":"A rule for a type name, the construct the upstream grammar names type_name.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"type_name"}],"formerNames":[]},
    {"id":"grammar.return-parameters","phrase":"return parameters","role":"concept","definition":"A rule for a return parameters, the construct the upstream grammar names _return_parameters.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"return_parameters"}],"formerNames":[]},
    {"id":"grammar.nameless-parameter","phrase":"nameless parameter","role":"concept","definition":"A rule for a nameless parameter, the construct the upstream grammar names _nameless_parameter.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"nameless_parameter"}],"formerNames":[]},
    {"id":"grammar.storage-location","phrase":"storage location","role":"concept","definition":"A rule for a storage location, the construct the upstream grammar names _storage_location.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"storage_location"}],"formerNames":[]},
    {"id":"grammar.user-defined-type","phrase":"user defined type","role":"concept","definition":"A rule for an user defined type, the construct the upstream grammar names user_defined_type.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"user_defined_type"}],"formerNames":[]},
    {"id":"grammar.identifier-path","phrase":"identifier path","role":"concept","definition":"A rule for an identifier path, the construct the upstream grammar names _identifier_path.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"identifier_path"}],"formerNames":[]},
    {"id":"grammar.mapping-key","phrase":"mapping key","role":"concept","definition":"A rule for a mapping key, the construct the upstream grammar names _mapping_key.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"mapping_key"}],"formerNames":[]},
    {"id":"grammar.signed-integer-type","phrase":"signed integer type","role":"concept","definition":"A rule for a signed integer type, the construct the upstream grammar names _int.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"signed_integer_type"}],"formerNames":[]},
    {"id":"grammar.unsigned-integer-type","phrase":"unsigned integer type","role":"concept","definition":"A rule for an unsigned integer type, the construct the upstream grammar names _uint.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"unsigned_integer_type"}],"formerNames":[]},
    {"id":"grammar.bytes","phrase":"bytes","role":"concept","definition":"A rule for a bytes, the construct the upstream grammar names _bytes.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"bytes"}],"formerNames":[]},
    {"id":"grammar.fixed-point-type","phrase":"fixed point type","role":"concept","definition":"A rule for a fixed point type, the construct the upstream grammar names _fixed.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"fixed_point_type"}],"formerNames":[]},
    {"id":"grammar.unsigned-fixed-point-type","phrase":"unsigned fixed point type","role":"concept","definition":"A rule for an unsigned fixed point type, the construct the upstream grammar names _ufixed.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"unsigned_fixed_point_type"}],"formerNames":[]},
    {"id":"grammar.decimal-number","phrase":"decimal number","role":"concept","definition":"A rule for a decimal number, the construct the upstream grammar names _decimal_number.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"decimal_number"}],"formerNames":[]},
    {"id":"grammar.hex-number","phrase":"hex number","role":"concept","definition":"A rule for a hex number, the construct the upstream grammar names _hex_number.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"hex_number"}],"formerNames":[]},
    {"id":"grammar.number-unit","phrase":"number unit","role":"concept","definition":"A rule for a number unit, the construct the upstream grammar names number_unit.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"number_unit"}],"formerNames":[]},
    {"id":"grammar.hex-string-literal","phrase":"hex string literal","role":"concept","definition":"A rule for a hex string literal, the construct the upstream grammar names hex_string_literal.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"hex_string_literal"}],"formerNames":[]},
    {"id":"grammar.single-quoted-unicode-character","phrase":"single quoted unicode character","role":"concept","definition":"A rule for a single quoted unicode character, the construct the upstream grammar names _single_quoted_unicode_char.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"single_quoted_unicode_character"}],"formerNames":[]},
    {"id":"grammar.double-quoted-unicode-character","phrase":"double quoted unicode character","role":"concept","definition":"A rule for a double quoted unicode character, the construct the upstream grammar names _double_quoted_unicode_char.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"double_quoted_unicode_character"}],"formerNames":[]},
    {"id":"grammar.unicode-string-literal","phrase":"unicode string literal","role":"concept","definition":"A rule for an unicode string literal, the construct the upstream grammar names unicode_string_literal.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"unicode_string_literal"}],"formerNames":[]},
    {"id":"grammar.string-immediate-element-inside-double-quote","phrase":"string immediate element inside double quote","role":"concept","definition":"A rule for a string immediate element inside double quote, the construct the upstream grammar names _string_immediate_elt_inside_double_quote.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"string_immediate_element_inside_double_quote"}],"formerNames":[]},
    {"id":"grammar.string-immediate-element-inside-quote","phrase":"string immediate element inside quote","role":"concept","definition":"A rule for a string immediate element inside quote, the construct the upstream grammar names _string_immediate_elt_inside_quote.","constraints":["Only the native Solidity grammar defines this construct.","js/scripts/import-native-grammars.mjs generates this record from the rule names of the imported grammars."],"sourceAliases":[{"source":"native:solidity","name":"string_immediate_element_inside_quote"}],"formerNames":[]}
  ]
}