tree-sitter-delphi13 1.1.1 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/grammar.json CHANGED
@@ -10,20 +10,42 @@
10
10
  "type": "CHOICE",
11
11
  "members": [
12
12
  {
13
- "type": "SYMBOL",
14
- "name": "program"
15
- },
16
- {
17
- "type": "SYMBOL",
18
- "name": "library"
19
- },
20
- {
21
- "type": "SYMBOL",
22
- "name": "unit"
23
- },
24
- {
25
- "type": "SYMBOL",
26
- "name": "package"
13
+ "type": "SEQ",
14
+ "members": [
15
+ {
16
+ "type": "CHOICE",
17
+ "members": [
18
+ {
19
+ "type": "SYMBOL",
20
+ "name": "program"
21
+ },
22
+ {
23
+ "type": "SYMBOL",
24
+ "name": "library"
25
+ },
26
+ {
27
+ "type": "SYMBOL",
28
+ "name": "unit"
29
+ },
30
+ {
31
+ "type": "SYMBOL",
32
+ "name": "package"
33
+ }
34
+ ]
35
+ },
36
+ {
37
+ "type": "CHOICE",
38
+ "members": [
39
+ {
40
+ "type": "SYMBOL",
41
+ "name": "trailingText"
42
+ },
43
+ {
44
+ "type": "BLANK"
45
+ }
46
+ ]
47
+ }
48
+ ]
27
49
  },
28
50
  {
29
51
  "type": "SYMBOL",
@@ -36,6 +58,17 @@
36
58
  }
37
59
  ]
38
60
  },
61
+ "trailingText": {
62
+ "type": "TOKEN",
63
+ "content": {
64
+ "type": "PREC",
65
+ "value": -2,
66
+ "content": {
67
+ "type": "PATTERN",
68
+ "value": "[^\\s](.|\\s)*"
69
+ }
70
+ }
71
+ },
39
72
  "program": {
40
73
  "type": "SEQ",
41
74
  "members": [
@@ -214,21 +247,48 @@
214
247
  {
215
248
  "type": "SYMBOL",
216
249
  "name": "implementation"
217
- },
218
- {
219
- "type": "SYMBOL",
220
- "name": "initialization"
221
- },
222
- {
223
- "type": "SYMBOL",
224
- "name": "finalization"
225
250
  }
226
251
  ]
227
252
  }
228
253
  },
229
254
  {
230
- "type": "SYMBOL",
231
- "name": "kEnd"
255
+ "type": "CHOICE",
256
+ "members": [
257
+ {
258
+ "type": "SEQ",
259
+ "members": [
260
+ {
261
+ "type": "REPEAT",
262
+ "content": {
263
+ "type": "CHOICE",
264
+ "members": [
265
+ {
266
+ "type": "SYMBOL",
267
+ "name": "initialization"
268
+ },
269
+ {
270
+ "type": "SYMBOL",
271
+ "name": "finalization"
272
+ }
273
+ ]
274
+ }
275
+ },
276
+ {
277
+ "type": "SYMBOL",
278
+ "name": "kEnd"
279
+ }
280
+ ]
281
+ },
282
+ {
283
+ "type": "ALIAS",
284
+ "content": {
285
+ "type": "SYMBOL",
286
+ "name": "blockTr"
287
+ },
288
+ "named": true,
289
+ "value": "block"
290
+ }
291
+ ]
232
292
  },
233
293
  {
234
294
  "type": "SYMBOL",
@@ -441,8 +501,29 @@
441
501
  "type": "FIELD",
442
502
  "name": "then",
443
503
  "content": {
444
- "type": "SYMBOL",
445
- "name": "_statement"
504
+ "type": "SEQ",
505
+ "members": [
506
+ {
507
+ "type": "CHOICE",
508
+ "members": [
509
+ {
510
+ "type": "PREC_DYNAMIC",
511
+ "value": -1,
512
+ "content": {
513
+ "type": "SYMBOL",
514
+ "name": "label"
515
+ }
516
+ },
517
+ {
518
+ "type": "BLANK"
519
+ }
520
+ ]
521
+ },
522
+ {
523
+ "type": "SYMBOL",
524
+ "name": "_statement"
525
+ }
526
+ ]
446
527
  }
447
528
  }
448
529
  ]
@@ -510,8 +591,29 @@
510
591
  "type": "FIELD",
511
592
  "name": "else",
512
593
  "content": {
513
- "type": "SYMBOL",
514
- "name": "_statement"
594
+ "type": "SEQ",
595
+ "members": [
596
+ {
597
+ "type": "CHOICE",
598
+ "members": [
599
+ {
600
+ "type": "PREC_DYNAMIC",
601
+ "value": -1,
602
+ "content": {
603
+ "type": "SYMBOL",
604
+ "name": "label"
605
+ }
606
+ },
607
+ {
608
+ "type": "BLANK"
609
+ }
610
+ ]
611
+ },
612
+ {
613
+ "type": "SYMBOL",
614
+ "name": "_statement"
615
+ }
616
+ ]
515
617
  }
516
618
  }
517
619
  ]
@@ -540,8 +642,29 @@
540
642
  "type": "FIELD",
541
643
  "name": "body",
542
644
  "content": {
543
- "type": "SYMBOL",
544
- "name": "_statement"
645
+ "type": "SEQ",
646
+ "members": [
647
+ {
648
+ "type": "CHOICE",
649
+ "members": [
650
+ {
651
+ "type": "PREC_DYNAMIC",
652
+ "value": -1,
653
+ "content": {
654
+ "type": "SYMBOL",
655
+ "name": "label"
656
+ }
657
+ },
658
+ {
659
+ "type": "BLANK"
660
+ }
661
+ ]
662
+ },
663
+ {
664
+ "type": "SYMBOL",
665
+ "name": "_statement"
666
+ }
667
+ ]
545
668
  }
546
669
  }
547
670
  ]
@@ -640,8 +763,29 @@
640
763
  "type": "FIELD",
641
764
  "name": "body",
642
765
  "content": {
643
- "type": "SYMBOL",
644
- "name": "_statement"
766
+ "type": "SEQ",
767
+ "members": [
768
+ {
769
+ "type": "CHOICE",
770
+ "members": [
771
+ {
772
+ "type": "PREC_DYNAMIC",
773
+ "value": -1,
774
+ "content": {
775
+ "type": "SYMBOL",
776
+ "name": "label"
777
+ }
778
+ },
779
+ {
780
+ "type": "BLANK"
781
+ }
782
+ ]
783
+ },
784
+ {
785
+ "type": "SYMBOL",
786
+ "name": "_statement"
787
+ }
788
+ ]
645
789
  }
646
790
  }
647
791
  ]
@@ -690,8 +834,29 @@
690
834
  "type": "FIELD",
691
835
  "name": "body",
692
836
  "content": {
693
- "type": "SYMBOL",
694
- "name": "_statement"
837
+ "type": "SEQ",
838
+ "members": [
839
+ {
840
+ "type": "CHOICE",
841
+ "members": [
842
+ {
843
+ "type": "PREC_DYNAMIC",
844
+ "value": -1,
845
+ "content": {
846
+ "type": "SYMBOL",
847
+ "name": "label"
848
+ }
849
+ },
850
+ {
851
+ "type": "BLANK"
852
+ }
853
+ ]
854
+ },
855
+ {
856
+ "type": "SYMBOL",
857
+ "name": "_statement"
858
+ }
859
+ ]
695
860
  }
696
861
  }
697
862
  ]
@@ -744,8 +909,29 @@
744
909
  "type": "FIELD",
745
910
  "name": "body",
746
911
  "content": {
747
- "type": "SYMBOL",
748
- "name": "_statement"
912
+ "type": "SEQ",
913
+ "members": [
914
+ {
915
+ "type": "CHOICE",
916
+ "members": [
917
+ {
918
+ "type": "PREC_DYNAMIC",
919
+ "value": -1,
920
+ "content": {
921
+ "type": "SYMBOL",
922
+ "name": "label"
923
+ }
924
+ },
925
+ {
926
+ "type": "BLANK"
927
+ }
928
+ ]
929
+ },
930
+ {
931
+ "type": "SYMBOL",
932
+ "name": "_statement"
933
+ }
934
+ ]
749
935
  }
750
936
  }
751
937
  ]
@@ -765,8 +951,29 @@
765
951
  }
766
952
  },
767
953
  {
768
- "type": "SYMBOL",
769
- "name": "_statement"
954
+ "type": "SEQ",
955
+ "members": [
956
+ {
957
+ "type": "CHOICE",
958
+ "members": [
959
+ {
960
+ "type": "PREC_DYNAMIC",
961
+ "value": -1,
962
+ "content": {
963
+ "type": "SYMBOL",
964
+ "name": "label"
965
+ }
966
+ },
967
+ {
968
+ "type": "BLANK"
969
+ }
970
+ ]
971
+ },
972
+ {
973
+ "type": "SYMBOL",
974
+ "name": "_statement"
975
+ }
976
+ ]
770
977
  }
771
978
  ]
772
979
  },
@@ -973,8 +1180,29 @@
973
1180
  "type": "FIELD",
974
1181
  "name": "body",
975
1182
  "content": {
976
- "type": "SYMBOL",
977
- "name": "_statement"
1183
+ "type": "SEQ",
1184
+ "members": [
1185
+ {
1186
+ "type": "CHOICE",
1187
+ "members": [
1188
+ {
1189
+ "type": "PREC_DYNAMIC",
1190
+ "value": -1,
1191
+ "content": {
1192
+ "type": "SYMBOL",
1193
+ "name": "label"
1194
+ }
1195
+ },
1196
+ {
1197
+ "type": "BLANK"
1198
+ }
1199
+ ]
1200
+ },
1201
+ {
1202
+ "type": "SYMBOL",
1203
+ "name": "_statement"
1204
+ }
1205
+ ]
978
1206
  }
979
1207
  }
980
1208
  ]
@@ -1191,8 +1419,29 @@
1191
1419
  "type": "FIELD",
1192
1420
  "name": "body",
1193
1421
  "content": {
1194
- "type": "SYMBOL",
1195
- "name": "_statement"
1422
+ "type": "SEQ",
1423
+ "members": [
1424
+ {
1425
+ "type": "CHOICE",
1426
+ "members": [
1427
+ {
1428
+ "type": "PREC_DYNAMIC",
1429
+ "value": -1,
1430
+ "content": {
1431
+ "type": "SYMBOL",
1432
+ "name": "label"
1433
+ }
1434
+ },
1435
+ {
1436
+ "type": "BLANK"
1437
+ }
1438
+ ]
1439
+ },
1440
+ {
1441
+ "type": "SYMBOL",
1442
+ "name": "_statement"
1443
+ }
1444
+ ]
1196
1445
  }
1197
1446
  }
1198
1447
  ]
@@ -1486,8 +1735,29 @@
1486
1735
  "type": "CHOICE",
1487
1736
  "members": [
1488
1737
  {
1489
- "type": "SYMBOL",
1490
- "name": "_statementTr"
1738
+ "type": "SEQ",
1739
+ "members": [
1740
+ {
1741
+ "type": "CHOICE",
1742
+ "members": [
1743
+ {
1744
+ "type": "PREC_DYNAMIC",
1745
+ "value": -1,
1746
+ "content": {
1747
+ "type": "SYMBOL",
1748
+ "name": "label"
1749
+ }
1750
+ },
1751
+ {
1752
+ "type": "BLANK"
1753
+ }
1754
+ ]
1755
+ },
1756
+ {
1757
+ "type": "SYMBOL",
1758
+ "name": "_statementTr"
1759
+ }
1760
+ ]
1491
1761
  },
1492
1762
  {
1493
1763
  "type": "BLANK"
@@ -1563,8 +1833,29 @@
1563
1833
  "type": "CHOICE",
1564
1834
  "members": [
1565
1835
  {
1566
- "type": "SYMBOL",
1567
- "name": "_statementTr"
1836
+ "type": "SEQ",
1837
+ "members": [
1838
+ {
1839
+ "type": "CHOICE",
1840
+ "members": [
1841
+ {
1842
+ "type": "PREC_DYNAMIC",
1843
+ "value": -1,
1844
+ "content": {
1845
+ "type": "SYMBOL",
1846
+ "name": "label"
1847
+ }
1848
+ },
1849
+ {
1850
+ "type": "BLANK"
1851
+ }
1852
+ ]
1853
+ },
1854
+ {
1855
+ "type": "SYMBOL",
1856
+ "name": "_statementTr"
1857
+ }
1858
+ ]
1568
1859
  },
1569
1860
  {
1570
1861
  "type": "BLANK"
@@ -1601,8 +1892,29 @@
1601
1892
  "type": "CHOICE",
1602
1893
  "members": [
1603
1894
  {
1604
- "type": "SYMBOL",
1605
- "name": "_statementTr"
1895
+ "type": "SEQ",
1896
+ "members": [
1897
+ {
1898
+ "type": "CHOICE",
1899
+ "members": [
1900
+ {
1901
+ "type": "PREC_DYNAMIC",
1902
+ "value": -1,
1903
+ "content": {
1904
+ "type": "SYMBOL",
1905
+ "name": "label"
1906
+ }
1907
+ },
1908
+ {
1909
+ "type": "BLANK"
1910
+ }
1911
+ ]
1912
+ },
1913
+ {
1914
+ "type": "SYMBOL",
1915
+ "name": "_statementTr"
1916
+ }
1917
+ ]
1606
1918
  },
1607
1919
  {
1608
1920
  "type": "BLANK"
@@ -1705,8 +2017,29 @@
1705
2017
  "type": "CHOICE",
1706
2018
  "members": [
1707
2019
  {
1708
- "type": "SYMBOL",
1709
- "name": "_statementTr"
2020
+ "type": "SEQ",
2021
+ "members": [
2022
+ {
2023
+ "type": "CHOICE",
2024
+ "members": [
2025
+ {
2026
+ "type": "PREC_DYNAMIC",
2027
+ "value": -1,
2028
+ "content": {
2029
+ "type": "SYMBOL",
2030
+ "name": "label"
2031
+ }
2032
+ },
2033
+ {
2034
+ "type": "BLANK"
2035
+ }
2036
+ ]
2037
+ },
2038
+ {
2039
+ "type": "SYMBOL",
2040
+ "name": "_statementTr"
2041
+ }
2042
+ ]
1710
2043
  },
1711
2044
  {
1712
2045
  "type": "BLANK"
@@ -1763,8 +2096,29 @@
1763
2096
  "type": "CHOICE",
1764
2097
  "members": [
1765
2098
  {
1766
- "type": "SYMBOL",
1767
- "name": "_statementTr"
2099
+ "type": "SEQ",
2100
+ "members": [
2101
+ {
2102
+ "type": "CHOICE",
2103
+ "members": [
2104
+ {
2105
+ "type": "PREC_DYNAMIC",
2106
+ "value": -1,
2107
+ "content": {
2108
+ "type": "SYMBOL",
2109
+ "name": "label"
2110
+ }
2111
+ },
2112
+ {
2113
+ "type": "BLANK"
2114
+ }
2115
+ ]
2116
+ },
2117
+ {
2118
+ "type": "SYMBOL",
2119
+ "name": "_statementTr"
2120
+ }
2121
+ ]
1768
2122
  },
1769
2123
  {
1770
2124
  "type": "BLANK"
@@ -1825,8 +2179,29 @@
1825
2179
  "type": "CHOICE",
1826
2180
  "members": [
1827
2181
  {
1828
- "type": "SYMBOL",
1829
- "name": "_statementTr"
2182
+ "type": "SEQ",
2183
+ "members": [
2184
+ {
2185
+ "type": "CHOICE",
2186
+ "members": [
2187
+ {
2188
+ "type": "PREC_DYNAMIC",
2189
+ "value": -1,
2190
+ "content": {
2191
+ "type": "SYMBOL",
2192
+ "name": "label"
2193
+ }
2194
+ },
2195
+ {
2196
+ "type": "BLANK"
2197
+ }
2198
+ ]
2199
+ },
2200
+ {
2201
+ "type": "SYMBOL",
2202
+ "name": "_statementTr"
2203
+ }
2204
+ ]
1830
2205
  },
1831
2206
  {
1832
2207
  "type": "BLANK"
@@ -1854,8 +2229,29 @@
1854
2229
  "type": "CHOICE",
1855
2230
  "members": [
1856
2231
  {
1857
- "type": "SYMBOL",
1858
- "name": "_statementTr"
2232
+ "type": "SEQ",
2233
+ "members": [
2234
+ {
2235
+ "type": "CHOICE",
2236
+ "members": [
2237
+ {
2238
+ "type": "PREC_DYNAMIC",
2239
+ "value": -1,
2240
+ "content": {
2241
+ "type": "SYMBOL",
2242
+ "name": "label"
2243
+ }
2244
+ },
2245
+ {
2246
+ "type": "BLANK"
2247
+ }
2248
+ ]
2249
+ },
2250
+ {
2251
+ "type": "SYMBOL",
2252
+ "name": "_statementTr"
2253
+ }
2254
+ ]
1859
2255
  },
1860
2256
  {
1861
2257
  "type": "BLANK"
@@ -2066,8 +2462,29 @@
2066
2462
  "type": "CHOICE",
2067
2463
  "members": [
2068
2464
  {
2069
- "type": "SYMBOL",
2070
- "name": "_statementTr"
2465
+ "type": "SEQ",
2466
+ "members": [
2467
+ {
2468
+ "type": "CHOICE",
2469
+ "members": [
2470
+ {
2471
+ "type": "PREC_DYNAMIC",
2472
+ "value": -1,
2473
+ "content": {
2474
+ "type": "SYMBOL",
2475
+ "name": "label"
2476
+ }
2477
+ },
2478
+ {
2479
+ "type": "BLANK"
2480
+ }
2481
+ ]
2482
+ },
2483
+ {
2484
+ "type": "SYMBOL",
2485
+ "name": "_statementTr"
2486
+ }
2487
+ ]
2071
2488
  },
2072
2489
  {
2073
2490
  "type": "BLANK"
@@ -2280,8 +2697,29 @@
2280
2697
  "type": "CHOICE",
2281
2698
  "members": [
2282
2699
  {
2283
- "type": "SYMBOL",
2284
- "name": "_statementTr"
2700
+ "type": "SEQ",
2701
+ "members": [
2702
+ {
2703
+ "type": "CHOICE",
2704
+ "members": [
2705
+ {
2706
+ "type": "PREC_DYNAMIC",
2707
+ "value": -1,
2708
+ "content": {
2709
+ "type": "SYMBOL",
2710
+ "name": "label"
2711
+ }
2712
+ },
2713
+ {
2714
+ "type": "BLANK"
2715
+ }
2716
+ ]
2717
+ },
2718
+ {
2719
+ "type": "SYMBOL",
2720
+ "name": "_statementTr"
2721
+ }
2722
+ ]
2285
2723
  },
2286
2724
  {
2287
2725
  "type": "BLANK"
@@ -2906,6 +3344,14 @@
2906
3344
  "content": {
2907
3345
  "type": "CHOICE",
2908
3346
  "members": [
3347
+ {
3348
+ "type": "PATTERN",
3349
+ "value": "\\{[^}]*\\}"
3350
+ },
3351
+ {
3352
+ "type": "PATTERN",
3353
+ "value": "\\/\\/[^\\n]*"
3354
+ },
2909
3355
  {
2910
3356
  "type": "PATTERN",
2911
3357
  "value": "[a-df-zA-DF-Z_][a-zA-Z0-9_]*"
@@ -4912,15 +5358,24 @@
4912
5358
  "type": "CHOICE",
4913
5359
  "members": [
4914
5360
  {
4915
- "type": "SEQ",
5361
+ "type": "CHOICE",
4916
5362
  "members": [
4917
5363
  {
4918
- "type": "SYMBOL",
4919
- "name": "kDeprecated"
5364
+ "type": "SEQ",
5365
+ "members": [
5366
+ {
5367
+ "type": "SYMBOL",
5368
+ "name": "kDeprecated"
5369
+ },
5370
+ {
5371
+ "type": "SYMBOL",
5372
+ "name": "_expr"
5373
+ }
5374
+ ]
4920
5375
  },
4921
5376
  {
4922
5377
  "type": "SYMBOL",
4923
- "name": "_expr"
5378
+ "name": "kPlatform"
4924
5379
  }
4925
5380
  ]
4926
5381
  },
@@ -5209,6 +5664,78 @@
5209
5664
  }
5210
5665
  ]
5211
5666
  },
5667
+ "genericArgTpl": {
5668
+ "type": "SEQ",
5669
+ "members": [
5670
+ {
5671
+ "type": "SYMBOL",
5672
+ "name": "identifier"
5673
+ },
5674
+ {
5675
+ "type": "SYMBOL",
5676
+ "name": "kLt"
5677
+ },
5678
+ {
5679
+ "type": "SEQ",
5680
+ "members": [
5681
+ {
5682
+ "type": "CHOICE",
5683
+ "members": [
5684
+ {
5685
+ "type": "REPEAT1",
5686
+ "content": {
5687
+ "type": "PREC",
5688
+ "value": 0,
5689
+ "content": {
5690
+ "type": "SEQ",
5691
+ "members": [
5692
+ {
5693
+ "type": "CHOICE",
5694
+ "members": [
5695
+ {
5696
+ "type": "SYMBOL",
5697
+ "name": "identifier"
5698
+ },
5699
+ {
5700
+ "type": "SYMBOL",
5701
+ "name": "genericArgTpl"
5702
+ }
5703
+ ]
5704
+ },
5705
+ {
5706
+ "type": "STRING",
5707
+ "value": ","
5708
+ }
5709
+ ]
5710
+ }
5711
+ }
5712
+ },
5713
+ {
5714
+ "type": "BLANK"
5715
+ }
5716
+ ]
5717
+ },
5718
+ {
5719
+ "type": "CHOICE",
5720
+ "members": [
5721
+ {
5722
+ "type": "SYMBOL",
5723
+ "name": "identifier"
5724
+ },
5725
+ {
5726
+ "type": "SYMBOL",
5727
+ "name": "genericArgTpl"
5728
+ }
5729
+ ]
5730
+ }
5731
+ ]
5732
+ },
5733
+ {
5734
+ "type": "SYMBOL",
5735
+ "name": "kGt"
5736
+ }
5737
+ ]
5738
+ },
5212
5739
  "genericArg": {
5213
5740
  "type": "SEQ",
5214
5741
  "members": [
@@ -5230,8 +5757,17 @@
5230
5757
  "type": "SEQ",
5231
5758
  "members": [
5232
5759
  {
5233
- "type": "SYMBOL",
5234
- "name": "identifier"
5760
+ "type": "CHOICE",
5761
+ "members": [
5762
+ {
5763
+ "type": "SYMBOL",
5764
+ "name": "identifier"
5765
+ },
5766
+ {
5767
+ "type": "SYMBOL",
5768
+ "name": "genericArgTpl"
5769
+ }
5770
+ ]
5235
5771
  },
5236
5772
  {
5237
5773
  "type": "STRING",
@@ -5247,8 +5783,17 @@
5247
5783
  ]
5248
5784
  },
5249
5785
  {
5250
- "type": "SYMBOL",
5251
- "name": "identifier"
5786
+ "type": "CHOICE",
5787
+ "members": [
5788
+ {
5789
+ "type": "SYMBOL",
5790
+ "name": "identifier"
5791
+ },
5792
+ {
5793
+ "type": "SYMBOL",
5794
+ "name": "genericArgTpl"
5795
+ }
5796
+ ]
5252
5797
  }
5253
5798
  ]
5254
5799
  }
@@ -5949,8 +6494,13 @@
5949
6494
  "name": "declConsts"
5950
6495
  },
5951
6496
  {
5952
- "type": "SYMBOL",
5953
- "name": "declProc"
6497
+ "type": "ALIAS",
6498
+ "content": {
6499
+ "type": "SYMBOL",
6500
+ "name": "declProcLenient"
6501
+ },
6502
+ "named": true,
6503
+ "value": "declProc"
5954
6504
  },
5955
6505
  {
5956
6506
  "type": "SYMBOL",
@@ -6936,6 +7486,36 @@
6936
7486
  }
6937
7487
  ]
6938
7488
  },
7489
+ "declProcLenient": {
7490
+ "type": "SEQ",
7491
+ "members": [
7492
+ {
7493
+ "type": "CHOICE",
7494
+ "members": [
7495
+ {
7496
+ "type": "SYMBOL",
7497
+ "name": "rttiAttributes"
7498
+ },
7499
+ {
7500
+ "type": "BLANK"
7501
+ }
7502
+ ]
7503
+ },
7504
+ {
7505
+ "type": "CHOICE",
7506
+ "members": [
7507
+ {
7508
+ "type": "SYMBOL",
7509
+ "name": "_declProcLenient"
7510
+ },
7511
+ {
7512
+ "type": "SYMBOL",
7513
+ "name": "_declOperator"
7514
+ }
7515
+ ]
7516
+ }
7517
+ ]
7518
+ },
6939
7519
  "declVar": {
6940
7520
  "type": "SEQ",
6941
7521
  "members": [
@@ -7091,6 +7671,24 @@
7091
7671
  },
7092
7672
  "named": true,
7093
7673
  "value": "identifier"
7674
+ },
7675
+ {
7676
+ "type": "ALIAS",
7677
+ "content": {
7678
+ "type": "SYMBOL",
7679
+ "name": "kLocal"
7680
+ },
7681
+ "named": true,
7682
+ "value": "identifier"
7683
+ },
7684
+ {
7685
+ "type": "ALIAS",
7686
+ "content": {
7687
+ "type": "SYMBOL",
7688
+ "name": "kDispId"
7689
+ },
7690
+ "named": true,
7691
+ "value": "identifier"
7094
7692
  }
7095
7693
  ]
7096
7694
  },
@@ -7230,6 +7828,24 @@
7230
7828
  },
7231
7829
  "named": true,
7232
7830
  "value": "identifier"
7831
+ },
7832
+ {
7833
+ "type": "ALIAS",
7834
+ "content": {
7835
+ "type": "SYMBOL",
7836
+ "name": "kLocal"
7837
+ },
7838
+ "named": true,
7839
+ "value": "identifier"
7840
+ },
7841
+ {
7842
+ "type": "ALIAS",
7843
+ "content": {
7844
+ "type": "SYMBOL",
7845
+ "name": "kDispId"
7846
+ },
7847
+ "named": true,
7848
+ "value": "identifier"
7233
7849
  }
7234
7850
  ]
7235
7851
  }
@@ -9028,8 +9644,22 @@
9028
9644
  "type": "SEQ",
9029
9645
  "members": [
9030
9646
  {
9031
- "type": "SYMBOL",
9032
- "name": "identifier"
9647
+ "type": "CHOICE",
9648
+ "members": [
9649
+ {
9650
+ "type": "SYMBOL",
9651
+ "name": "identifier"
9652
+ },
9653
+ {
9654
+ "type": "ALIAS",
9655
+ "content": {
9656
+ "type": "SYMBOL",
9657
+ "name": "kRegister"
9658
+ },
9659
+ "named": true,
9660
+ "value": "identifier"
9661
+ }
9662
+ ]
9033
9663
  },
9034
9664
  {
9035
9665
  "type": "STRING",
@@ -9043,10 +9673,24 @@
9043
9673
  "type": "BLANK"
9044
9674
  }
9045
9675
  ]
9046
- },
9047
- {
9048
- "type": "SYMBOL",
9049
- "name": "identifier"
9676
+ },
9677
+ {
9678
+ "type": "CHOICE",
9679
+ "members": [
9680
+ {
9681
+ "type": "SYMBOL",
9682
+ "name": "identifier"
9683
+ },
9684
+ {
9685
+ "type": "ALIAS",
9686
+ "content": {
9687
+ "type": "SYMBOL",
9688
+ "name": "kRegister"
9689
+ },
9690
+ "named": true,
9691
+ "value": "identifier"
9692
+ }
9693
+ ]
9050
9694
  }
9051
9695
  ]
9052
9696
  }
@@ -10012,6 +10656,244 @@
10012
10656
  }
10013
10657
  ]
10014
10658
  },
10659
+ "_declProcLenient": {
10660
+ "type": "SEQ",
10661
+ "members": [
10662
+ {
10663
+ "type": "CHOICE",
10664
+ "members": [
10665
+ {
10666
+ "type": "SYMBOL",
10667
+ "name": "kClass"
10668
+ },
10669
+ {
10670
+ "type": "BLANK"
10671
+ }
10672
+ ]
10673
+ },
10674
+ {
10675
+ "type": "CHOICE",
10676
+ "members": [
10677
+ {
10678
+ "type": "SYMBOL",
10679
+ "name": "kProcedure"
10680
+ },
10681
+ {
10682
+ "type": "SYMBOL",
10683
+ "name": "kFunction"
10684
+ },
10685
+ {
10686
+ "type": "SYMBOL",
10687
+ "name": "kConstructor"
10688
+ },
10689
+ {
10690
+ "type": "SYMBOL",
10691
+ "name": "kDestructor"
10692
+ }
10693
+ ]
10694
+ },
10695
+ {
10696
+ "type": "FIELD",
10697
+ "name": "name",
10698
+ "content": {
10699
+ "type": "SYMBOL",
10700
+ "name": "_genericName"
10701
+ }
10702
+ },
10703
+ {
10704
+ "type": "FIELD",
10705
+ "name": "args",
10706
+ "content": {
10707
+ "type": "CHOICE",
10708
+ "members": [
10709
+ {
10710
+ "type": "SYMBOL",
10711
+ "name": "declArgs"
10712
+ },
10713
+ {
10714
+ "type": "BLANK"
10715
+ }
10716
+ ]
10717
+ }
10718
+ },
10719
+ {
10720
+ "type": "CHOICE",
10721
+ "members": [
10722
+ {
10723
+ "type": "SEQ",
10724
+ "members": [
10725
+ {
10726
+ "type": "STRING",
10727
+ "value": ":"
10728
+ },
10729
+ {
10730
+ "type": "FIELD",
10731
+ "name": "type",
10732
+ "content": {
10733
+ "type": "SYMBOL",
10734
+ "name": "typeref"
10735
+ }
10736
+ }
10737
+ ]
10738
+ },
10739
+ {
10740
+ "type": "BLANK"
10741
+ }
10742
+ ]
10743
+ },
10744
+ {
10745
+ "type": "FIELD",
10746
+ "name": "assign",
10747
+ "content": {
10748
+ "type": "CHOICE",
10749
+ "members": [
10750
+ {
10751
+ "type": "SYMBOL",
10752
+ "name": "defaultValue"
10753
+ },
10754
+ {
10755
+ "type": "BLANK"
10756
+ }
10757
+ ]
10758
+ }
10759
+ },
10760
+ {
10761
+ "type": "REPEAT",
10762
+ "content": {
10763
+ "type": "CHOICE",
10764
+ "members": [
10765
+ {
10766
+ "type": "SYMBOL",
10767
+ "name": "kStdcall"
10768
+ },
10769
+ {
10770
+ "type": "SYMBOL",
10771
+ "name": "kCdecl"
10772
+ },
10773
+ {
10774
+ "type": "SYMBOL",
10775
+ "name": "kSafecall"
10776
+ },
10777
+ {
10778
+ "type": "SYMBOL",
10779
+ "name": "kPascal"
10780
+ },
10781
+ {
10782
+ "type": "SYMBOL",
10783
+ "name": "kRegister"
10784
+ },
10785
+ {
10786
+ "type": "SYMBOL",
10787
+ "name": "kWinapi"
10788
+ },
10789
+ {
10790
+ "type": "SYMBOL",
10791
+ "name": "kInline"
10792
+ },
10793
+ {
10794
+ "type": "SYMBOL",
10795
+ "name": "kOverload"
10796
+ },
10797
+ {
10798
+ "type": "SYMBOL",
10799
+ "name": "kVirtual"
10800
+ },
10801
+ {
10802
+ "type": "SYMBOL",
10803
+ "name": "kAbstract"
10804
+ },
10805
+ {
10806
+ "type": "SYMBOL",
10807
+ "name": "kOverride"
10808
+ },
10809
+ {
10810
+ "type": "SYMBOL",
10811
+ "name": "kReintroduce"
10812
+ },
10813
+ {
10814
+ "type": "SYMBOL",
10815
+ "name": "kStatic"
10816
+ },
10817
+ {
10818
+ "type": "SYMBOL",
10819
+ "name": "kDynamic"
10820
+ },
10821
+ {
10822
+ "type": "SYMBOL",
10823
+ "name": "kFinal"
10824
+ },
10825
+ {
10826
+ "type": "SYMBOL",
10827
+ "name": "kUnsafe"
10828
+ }
10829
+ ]
10830
+ }
10831
+ },
10832
+ {
10833
+ "type": "STRING",
10834
+ "value": ";"
10835
+ },
10836
+ {
10837
+ "type": "CHOICE",
10838
+ "members": [
10839
+ {
10840
+ "type": "SEQ",
10841
+ "members": [
10842
+ {
10843
+ "type": "REPEAT1",
10844
+ "content": {
10845
+ "type": "FIELD",
10846
+ "name": "attribute",
10847
+ "content": {
10848
+ "type": "SYMBOL",
10849
+ "name": "procAttribute"
10850
+ }
10851
+ }
10852
+ },
10853
+ {
10854
+ "type": "REPEAT",
10855
+ "content": {
10856
+ "type": "SEQ",
10857
+ "members": [
10858
+ {
10859
+ "type": "STRING",
10860
+ "value": ";"
10861
+ },
10862
+ {
10863
+ "type": "REPEAT1",
10864
+ "content": {
10865
+ "type": "FIELD",
10866
+ "name": "attribute",
10867
+ "content": {
10868
+ "type": "SYMBOL",
10869
+ "name": "procAttribute"
10870
+ }
10871
+ }
10872
+ }
10873
+ ]
10874
+ }
10875
+ },
10876
+ {
10877
+ "type": "CHOICE",
10878
+ "members": [
10879
+ {
10880
+ "type": "STRING",
10881
+ "value": ";"
10882
+ },
10883
+ {
10884
+ "type": "BLANK"
10885
+ }
10886
+ ]
10887
+ }
10888
+ ]
10889
+ },
10890
+ {
10891
+ "type": "BLANK"
10892
+ }
10893
+ ]
10894
+ }
10895
+ ]
10896
+ },
10015
10897
  "_declOperator": {
10016
10898
  "type": "SEQ",
10017
10899
  "members": [
@@ -12033,7 +12915,7 @@
12033
12915
  },
12034
12916
  "_space": {
12035
12917
  "type": "PATTERN",
12036
- "value": "[\\s\\r\\n\\t]+"
12918
+ "value": "[\\s\\x00-\\x1F]+"
12037
12919
  },
12038
12920
  "pp": {
12039
12921
  "type": "PATTERN",
@@ -12184,6 +13066,29 @@
12184
13066
  [
12185
13067
  "declArg"
12186
13068
  ],
13069
+ [
13070
+ "implementation"
13071
+ ],
13072
+ [
13073
+ "caseCase"
13074
+ ],
13075
+ [
13076
+ "caseCaseTr"
13077
+ ],
13078
+ [
13079
+ "procAttribute"
13080
+ ],
13081
+ [
13082
+ "_declProcLenient",
13083
+ "_procAttributeNoExt"
13084
+ ],
13085
+ [
13086
+ "declFieldNoSemi",
13087
+ "declField"
13088
+ ],
13089
+ [
13090
+ "declField"
13091
+ ],
12187
13092
  [
12188
13093
  "declProcFwd"
12189
13094
  ],